我在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]时,它只是回显每个值的第一个数字。
我迷路了。请帮忙! :(
答案 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。