2015-10-08 63 views
-1

我有這樣一個功能:傳遞一個NULL值到一個PHP函數

function do_something($first, $second=null, $third=null) { 

    if ($isset($second)) { 

     // Do something here 

    } 

} 

現在,我想傳遞一個值$third的功能,但我想$second保持NULL:

do_something('abc','','def'); 

現在,$second不再爲NULL。如何將$third的值傳遞給 NULL?

+1

'do_something( 'ABC',NULL, '高清');' – Federkun

+0

'do_something( 'ABC',NULL, '高清');' – Patchesoft

+0

你指的是第二個參數仍然爲空? – madi

回答

4

有沒有其他的方法:

do_something('abc', null,'def'); 
+1

我正要輸入這個。 – madi

+1

@madi我很熱,達到3K :) :) –

+1

我給了你,讓你的夢想成真。歡呼聲 – madi

2

我覺得這是很容易做到這一點:否則

do_something('abc', null,'def'); 

,我連接this SO質疑它使用數組參數,以有可選的論點(對三邁的信貸 - 我不記得這個):

function do_something($arguments = array()) { 
// set defaults 
    $arguments = array_merge(array(
     "argument" => "default value", 
    ), $arguments); 

    var_dump($arguments); 
} 

隨着用法示例:

do_something(); // with all defaults, or: 
do_something(array("argument" => "other value")); 
+0

我喜歡的選項,更乾淨,身份證使用'提取'。 – Musk