arrays — возвращает true на каждой итерации array_key_exists () в переполнении стека

То, что я пытаюсь получить, это ..

я не знаю check_mobile_exists( $mobiles, $electronics ) эта функция возвращает true все время. Я хочу получить значение true, если ключ массива $ mobile существует в списке ключей $ electronics, и значение false, если его не существует. На основе этого результата я зацикливаю результат публикации. Но, как я уже сказал, функция возвращает true на каждой итерации. Любой, кто подскажет мне, что мне теперь делать?

function check_mobile_exists(  $mobiles, $electronics ) {
foreach( $mobiles as $mobile => $price ) {
if( array_key_exists( $mobile, $electronics ) ) {
return true;
}
return false;
}
}

$mobiles = array(
'iPhone' => '$350',
'tablet' => '$100',
'samsung' => '$200',
'walton'  => '$60'
);

$electronics = array(
'iPhone' => 'OK',
'tablet' => 'will do',
'walton' => 'No need'
);

while( have_posts() ): the_post();
if( check_mobile_exists(  $mobiles, $electronics ) ){ // returning only true on every iterating
echo get_the_title() .' do something....<br />';
} else {
echo 'Do another....';
}
endwhile;

0

Решение

Попробуй это

$mobiles = array(
'iPhone' => '$350',
'tablet' => '$100',
'samsung' => '$200',
'walton'  => '$60'
);
$electronics = array(
'iPhone' => 'OK',
'tablet' => 'will do',
'walton' => 'No need'
);

while( have_posts() ): the_post();
foreach( $mobiles as $mobile => $price ) {
if( array_key_exists( $mobile, $electronics ) ) {
echo get_the_title() .' do something....<br />';
}else{
echo 'Do another....';
}
}
endwhile;

ОБНОВЛЕНО: Итак, как вы сказали, без использования другой функции вы можете сделать это.

0

Другие решения

Сделайте это без проверки мобильной функции

$mobiles = array(
'iPhone' => '$350',
'tablet' => '$100',
'samsung' => '$200',
'walton'  => '$60'
);
$electronics = array(
'iPhone' => 'OK',
'tablet' => 'will do',
'walton' => 'No need'
);while( have_posts() ): the_post();
foreach ( $mobiles as $m_key => $mobile ) {
if ( array_key_exists( $m_mey, $electronics) ) {
do somethin
} else {
do somethin
}
}
endwhile;
0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector