I noticed that some php functions have the power to change a variables value by simply calling the function and others do not. For instance, consider trim() and sort() which both perform an "action:"
//trim()
$string = "     Test";
echo $string."<br>";
trim($string);
echo $string."<br>";
//each echo returns the same. trim() does nothing for the second echo
However, with 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
}
I know the correct way to use both (done it a 1000 times). But what is the technical term for the difference between how these two functions work? sort() modifies its' variable (to some extent) but trim() does not.
 
     
     
     
    