【发布时间】:2018-09-20 00:39:30
【问题描述】:
我正在从 .txt 中提取文本,我分解该行然后重新分解它,以便将其存储为一个数组。当我在第二次爆炸后 print_r 输出一个具有第四个索引位置的数组时,它应该只有 0 1 2 3。任何想法为什么? 任何帮助表示赞赏,谢谢。
PHP
list($title, $author, $publisher, $isbn) = explode('*', $line);
print_r($line); //outputs a string
$books = explode('*', $line);
echo "<br>";
print_r($books); //outputs array with extra index position.
输出样本
Array ( [0] => Business 101 [1] => John Smith[2] => 2002-07-18 [3] => 1-444-2589-x [4] => )
.txt 文件中的行示例
Business 101*John Smith*2002-07-18*1-444-2589-x*
【问题讨论】:
-
$line中是否有尾随*? -
是的,在文本文件的行尾有一个 *。为什么?
-
当你分解它时,它会产生 all 分隔符之外的字符串,所以在这种情况下,它会在最后一个
*后面看到一个空字符串,它会返回到数组中。跨度> -
您实际尝试做的是实现自己的文件格式。不建议这样做。你能举个例子吗?
标签: php