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 :: Помогите проверить данные из масива на наличие опеределеных значений

 PHP.SU

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


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

> Без описания
nikoshot
Отправлено: 19 Июля, 2017 - 23:36:27
Post Id


Гость


Покинул форум
Сообщений всего: 65
Дата рег-ции: Июль 2013  


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




Есть масив $catprod
print_r($catprod); выводит следующее:
PHP:
скопировать код в буфер обмена
  1. [0] => Array ( [name] => Обои [href] => /katalog/oboi/ )
  2. [1] => Array ( [name] => обои для зала [href] => /oboi-dlya-zala/ )
  3. [2] => Array ( [name] => обои для спальни [href] => /oboi-dlya-spalni/ )
  4. [6] => Array ( [name] => 4ever [href] => /ps/4ever/ )
  5. [7] => Array ( [name] => P+S [href] => /oboi/ps/ ) )
  6.  

вот сам код..

PHP:
скопировать код в буфер обмена
  1.  foreach ($catprod as $catp) {  
  2.  if ($catp['name'] == "Boutique" or $catp['name'] == "4ever" or $catp['name'] == "Masterpiece") {
  3. <a href=" echo $catp['href']; "> echo $catp['name'];</a>
  4.  }                                                                       
  5.  }
  6.  

Я каждый раз проверяю равно ли значение , если равно 4ever или Masterpiece или Boutique
то выводим данные...
дело в том что этих значений порядка 100 шт..

Нужно как то сделать массив этих значений к примеру так
PHP:
скопировать код в буфер обмена
  1. $arr = array('4ever', 'Masterpiece ', 'Boutique ');

и проверку делать уже из этого масива типа как то так..
PHP:
скопировать код в буфер обмена
  1. if ($catp['name'] == $arr[тут должно попасть значение из масива]) {


Спасибо всем кто откликнулся..
 
 Top
Строитель Модератор
Отправлено: 20 Июля, 2017 - 08:24:04
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


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




PHP:
скопировать код в буфер обмена
  1. $arr = array('4ever', 'Masterpiece ', 'Boutique');
  2.  
  3. // Условие прописать в теле цикла
  4. if (in_array($catp['name'], $arr)) {
  5.     // Совпадение найдено
  6. }
 
 Top
LIME
Отправлено: 22 Июля, 2017 - 00:14:25
Post Id


Активный участник


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


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




http://php.net/manual/ru/functio...ntersect-key.php
http://php.net/manual/ru/functio...array-column.php
если непонятно предлагаю подумать
Строитель нука нука подумай
тут говорят около 100 вариантов
неплохой такой вариант подумать
нука нука))

Строитель выше ты вариант предложил тоже самое что у тс вид сбоку

(Отредактировано автором: 22 Июля, 2017 - 00:15:48)

 
 Top
MouseZver
Отправлено: 22 Июля, 2017 - 08:10:50
Post Id



Новичок


Покинул форум
Сообщений всего: 58
Дата рег-ции: Июнь 2017  
Откуда: php.ru


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




LIME пишет:
Строитель выше ты вариант предложил тоже самое что у тс вид сбоку

У строителя был написан наилучший вариант по проверке переменной по значениям из массива. А вот твои ссылки, особенно поразило что ссылаешь на интерсект кей, немного удивило.

Я бы хотел увидеть твой вариант легкий, изящный, оптимизированный, наподобие Строителя.
(Добавление)
LIME пишет:


велосипед чистой воды.
 
 Top
LIME
Отправлено: 22 Июля, 2017 - 14:10:17
Post Id


Активный участник


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


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




MouseZver пишет:

Я бы хотел увидеть твой вариант легкий, изящный, оптимизированный, наподобие Строителя.
это был сарказм?))
вы хоть предупреждайте шоб я укрылся)))

по сабжу
массивы в пхп это список(***** в гугл узнать как сея структура организуется)
но вместе с тем сейчас это еще и хэш-таблица
потому поиск по значению будет фулсканом
а поиск по ключу это хэш-функция
MouseZver достаточно запутал тебя чтоб ты перестал *****?
Строитель финк эбаут ит


Отредактировано модератором: Строитель, 22 Июля, 2017 - 14:23:41
 
 Top
Строитель Модератор
Отправлено: 22 Июля, 2017 - 14:26:42
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


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




LIME пишет:
Строитель финк эбаут ит
Ок, я подумаю. Но в свою очередь попрошу тебя подумать о выборе слов при наборе постов, т.к. существующую цензуру тут никто не отменял. Спасибо.
 
 Top
LIME
Отправлено: 22 Июля, 2017 - 14:49:07
Post Id


Активный участник


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


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




да забань меня какие проблемы))
(Добавление)
убеждать меня уважать дураков это не работает
пробовал
не получается
 
 Top
Строитель Модератор
Отправлено: 22 Июля, 2017 - 16:34:49
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


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




LIME пишет:
да забань меня какие проблемы))
Я только в крайних случаях использую "кнопку", всегда надеюсь на взаимопонимание.
LIME пишет:
убеждать меня уважать дураков это не работает
пробовал
не получается
Ты не понял -- я прошу придерживаться цензуры.
 
 Top
LIME
Отправлено: 22 Июля, 2017 - 16:39:30
Post Id


Активный участник


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


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




хочу в баню
Строитель пишет:
Я только в крайних случаях использую "кнопку", всегда надеюсь на взаимопонимание.
зря)) этого не будет
не в смысле меня а вообще и в принципе
жми кнопку не боись
 
 Top
MouseZver
Отправлено: 22 Июля, 2017 - 17:04:56
Post Id



Новичок


Покинул форум
Сообщений всего: 58
Дата рег-ции: Июнь 2017  
Откуда: php.ru


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




LIME

за твои 10к постов я смотрю не на программиста, а бездарного форумного война, который не только ТСа путает своим бредом, но и набивает заодно посты.

Неоднократно меня предупреждали на пхп.ру что тут большинство ничего не стоят. Скажи еще спасибо модератору за оперативное исправление твоих заумных словечек. В пхп ты 0

(Отредактировано автором: 22 Июля, 2017 - 17:05:34)

 
 Top
LIME
Отправлено: 22 Июля, 2017 - 17:17:30
Post Id


Активный участник


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


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




MouseZver ну допустим
только вот я аргументировал свой пост
где твои аргументы щегол?
(Добавление)
пожалуй разжую для тупых
берешь большой массив
превращаешь колонку в одномерный хэш-массив
значения переводишь в ключи
пороверяешь на существование ключа
на порядки быстрее думаю будет
зависит от размера массива
 
 Top
MouseZver
Отправлено: 22 Июля, 2017 - 17:24:24
Post Id



Новичок


Покинул форум
Сообщений всего: 58
Дата рег-ции: Июнь 2017  
Откуда: php.ru


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




щегол твой дед, а разжевывание твое индуское.
 
 Top
LIME
Отправлено: 22 Июля, 2017 - 17:27:30
Post Id


Активный участник


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


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




и снова без аргументов))
индусский код это когда много повторяющихся ничего не значащих инструкций
думаю ты хотел сказать чтото типа "глупое" не зная что такое индусский код
погугли отчего пошло это
----
какой-то просто яростный дурак))
 
 Top
MouseZver
Отправлено: 22 Июля, 2017 - 17:36:43
Post Id



Новичок


Покинул форум
Сообщений всего: 58
Дата рег-ции: Июнь 2017  
Откуда: php.ru


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




надо на тебя забить большой и толстый болт, так как веду диалог с каким то ребенком из майнкрафта. Не вижу достойных фактов, лишь балаболку со своим говнокодингом. Программист знает что за сленг "индуский код". Еще не дорос чтобы понять фразу Подмигивание
Тема закрыта!
 
 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