下面是我正在阅读的文本文件的内容
All Guests Listed Below
ID: SeanCarrington [x]
Name: Sean [x]
Email: Carrington [x]
ID: ChrisCarrington [x]
Name: Chris [x]
Email: Carrington [x]我想提取每个客人的ID,所以我写了这篇文章
preg_match_all("/(ID: )(.*)(\[x\])/", $fileContent, $matches);一个$fileContent的print_r给了我这个
Array ( [0] => Array ( [0] => ID: SeanCarrington [x] [1] => ID: ChrisCarrington [x] ) [1] => Array ( [0] => ID: [1] => ID: ) [2] => Array ( [0] => SeanCarrington [1] => ChrisCarrington ) [3] => Array ( [0] => [x] [1] => [x] ) ) 我的目标是打印出每个用户的组2。换句话说,它们的ID。所以目标输出是
SeanCarrington
ChrisCarrington我试过了
echo $matches[0][2];
echo $matches[1][2];但是我得到了这个错误
Notice: Undefined offset: 2 in /data/helios_web/ccarrin2/IT207/lab9/convertToArray.php on line 10
Notice: Undefined offset: 2 in /data/helios_web/ccarrin2/IT207/lab9/convertToArray.php on line 11发布于 2012-12-15 13:16:48
每个用户似乎有两个组,但这些组的索引分别为0和1。
echo $matches[0][0]; // "ID: SeanCarrington"
echo $matches[0][1]; // "ID: ChrisCarrington"由于您只需要ID名称,因此请看一下这里的数组结构:
[2] => Array (
[0] => SeanCarrington
[1] => ChrisCarrington
)这个组(索引2)中有两个用户,因此您可以使用索引2,然后使用索引0和1:
echo $matches[2][0]; // "SeanCarrington"
echo $matches[2][1]; // "ChrisCarrington"https://stackoverflow.com/questions/13889535
复制相似问题