PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Описание: сравнить 2 массива и вывести на экран
Поиск в теме | Версия для печати
amf1k
Отправлено: 19 Августа, 2014 - 21:57:25
Гость
Покинул форум
Сообщений всего: 110
Дата рег-ции: Май 2013
Помог: 0 раз(а)
[+]
Вот полный код:
PHP:
скопировать код в буфер обмена
1 => array( 'id' => 1 , 'login' => 'Лена' ) ,
2 => array( 'id' => 2 , 'login' => 'Света' ) ,
3 => array( 'id' => 3 , 'login' => 'Ксюша' ) ,
4 => array( 'id' => 4 , 'login' => 'Юля' ) ,
5 => array( 'id' => 5 , 'login' => 'Даша' )
) ;
1 => array( 'addressee' => 2 ) ,
2 => array( 'addressee' => 3)
) ;
foreach ( $users as $value ) {
foreach ( $friends as $value2 ) {
if ( $value [ 'id' ] == $value2 [ 'addressee' ] ) {
$key = 'Friend' ;
}
else {
$key = 'No Friend' ;
}
echo $value [ 'login' ] . ' - ' . $key . '<br/>' ;
}
}
все ок,только цикл выводит инфу дважды(
Sail
Отправлено: 19 Августа, 2014 - 22:03:43
Участник
Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014
Помог: 57 раз(а)
amf1k пишет: Вот полный код:
Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
1 => array( 'id' => 1 , 'login' => 'Лена' ) ,
2 => array( 'id' => 2 , 'login' => 'Света' ) ,
3 => array( 'id' => 3 , 'login' => 'Ксюша' ) ,
4 => array( 'id' => 4 , 'login' => 'Юля' ) ,
5 => array( 'id' => 5 , 'login' => 'Даша' )
) ;
1 => array( 'addressee' => 2 ) ,
2 => array( 'addressee' => 3)
) ;
foreach ( $users as $value ) {
foreach ( $friends as $value2 ) {
if ( $value [ 'id' ] == $value2 [ 'addressee' ] ) {
$key = 'Friend' ;
}
else {
$key = 'No Friend' ;
}
echo $value [ 'login' ] . ' - ' . $key . '<br/>' ;
}
}
все ок,только цикл выводит инфу дважды(
А если использовать функцию in_array() и foreach($users as $key => $value)?
PHP:
скопировать код в буфер обмена
foreach ( $users as $key => $value ) {
$str = 'Friend' ;
} else {
$str = 'No Friend' ;
}
echo $value [ 'login' ] . ' - ' . $str . '<br/>' ;
}
amf1k
Отправлено: 19 Августа, 2014 - 22:11:26
Гость
Покинул форум
Сообщений всего: 110
Дата рег-ции: Май 2013
Помог: 0 раз(а)
[+]
Sail пишет: amf1k пишет: Вот полный код:
Спойлер (Отобразить ) PHP:
скопировать код в буфер обмена
1 => array( 'id' => 1 , 'login' => 'Лена' ) ,
2 => array( 'id' => 2 , 'login' => 'Света' ) ,
3 => array( 'id' => 3 , 'login' => 'Ксюша' ) ,
4 => array( 'id' => 4 , 'login' => 'Юля' ) ,
5 => array( 'id' => 5 , 'login' => 'Даша' )
) ;
1 => array( 'addressee' => 2 ) ,
2 => array( 'addressee' => 3)
) ;
foreach ( $users as $value ) {
foreach ( $friends as $value2 ) {
if ( $value [ 'id' ] == $value2 [ 'addressee' ] ) {
$key = 'Friend' ;
}
else {
$key = 'No Friend' ;
}
echo $value [ 'login' ] . ' - ' . $key . '<br/>' ;
}
}
все ок,только цикл выводит инфу дважды(
А если использовать функцию in_array() и foreach($users as $key => $value)?
PHP:
скопировать код в буфер обмена
foreach ( $users as $key => $value ) {
$str = 'Friend' ;
} else {
$str = 'No Friend' ;
}
echo $value [ 'login' ] . ' - ' . $str . '<br/>' ;
}
но на выходе получаю везде No Friend!
Sail
Отправлено: 20 Августа, 2014 - 06:25:01
Участник
Покинул форум
Сообщений всего: 1131
Дата рег-ции: Февр. 2014
Помог: 57 раз(а)
amf1k пишет: на выходе получаю везде No Friend!
Не с тем сравниваем. Массив $friends чуток по-сложнее структуру имеет
Попробуйте так:
PHP:
скопировать код в буфер обмена
foreach ( $users as $value ) {
$key = 'No Friend' ;
foreach ( $friends as $value2 ) {
if ( $value [ 'id' ] == $value2 [ 'addressee' ] ) {
$key = 'Friend' ;
break ;
}
}
echo $value [ 'login' ] . ' - ' . $key . '<br/>' ;
}
А всё от того, что вопрос в первом сообщении существенно отличается от приведённого после полного кода... (Отредактировано автором: 20 Августа, 2014 - 08:06:38)
amf1k
Отправлено: 20 Августа, 2014 - 17:25:41
Гость
Покинул форум
Сообщений всего: 110
Дата рег-ции: Май 2013
Помог: 0 раз(а)
[+]
Sail пишет: amf1k пишет: на выходе получаю везде No Friend!
Не с тем сравниваем. Массив $friends чуток по-сложнее структуру имеет :)
Попробуйте так:
PHP:
скопировать код в буфер обмена
foreach ( $users as $value ) {
$key = 'No Friend' ;
foreach ( $friends as $value2 ) {
if ( $value [ 'id' ] == $value2 [ 'addressee' ] ) {
$key = 'Friend' ;
break ;
}
}
echo $value [ 'login' ] . ' - ' . $key . '<br/>' ;
}
А всё от того, что вопрос в первом сообщении существенно отличается от приведённого после полного кода... ::huh.gif::
Спасибо ОГРОМНОЕ)))
Поиск в теме | Версия для печати
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
Powered by ExBB FM 1.0 RC1. InvisionExBB