我的控制器中有if
语句:
if($parent == $page->parent)
有时候$parent == null
,$parent
例如16
它会执行我的if语句,但只有当它的null不执行它时我做错了什么?
这是我的控制器:
public function updateMenu($id)
{
$page = Page::find($id);
$parent = Input::get('parent');
$new_order = Input::get('index');
if($parent == $page->parent)
{
if($page->order_id > $new_order)
{
DB::table('pages')
->where('parent',$parent)
->where('order_id', '<', $page->order_id)
->increment('order_id');
}
else
{
DB::table('pages')
->where('parent',$parent)
->where('order_id', '>=', $page->order_id)
->decrement('order_id');
}
}
else
{
DB::table('pages')
->where('parent',$page->parent)
->where('order_id', '>', $page->order_id)
->decrement('order_id');
}
$page->order_id = Input::get('index');
$page->parent = Input::get('parent');
$page->save();
return $id;
}
我正在制作一个可排序列表,任何人都可以看到问题吗?
答案 0 :(得分:0)
这样的语句if($parent == $page->parent)
返回true或false。因此,如果它的值为null
,则会转到else
语句。