PHP移除具有多个值的数组中的多个数组键



我发现我无法计算出所需的输出。

我有JSON原始数据包含以下内容:

Array
(
[data] => Array
(

[0] => Array
(
[title] => currency1
[tickers] => Array
(
[0] => USD
)
)

[1] => Array
(
[title] => currency2
[tickers] => Array
(
[0] => USD
[1] => EUR
)
)

[2] => Array
(
[title] => currency3
[tickers] => Array
(
[0] => USD

)
)   
)   
)

这就是我尝试过的

$num =0;
foreach ($json_data as $key => $story){

$num++;
foreach($story as $subkey => $subvalue){
if(is_array($subvalue)){

$title = $story[$subkey]['title']; 
$tickers = $story[$subkey]['tickers'][$num]; 


foreach($tickers as $key2 => $val2){

if($val2>=1){
unset($story);      

}else{

//echo output
}
}
}
}

我想得到数组的所有键,如果ticker有多个值,就不要回显它

样本所需输出:

curreny1 Key is 0 and tickers is USD
curreny3 Key is 2 and tickers is USD

您应该能够在源数据的data键上循环,提取标题和tickers,并在tickers计数为1:时输出结果

foreach ($json_data['data'] as $key => $story) {
$tickers = $story['tickers'];
if (count($tickers) != 1) continue;
$title = $story['title'];
echo "$title Key is $key and tickers is {$tickers[0]}n";
}

输出(用于您的样本数据(:

currency1 Key is 0 and tickers is USD
currency3 Key is 2 and tickers is USD

3v4l.org 上的演示

相关内容

  • 没有找到相关文章

最新更新