2016-04-26 26 views
-2

我有一個一般的PHP問題。我有一個大小的數組可以說大小爲3.我將它作爲輸入傳遞給包含文件中的函數。那麼,它複製數組(更多的內存)還是實際使該函數引用它?Php函數從輸入或引用創建新的數組(數據)?

$arr = array('a', 'b', 'c'); 
include(functions.php); //doSomething() resides here 
$result = doSomething($arr); 
+2

你可以假定它會創建一個副本,除非有符號前綴。 – frz3993

+3

複製除非將函數arg定義爲引用'&$ arg'。 http://php.net/manual/en/functions.arguments.php – AbraCadaver

回答

1
$result = array('a', 'b', 'c'); 
include(functions.php); //doSomething() resides here 
doSomething($result); 

,並定義

function doSomething(&$result) {/* code */} 

而且不會佔用更多的內存..