Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Сравнение результата из array

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Сравнение результата из array
vitaly63
Отправлено: 20 Января, 2012 - 18:24:25
Post Id


Новичок


Покинул форум
Сообщений всего: 35
Дата рег-ции: Янв. 2012  


Помог: 0 раз(а)




Добрый день. Дело в том что наткнулся на маленькую проблемму при написании кода.
Пример кода:
PHP:
скопировать код в буфер обмена
  1.         $1 = 'имеет любое значение';
  2.                 $2 = array('a' => 0, 'b' => 3);
  3.                 $3 = array('a' => 'b', 'b' => 'd');
  4.                 if($1 = $2 && $1 = $3)
  5.                 {
  6.                    echo "true";
  7.                 }else{
  8.                     die('Error');
  9.                 };
  10.  

Дело в том, что это своего рода проверка, если значение "$1" равно "a" или "b" то функция выполняется, а если любому другому числу ( которого нету в array) то идет ошибка.
Собственно прабла в том, что не могу понять как сделать так чтобы, $1 проверялась на все значения из под array и если находила похожее значение, функция выполнялась а если не находит, то выводится ошибка. Ото пока в виде ошибки одни нотисы).

(Отредактировано автором: 20 Января, 2012 - 19:05:06)

 
 Top
CenapaTop
Отправлено: 20 Января, 2012 - 18:52:20
Post Id



Частый гость


Покинул форум
Сообщений всего: 166
Дата рег-ции: Авг. 2009  


Помог: 1 раз(а)




 
 Top
vitaly63
Отправлено: 20 Января, 2012 - 19:05:34
Post Id


Новичок


Покинул форум
Сообщений всего: 35
Дата рег-ции: Янв. 2012  


Помог: 0 раз(а)




к чему бы это?
 
 Top
Okula
Отправлено: 20 Января, 2012 - 19:20:46
Post Id



Участник


Покинул форум
Сообщений всего: 1389
Дата рег-ции: Окт. 2010  


Помог: 42 раз(а)




vitaly63 пишет:
к чему бы это?

К тому что у тебя там не знак равенства стоит, учи основы.
 
 Top
vitaly63
Отправлено: 20 Января, 2012 - 20:19:36
Post Id


Новичок


Покинул форум
Сообщений всего: 35
Дата рег-ции: Янв. 2012  


Помог: 0 раз(а)




да нет значения "==", "<>", "<=", "!=", ">=","<=", и прочие ( хотя большинство тут не к месту, но все равно попытка не пытка Улыбка ), были использованы и код работает если точно указать значения $2 и $3 ( типо $2['a'] $3['a'])
 
 Top
Данил_123
Отправлено: 20 Января, 2012 - 20:21:46
Post Id


Участник


Покинул форум
Сообщений всего: 1026
Дата рег-ции: Июнь 2011  
Откуда: rostov


Помог: 9 раз(а)




ты не понял, сделай так

(Добавление)
ааа.. как этого ни кто не заметил.. Переменные не могут состоять из цифр!


-----
http://mysitecost.ru
 
 Top
Bio man
Отправлено: 20 Января, 2012 - 20:33:10
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




Данил_123 пишет:
Переменные не могут состоять из цифр!
верно, товарищ! о чем и говорила ссылка выше!

для поиска значения в массиве вполне логично использовать функцию in_arra()
 
 Top
vitaly63
Отправлено: 20 Января, 2012 - 20:33:19
Post Id


Новичок


Покинул форум
Сообщений всего: 35
Дата рег-ции: Янв. 2012  


Помог: 0 раз(а)




Данил_123 пишет:
ааа.. как этого ни кто не заметил.. Переменные не могут состоять из цифр!

это условное обозначение) пробовал, значения из под array он все равно не рассматривает, и при не подходящем значении $1 лезит нотис, а не сообщение об ошибке
(Добавление)
Bio man спасибо за подсказку) но логичней array_key_exists()
Тему можно закрыть.
 
 Top
Plusminuz
Отправлено: 20 Января, 2012 - 21:13:53
Post Id



Частый гость


Покинул форум
Сообщений всего: 156
Дата рег-ции: Апр. 2011  
Откуда: Россия


Помог: 2 раз(а)




вы сравниваете значение(скорее всего это число или строка) с массивом
проверить можно например этим - var_dump()

и как уже сказал Bio man - используйте in_array(), а то похоже на изобретение велосипеда Улыбка


-----
учусь... Улыбка
 
 Top
Bio man
Отправлено: 20 Января, 2012 - 21:18:43
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


Помог: 52 раз(а)




vitaly63 пишет:
но логичней array_key_exists()
логичней если проверять по ключу. вы же задачу поставили
vitaly63 пишет:
все значения из под array
 
 Top
Okula
Отправлено: 20 Января, 2012 - 21:21:46
Post Id



Участник


Покинул форум
Сообщений всего: 1389
Дата рег-ции: Окт. 2010  


Помог: 42 раз(а)




К тому же в условии стоит "и", а не "или" как заявленно в первом посте.
 
 Top
vitaly63
Отправлено: 20 Января, 2012 - 21:32:01
Post Id


Новичок


Покинул форум
Сообщений всего: 35
Дата рег-ции: Янв. 2012  


Помог: 0 раз(а)




всем большое спасибо) разобрался. Раньше ни когда не требовалось проводить подобные проверки.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB