我想尝试在PHP中将波斯语字符写入CSV文件,我正在使用fputcsv
函数,但是如何使用fputcsv
写UTF-8字符到CSV文件中呢?
我的代码部分:
$df = fopen($filepath, 'w');
fputcsv($df, array($coupon->code, $discount->label));
我想尝试在PHP中将波斯语字符写入CSV文件,我正在使用fputcsv
函数,但是如何使用fputcsv
写UTF-8字符到CSV文件中呢?
我的代码部分:
$df = fopen($filepath, 'w');
fputcsv($df, array($coupon->code, $discount->label));
试试这个:
$df = fopen($filepath, 'w');
fprintf($df, chr(0xEF).chr(0xBB).chr(0xBF));
fputcsv($df, array($coupon->code, $discount->label));
这行代码 fprintf($df, chr(0xEF).chr(0xBB).chr(0xBF));
可以写入文件头,确保编码正确。
也试试这个:
$df = fopen($filepath, 'w');
$array = array($coupon->code, $discount->label);
$array = array_map("utf8_decode", $array);
fputcsv($df, $array);
$fp = fopen($filename, 'w');
//add BOM to fix UTF-8 in Excel
fputs($fp, $bom =( chr(0xEF) . chr(0xBB) . chr(0xBF) ));
和其他人类似,但对我有效
fputs($output_file, chr(0xEF) . chr(0xBB) . chr(0xBF) );
在使用fputcsv
函数处理数据之前