本文整理汇总了PHP中Term::children方法的典型用法代码示例。如果您正苦于以下问题:PHP Term::children方法的具体用法?PHP Term::children怎么用?PHP Term::children使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Term
的用法示例。
在下文中一共展示了Term::children方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: findTermsRecursive
/**
* find terms recursive
*
* @param Term $parent
*/
protected function findTermsRecursive($parent, $level = 0, $path = '/', $state = Term::STATE_ACTIVE, $orderBy = 'ordering')
{
$data = $parent->attributes;
$data['level'] = $level++;
$vob = Vocabulary::model()->findByPk($parent->v_id);
if (is_object($vob)) {
$propertyClassName = $vob->propertyClassName;
if (!empty($propertyClassName)) {
$model = new $propertyClassName();
$property = $model->findByAttributes(array('term_id' => $parent->id, 'status' => $state));
if (is_object($property)) {
$properties = $property->attributes;
unset($properties['id'], $properties['status'], $properties['creation_datetime'], $properties['last_update'], $properties['created_by'], $properties['updated_by'], $properties['term_id']);
$data['properties'] = $properties;
}
}
}
$children = $parent->children(array('order' => $orderBy, 'condition' => 'children.state=:state', 'params' => array(':state' => $state)));
if (is_array($children) && count($children)) {
$data['children'] = array();
foreach ($children as $term) {
Yii::trace('findTermsRecursive in ' . $orderBy, 'system.db.abc');
$data['children'][] = $this->findTermsRecursive($term, $level, '/', $state, $orderBy);
}
}
return $data;
}