数字ID后爆炸

时间:2013-06-26 02:04:17

标签: php

基本上,我有一个文本文档,我正在尝试使用PHP逐行解析,所以我可以用它做一些事情,基本上我有一个文本文档,其中包含以下布局

1 Team name
2 Fancy Team
3 My Team
4 Team yay

我尝试过以下操作尝试获取1值中的“ID”和另一个中的“团队名称”

$file1 = "./list_of_clubs.txt";
$lines = file($file1);
foreach($lines as $line_num => $line) {
    $getId = explode(" ",$line);
    echo $getId[1]."<br/>";
}

在执行此操作时,它会将所有空白空间(例如 1团队名称)解析为 3 不同的值,因为它具有 3 空白空间,如何从团队名称中拆分 ID ,我会使用某种形式的正则表达式吗?

5 个答案:

答案 0 :(得分:3)

您可以限制空格的爆炸。将其更改为:

$getId = explode(" ",$line, 2);

这将使数组有两个条目。第一个是id,第二个是团队名称。

http://php.net/manual/en/function.explode.php

答案 1 :(得分:1)

你不会。只是限制爆炸。

$getId = explode(" ", $line, 2);

答案 2 :(得分:0)

php索引是0 based所以你的第一个元素是索引0,你可以通过

来捕获ID
echo $getId[0]."<br/>";

答案 3 :(得分:0)

由于数字位于每行的开头,您可以使用

^\d{1,}

在你的正则表达式

答案 4 :(得分:0)

我认为这样可以正常使用

echo intval("1 Team name"); //outputs 1
echo intval("35 Team name2"); //outputs 35

示例:

$file1 = "./list_of_clubs.txt";
$lines = file($file1);
foreach($lines as $line_num => $line) {
    $getId = intval($line);
    echo $getId."<br/>";
}