На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: Serafim, fatalist
  
    > Поиск в массиве по значению?
      Добрый день,

      Возник вот такой вопрос. Есть вот такой массив, мне нужно по дате которая известна, например "2017-04-18", найти в массиве значение для "shedule_salon_id" которое соответствует этой паре.
      Может кто-то подскажет как это можно сделать. Спасибо за вашу помощь и подсказку.

      ExpandedWrap disabled
        Array
        (
            [0] => stdClass Object
                (
                    [shedule_salon_id] => 2
                    [shedule_date] => 2017-04-17
                )
         
            [1] => stdClass Object
                (
                    [shedule_salon_id] => 2
                    [shedule_date] => 2017-04-18
                )
         
            [2] => stdClass Object
                (
                    [shedule_salon_id] => 2
                    [shedule_date] => 2017-04-19
                )
         
            [3] => stdClass Object
                (
                    [shedule_salon_id] => 1
                    [shedule_date] => 2017-04-20
                )
         
            [4] => stdClass Object
                (
                    [shedule_salon_id] => 1
                    [shedule_date] => 2017-04-21
                )
         
            [5] => stdClass Object
                (
                    [shedule_salon_id] => 2
                    [shedule_date] => 2017-04-22
                )
         
            [6] => stdClass Object
                (
                    [shedule_salon_id] => 1
                    [shedule_date] => 2017-04-23
                )
         
        )
          Цитата Serafim @

          спасибо большое за ссылку. Но пока не понял как применить эту функцию.
            ExpandedWrap disabled
              $filtered = array_filter($items, function(\stdClass $item): bool {
                  return new \DateTime($item->shedule_date) == new \DateTime('2017-04-18');
              })
               
              $result = reset($filtered);
              Serafim спасибо вам большое за помощь. К сожалению где-то ошибка закралась в синтаксисе, получаю вот такое сообщение:

              Цитата

              A PHP Error was encountered
              Severity: Parsing Error
              Message: syntax error, unexpected ':', expecting '{'
                Убери ": bool" в конце заголовка функции.
                  Dark Side спасибо большое за помощь, да, без ": bool" работает.
                    А вообще можно не создавать объекты даты, если у тебя 146% в одинаковом формате приходит она. Создание объекта просто ещё и парсит её праллельно
                      Serafim, спасибо большое за Вашу помощь!
                      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                      0 пользователей:


                      Рейтинг@Mail.ru
                      [ Script execution time: 0,0291 ]   [ 15 queries used ]   [ Generated: 28.03.24, 14:00 GMT ]