我有一个刮刀脚本:
foreach($html->find('td.Live') as $e)
echo $e->plaintext . '<br>';
结果如下:
name 1 status <br>
我真的需要将结果转换为2个数组,如:
name_array = (name 1, name 2, name 3, name 4)
status_array = (status, status, status, status)
我该怎么做?
答案 0 :(得分:2)
$name_array = $status_array = array();
foreach ($html->find('td.Live') as $e) {
$parts = explode(" ", trim($e->plaintext));
$status_array[] = array_pop($parts);
$name_array[] = trim(implode(" ", $parts));
}
echo "<pre>Names:\n", print_r($name_array, 1), "\nStatuses:\n", print_r($status_array, 1), "</pre>";
答案 1 :(得分:0)
$name_array = $status_array = array();
foreach($html->find('td.Live') as $e) {
$segment= explode(' ',$e->plaintext);
$status_array[] = $segment[2];
$name_array[] = str_replace($segment[2],'',$e->plaintext);
}
echo 'Name: ';
print_r($name_array);
echo '<br> Status:';
print_r($status_array);