我发现我无法计算出所需的输出。
我有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 上的演示