我使用 fgetcsv
函数从csv获取数据作为数组 . 我想将数组转换为字符串,所以我使用了 implode
函数 .
CODE:
if (($handle = fopen("storelocations.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$datafinal = implode(",",$data);
echo $datafinal;
}
fclose($handle);
}
我得到的结果字符串为 Ter Aar, Netherlands,4.7159509,52.164688,,211316
. But I would like each entry to be enclosed by double quotes. How can I do that?
预期结果:“Ter Aar”,“Netherlands”,“4.7159509”,“52.164688”,“”,“211316”
My approach #1 -
我在documentation之后通过 "
作为机箱,但它无法正常工作 .
if (($handle = fopen("../storelocations.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",", '"')) !== FALSE) {
$datafinal = implode(",",$data);
echo $datafinal;
}
fclose($handle);
}
My approach #2 -
function convert( $str ) {
return '"'.$str.'"';
}
if (($handle = fopen("../storelocations.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",", '"')) !== FALSE) {
//$datafinal = array_map( convert, $data );
$datafinal = implode(",",$data);
echo $datafinal;
//var_dump($data);
}
fclose($handle);
}
这将返回一个字符串 "Ter Aar", "Netherlands","4.7159509","52.164688","","""211316"
.
如您所见,空白数据后面的项目在开头有三个引号 .
2 回答
你可以这样做
这将有助于您确定
谢谢希望!它会帮助你
尝试使用以下代码来读取csv文件并将数据作为多维数组获取