作为标题,我在 PHP/Yii 项目中创建了一个模型,并创建了一个如下所示的方法:
public function getRootId($id, $module) {
$com = Yii::app()->db->createCommand()->select('pid,id')
->from($this->tableName())
->where('id=:id', array(':id' => $id))
->andWhere('module=:module', array(':module' => $module))
->queryRow();
if ($com['pid'] == 0 || empty($com['pid'])) {
return $com['pid'];
} else {
$this->getRootId($com['pid'], $module);
}
}
但是在return之前获取不到可以成功dump的返回值。然后,我添加了一个静态贡品$_itmes
private static $_items;
并更新如下代码:
public function getRootId($id, $module) {
$com = Yii::app()->db->createCommand()->select('pid,id')
->from($this->tableName())
->where('id=:id', array(':id' => $id))
->andWhere('module=:module', array(':module' => $module))
->queryRow();
if ($com['pid'] == 0 || empty($com['pid'])) {
self::$_times = $com['id'];
} else {
$this->getRootId($com['pid'], $module);
}
}
然后使用 self::$_items 可以得到目标值。
朋友,谁能告诉我发生了什么?