PHP if语句为null

时间:2013-03-01 08:13:50

标签: php

我的控制器中有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;
}

我正在制作一个可排序列表,任何人都可以看到问题吗?

1 个答案:

答案 0 :(得分:0)

这样的语句if($parent == $page->parent)返回true或false。因此,如果它的值为null,则会转到else语句。