由两个分隔符PHP分裂

时间:2013-10-25 08:14:39

标签: php arrays

我在PHP中使用两个分隔符分割问题。我有以下文字,我希望能够通过“,”拆分,然后再用“|”拆分。

Someone Name|paused,Someone Name|paused,Someone Name|paused,Someone Name|paused,Someone Name|paused,Someone Name|available,Someone Name|available,Someone Name|available

所以最终的结果是我能够确定它是设置为暂停还是可用,并从那里过滤掉所以我只得到暂停值。

$phoneurl = "Someone Name|paused,Someone Name|paused,Someone Name|paused,Someone Name|paused,Someone Name|paused,Someone Name|available,Someone Name|available,Someone Name|available";
$array = explode(",", $phoneurl);

foreach ($array as $value) {
$split = explode("|", $value);
    echo $value[0];
}

然而,当我尝试回显$ value [0]时,它只是回显每个值的第一个数字。

我迷路了。请帮忙! :(

5 个答案:

答案 0 :(得分:1)

那将是

$result = array_map(function($item)
{
   return explode('|', $item);
}, explode(',', $string));

-i.e。首先,我们按,拆分数组,然后通过explode() <{1}}将|array_map()一起应用于每个元素

答案 1 :(得分:0)

 foreach ($array as $index => $value) 
 {
     $split = explode("|", $value);
      echo $split[0];
 }

尝试这个。

答案 2 :(得分:0)

$phoneurl = "Someone Name1|paused,Someone Name2|paused,Someone Name3|paused,Someone Name4|paused,Someone Name5|paused,Someone Name6|available,Someone Name7|available,Someone Name8|available";
$array = explode(",", $phoneurl);

foreach ($array as $value) {
$split = explode("|", $value);
if ($split[1]=="paused")
    {   
    echo $split[0];
    echo "<br/>";
    }
}

我在“某人姓名”中添加了一个号码。

您的最终结果位于table split。不在table value

答案 3 :(得分:0)

<?php
$phoneurl = "Someone Name|paused,Someone Name|paused,Someone Name|paused,Someone Name|paused,Someone Name|paused,Someone Name|available,Someone Name|available,Someone Name|available";
$array = explode(",", $phoneurl);

foreach ($array as $value) {
    $split = explode("|", $value);
    if($split[1] == "paused" ){
     echo $split[0].'<br>';
    }
}
?>

答案 4 :(得分:0)

也许你应该回应$ split而不是$ value。