本文整理汇总了PHP中Lib::collapse方法的典型用法代码示例。如果您正苦于以下问题:PHP Lib::collapse方法的具体用法?PHP Lib::collapse怎么用?PHP Lib::collapse使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Lib
的用法示例。
在下文中一共展示了Lib::collapse方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: data_get
/**
* **Get an item from an array or object using "dot" notation.**
*
* @param mixed $target
* @param string|array $key
* @param mixed $default
*
* @return mixed
*/
public static function data_get($target, $key, $default = NULL)
{
if (NULL === $key) {
return $target;
}
$key = is_array($key) ? $key : explode('.', $key);
while (($segment = array_shift($key)) !== NULL) {
if ($segment === '*') {
if (is_object($target) and method_exists($target, 'toArray')) {
$target = $target->all();
} elseif (!is_array($target)) {
return value($default);
}
$result = Lib::array_extract($target, $key);
return in_array('*', $key, TRUE) ? Lib::collapse($result) : $result;
}
if (Lib::array_accessible($target) && Lib::key_exists($target, $segment)) {
$target = $target[$segment];
} elseif (is_object($target) && isset($target->{$segment})) {
$target = $target->{$segment};
} else {
return value($default);
}
}
return $target;
}