This question already has answers here:
Is there a way to access a string as a filehandle in php?
(5 个回答)
5年前关闭。
如何在输入是字符串而不是资源的情况下使用
如何将字符串转换为资源?
不能使用
(5 个回答)
5年前关闭。
如何在输入是字符串而不是资源的情况下使用
fgetcsv
?如何将字符串转换为资源?
fgetcsv
需要一个文件句柄资源$str = "1981;2992;19191\n392;488;299\n"some\ntext";199;222";
$array = fgetcsv($str);
不能使用
str_getcsv
因为那样我必须在 \n
之前用 str_getcsv
分割字符串 .. 如果某些字段包含 \n
那么输出将不正确 最佳答案
有 str_getcsv 函数,它可以将 CSV 字符串解析为数组。
更新:如果您不能使用 str_getcsv
函数,请尝试将字符串转换为流并在 fgetcsv
中使用它:
$stream = fopen('php://memory', 'r+');
fwrite($stream, '1981;2992;19191\n392;488;299');
rewind($stream);
$array = fgetcsv($stream);
10-08 19:15