簡體   English   中英

如何檢查多維數組中是否存在多個鍵值

[英]How to check if in multidimensional array exist multiple key value

我必須檢查多維數組中是否存在某些值。

例如我有數組:

Array (
 [0] => Array (
   [reservation_start] => 12:05:00
   [reservation_end] => 12:40:00 
 )
 [1] => Array (
   [reservation_start] => 13:15:00
   [reservation_end] => 13:50:00
 )
 [2] => Array (
   [reservation_start] => 12:05:00
   [reservation_end] => 13:50:00
   )
)

我有子數組的兩個值,如:$reservation_start = 13:15:00 和 $reservation_end = 13:50:00 如何檢查特定子數組中是否存在這兩個值?

編輯:所以如果我有兩個變量,時間如下: $service_start = 13:15:00 $service_end = 13:50:00

我的多維數組有一個子數組,這些數據同時包含兩個變量,因此它應該返回 true。 在我的例子中,只有數組 [1] 滿足這些條件,因為包含兩個正確的值

您可以使用isset()例如:

$arr = [
   0 => ['reservation_start' => 0],
];
var_dump(isset($arr[0]['reservation_start']));

只要您要搜索的數據僅包含這兩個鍵,您就可以使用in_array() 使用您的兩個變量創建一個數組,並將其用作“needle”參數。

$target = [
    'reservation_start' => $reservation_start,
    'reservation_end' => $reservation_end
];

$found = in_array($target, $data);

PHP 手冊中有一個示例。 (參見“示例 #3 in_array() 以數組作為針”)

我做了一個例子,你可以在這里在線嘗試: https://3v4l.org/XRAAN

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM