2013-10-25 119 views
0

我遇到了由PHP中的兩個分隔符分隔的問題。我有以下文字,我希望能夠按「」分割,然後再按「|」分割。由兩個分隔符分割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]; 
} 

但是,當我嘗試echo $ value [0]時,它只是回聲每個值的第一個數字。

我迷路了。請幫忙! :(

+0

$ value [0]包含您在$ array內循環的$值的第一個字符。您需要$ split [0]來包含第一個單詞,因爲這是您將爆炸(「|」)分配給 –

回答

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

應用explode()|到它的每一個元素試試這個。

+0

的那個變量。非常感謝你! :) –

+0

沒問題:)。不要忘記接受答案;) –

+0

完成。愚蠢的10分鐘延遲! :( –

1

這將是

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

- 即首先我們通過,是分裂數組,然後通過array_map()

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

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>'; 
    } 
} 
?> 
0

也許你應該回顯$ split而不是$ value。