У меня есть ассоциативный массив, который создается с помощью запроса, используя следующий код:Поиск определенного значения в массиве ассоциативных
$query = ("SELECT `time_stamp`, `EAE` FROM `table`");
$stmt = $con->query($query);
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
return $rows;
Чтобы получить доступ к каждому значению Я обычно использую for
петли, такие как:
for($i = 0 ; $i < count($rows) ; $i++)
{
echo $rows[$i]['time_stamp'].' '.$rows[$i]['EAE'].'<br>';
}
Однако я хочу получить доступ к значению, зарегистрированному в определенный момент времени. Для этого у меня возникли проблемы с использованием функции array_search
. Я пробовал настроить его следующим образом:
$sum_a = array_search(date('Y-m-d', $rows[$j]['time_stamp'])." 00:00:00", $rows);
Но ничего не найдено. Я не могу найти способ использовать эту функцию с массивом двойной области. Вы, ребята, знаете, как я могу это использовать? Или, если есть другой способ, который не требует повторного доступа к базе данных или выполнения цикла во всем массиве?
PS: Я также пытался определить значение с помощью in_array
, но ничего не нашел.
почему бы не добавить где положение о запросе вместо – Ghost
моем случае это не поможет, потому что я делаю петлю, чтобы покрыть все значения, и во время этого цикла мне нужно получить доступ к определенному предыдущему значению. Это довольно запутанно, и единственный ответ, который я могу придумать, - это перезагрузить db. – Comum
, тогда просто сделайте это, проверяя в то время как внутри цикла. в любом случае, вы не можете использовать поиск массива на многомерном, его предполагается работать на плоском. – Ghost