本文整理汇总了PHP中Arrays::placeInExpanded方法的典型用法代码示例。如果您正苦于以下问题:PHP Arrays::placeInExpanded方法的具体用法?PHP Arrays::placeInExpanded怎么用?PHP Arrays::placeInExpanded使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Arrays
的用法示例。
在下文中一共展示了Arrays::placeInExpanded方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: placeInExpanded
private static function placeInExpanded($data, array &$nodes, array $expansion_data, $name_property = 'name', $children_property = 'children', $output_type = 'keep_type')
{
$keys = array_keys($expansion_data);
$column = $keys[0];
$data_to_store = array_shift($expansion_data);
$found_node = null;
foreach ($nodes as $node) {
if (Generic::get($node, $name_property) == Generic::get($data, $column)) {
$found_node = $node;
}
}
if ($found_node == null) {
$found_node = array();
$found_node[$name_property] = Generic::get($data, $column);
foreach ($data_to_store as $col) {
$found_node[$col] = Generic::get($data, $col);
}
if (count($expansion_data)) {
$found_node[$children_property] = array();
}
if ($output_type == 'object') {
$found_node = (object) $found_node;
}
$nodes[] = $found_node;
}
if (count($expansion_data)) {
Arrays::placeInExpanded($data, Generic::get($found_node, $children_property), $expansion_data, $name_property, $children_property, $output_type);
}
}