改变参数值的PHP函数的名称是什么?

时间:2017-05-18 14:15:32

标签: php function parameters

我注意到一些php函数可以通过简单地调用函数来改变变量值而其他函数则没有。例如,考虑trim()sort()执行"操作:"

//trim()
$string = "     Test";
echo $string."<br>";
trim($string);
echo $string."<br>";
//each echo returns the same. trim() does nothing for the second echo

然而,sort():

//sort()
$fruits = ['squash','apple','kiwi'];
foreach($fruits as $fruit){
    echo $fruit."<br>";
    //returns array in original order
}
sort($fruits); 
foreach($fruits as $fruit){
    echo $fruit."<br>";
    //returns sorted array
}

我知道使用两者的正确方法(做了1000次)。但是这两个功能如何工作之间差异的技术术语是什么? sort()修改其“&#39;变量(在某种程度上),但trim()没有。

2 个答案:

答案 0 :(得分:2)

这里有一些关于php的这两个功能的文档。你可以看到trim的参数是trans值,而sort的参数是参考。

有关价值和参考,请参阅Pedro Lobito's answerhere

bool sort(array &array_arg [, int sort_flags])

string trim  ( string $str  [, string $charlist  ] )

答案 1 :(得分:0)

您可能需要阅读What's the difference between passing by reference vs. passing by value?

$string = trim($string);