如何用新行和“;”分割字符串然后取出为行

时间:2016-06-17 10:18:27

标签: php split fetchall

我有txt文件,看起来像

Stefan;Mihajlovic;2;3, 2, 3, 2, 3, 2;100
Milutin;Milankovic;1;2, 3, 4, 5, 6, 89;1000

我设法使用下面的代码将其拆分为新行

$array = file('test.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
    var_dump($array);

输出是这样的:

array(2) { 
[0]=> string(82) "Stefan;Mihajlovic;2;3, 2, 3, 2, 3, 2;100" 
[1]=> string(82) "Milutin;Milankovic;1;2, 3, 4, 5, 6, 89;1000" 
}

我现在需要的是将每个数组拆分为“;”并将所有内容作为一行获取。 老实说,我几天前开始学习PHP,所以我不知道该怎么做。 任何帮助表示赞赏

UPDATE 对不起,我忘了提到我需要动态地做,因为每天都会添加新行。

4 个答案:

答案 0 :(得分:4)

您可以使用explode()函数从string by;

创建数组
$newArray = array( 
  "Stefan;Mihajlovic;2;3, 2, 3, 2, 3, 2;100",
  "Milutin;Milankovic;1;2, 3, 4, 5, 6, 89;1000" 
);
foreach($newArray as $arr) {
   print_r(explode(";",$arr));
}

输出:

Array
(
    [0] => Stefan
    [1] => Mihajlovic
    [2] => 2
    [3] => 3, 2, 3, 2, 3, 2
    [4] => 100
)

Array
(
    [0] => Milutin
    [1] => Milankovic
    [2] => 1
    [3] => 2, 3, 4, 5, 6, 89
    [4] => 1000
)

答案 1 :(得分:1)

Use explode function.

$a = "Stefan;Mihajlovic;2;3, 2, 3, 2, 3, 2;100";
$b = explode(";",$a);
var_dump($b);

答案 2 :(得分:1)

这是你想做的吗?

$myArrayRow = $tab[0];
$explodeArray = explode(";", $arraySplit);

echo $explodeArray[0] // Stefan
echo $explodeArray[1] // Mihajlovic

点击此链接:http://php.net/manual/fr/function.explode.php

答案 3 :(得分:0)

如果我得到了你想做的事。您可以尝试爆炸功能: 例如:

$myString = "Stefan;Mihajlovic;2;3, 2, 3, 2, 3, 2;100";
$myArray = explode(';', $myString);
print_r($myArray);

您可以在此操场上试用代码:http://www.tehplayground.com/#j3sy2ItTZ