搜索多维 stdClass 对象
Search into multidimensional stdClass Object
我有这个 stdClass 对象:
stdClass Object (
[summary] => Appuntamenti
[items] => Array (
[0] => stdClass Object (
[summary] => Busy
[start] => stdClass Object (
[dateTime] => 2016-02-02T17:00:00+01:00
[timeZone] => Europe/Rome
)
[end] => stdClass Object (
[dateTime] => 2016-02-02T17:30:00+01:00
[timeZone] => Europe/Rome
)
)
)
)
这个 stdClass 对象是 Google 日历请求的结果,可以比这个更长。
我想检查是否有特定日期时间的事件,例如
如果结果包含 "Start -> 2016-02-02T17:00:00+01:00",则 return 为真。
我找到了在数组中而不是在多维 stdClass 对象中搜索的方法。
开始时尝试简单 foreach
:
$items = $obj->items; // assuming $obj is your initial object
$sample_date = "2016-02-02T17:00:00+01:00";
$hasNeededDate = false;
foreach ($items as $item) {
if ($item->start->dateTime == $sample_date) {
$hasNeededDate = true;
break;
}
}
var_dump($hasNeededDate);
我有这个 stdClass 对象:
stdClass Object (
[summary] => Appuntamenti
[items] => Array (
[0] => stdClass Object (
[summary] => Busy
[start] => stdClass Object (
[dateTime] => 2016-02-02T17:00:00+01:00
[timeZone] => Europe/Rome
)
[end] => stdClass Object (
[dateTime] => 2016-02-02T17:30:00+01:00
[timeZone] => Europe/Rome
)
)
)
)
这个 stdClass 对象是 Google 日历请求的结果,可以比这个更长。
我想检查是否有特定日期时间的事件,例如 如果结果包含 "Start -> 2016-02-02T17:00:00+01:00",则 return 为真。
我找到了在数组中而不是在多维 stdClass 对象中搜索的方法。
开始时尝试简单 foreach
:
$items = $obj->items; // assuming $obj is your initial object
$sample_date = "2016-02-02T17:00:00+01:00";
$hasNeededDate = false;
foreach ($items as $item) {
if ($item->start->dateTime == $sample_date) {
$hasNeededDate = true;
break;
}
}
var_dump($hasNeededDate);