<code>$sports = array
(
array('id'=> 1, 'Name'=>'Soccer','Popularity'=>'High'),
array('id' => 2,'Name'=>'Baseball','Popularity'=>'Low', 'IsTrending' => 'Yes')
);
$sport_history = array(
array('OwnerId' => 1, 'View'=>'Worldwide'),
array('OwnerId'=> 1, 'View'=>'Usa'),
array('OwnerId'=> 1, 'View'=>'Europe'),
);
foreach($sports as $masterKey => $sport){
if($sport['IsTrending'] == 'Yes'){
var_dump($sport['Name']);//Here only prints onces
foreach ($sport_history as $key=>$history){
var_dump($sport['Name']);//Here prints several times but I would like to be printed here and based on the number of elements in the first array and not the second.
echo '<pre>' . print_r($sport_history[$key],1) . '
';}}}
У меня проблема с тем, что первое значение массива выводится несколько раз при размещении внутри второго внутреннего цикла, но при помещении в внешний цикл оно печатается только один раз.Я хочу, чтобы иметь возможность выводить значения во внутреннем цикле на основе количества элементов в массиве, а не внешнего цикла.Я думал об использовании «если не inarray ()» или «array_uniquie ()», но не уверен.
ОБНОВЛЕНИЕ: Желание вывода: вместо этого
string(8) "Baseball"
Array
(
[OwnerId] => 1
[View] => Worldwide
)
string(8) "Baseball"
Array
(
[OwnerId] => 1
[View] => Usa
)
string(8) "Baseball"
Array
(
[OwnerId] => 1
[View] => Europe
)
Я хочу это во внутреннем цикле
string(8) "Baseball"
Array
(
[OwnerId] => 1
[View] => Worldwide
)
Array
(
[OwnerId] => 1
[View] => Usa
)
Array
(
[OwnerId] => 1
[View] => Europe
)