我想分割一个TSV字符串。结构是:
abc\tdef\tghi\tjklm
其中\ t是制表符。
如果我使用preg_split来分割这样的字符串$ i
$field=preg_split("/\t/", $i);
$ field [3]是jklm。
但是,如果我有另一个字符串
abc\tdef\t\t
$ field [3]不是有效索引。
如何强制空字段进入$ field,这样所有$ field数组都会有相同数量的索引?
答案 0 :(得分:1)
如果您的问题仅用于提取标签分隔符值数据,则可以使用内置版本
在php函数(fgetcsv()
)中。它比使用我们自己的功能更稳定。请试试这个
if (($handle = fopen("test.csv", "r")) !== FALSE) {
// extract csv using tab delimiter
while (($data = fgetcsv($handle, 1000, "\t")) !== FALSE) {
print_r($data);
}
fclose($handle);
}
答案 1 :(得分:0)