簡體   English   中英

PHP函數byref參數具有默認值

[英]PHP function byref parameter with default value

我有一個PHP函數,隨着業務需求的變化,我需要對其進行更新。 原始功能是這樣工作的。

function myFunction($var1, $var2, $var3) {
   CODE GOES HERE
}

對於新版本,需要第四個可選參數。 我知道我可以這樣做:

function myFunction($var1, $var2, $var3, $var4 = "") {
    CODE GOES HERE
}

我創建了新代碼,它工作正常。 我剛剛被告知,當為最后一個參數傳遞值時,它需要是byref。 我在這里搜索了PHP文檔和問題,但尚未發現有關此可能性的任何信息。 我認為代碼將像這樣工作:

function myFunction($var1, $var2, $var3, &$var4 = "") {
    CODE GOES HERE
}

這樣行嗎? PHP是否允許變量通過ref傳遞,並且如果未傳遞任何內容,是否也為其設置了默認值?

是的,它確實有效。

請在ideone.com上查看以了解實際效果。

<?php

function test(&$var = "test") {
    echo $var;
}

test();

輸出

test

但是,有一個警告。 如果您確實傳遞了參數,則該參數必須是對變量的引用。 以下內容不起作用:

test("Testing");

因為"Testing"是文字字符串,而不是可引用的變量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM