I find I can't figure out the desired output.
I have JSON raw data contains this:
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
)
)
)
)
This is what I have tried
$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
}
}
}
}
I want to get all the keys of the arrays and if tickers has multiple value don't echo it.
Sample desired output:
curreny1 Key is 0 and tickers is USD
curreny3 Key is 2 and tickers is USD
You should be able to just loop over the data
key of your source data, extracting the title and tickers and outputting a result if the count of the tickers is 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";
}
Output (for your sample data):
currency1 Key is 0 and tickers is USD
currency3 Key is 2 and tickers is USD