php函數參數的問題

來源:互聯網
上載者:User
最近在看《深入php物件導向,模式與實踐》這本書,P97有個案例把我弄糊塗了
案例是一個讀寫設定檔的工具。

function readParams($sourceFile){    $params = array();    //從$sourceFile中讀取文本參數,省略代碼    return $params;}function writeParams(**$params,$sourceFile**){    //寫入文本參數到$sourceFile,省略代碼}

然後是用戶端的代碼

$file = "./params.txt";$array['key1'] = "val1";$array['key2'] = "val2";$array['key3'] = "val3";**writeParams($array, $file);**//將數組寫入檔案$output = readParams($file);//從檔案讀取數組print_r($output);

疑問是writeParams()方法。為什麼後面參數寫的不一樣。我知道writeParams要傳的第一個參數是關聯陣列第二個參數是源檔案路徑。。但在第一段代碼裡參數寫成writeParams($params,$sourceFile)這是為什麼呢。。

回複內容:

最近在看《深入php物件導向,模式與實踐》這本書,P97有個案例把我弄糊塗了
案例是一個讀寫設定檔的工具。

function readParams($sourceFile){    $params = array();    //從$sourceFile中讀取文本參數,省略代碼    return $params;}function writeParams(**$params,$sourceFile**){    //寫入文本參數到$sourceFile,省略代碼}

然後是用戶端的代碼

$file = "./params.txt";$array['key1'] = "val1";$array['key2'] = "val2";$array['key3'] = "val3";**writeParams($array, $file);**//將數組寫入檔案$output = readParams($file);//從檔案讀取數組print_r($output);

疑問是writeParams()方法。為什麼後面參數寫的不一樣。我知道writeParams要傳的第一個參數是關聯陣列第二個參數是源檔案路徑。。但在第一段代碼裡參數寫成writeParams($params,$sourceFile)這是為什麼呢。。

有一種東西叫做。。。形參。。。

全稱為“形式參數”是在定義函數名和函數體的時候使用的參數,目的是用來接收調用該函數時傳遞的參數。

在一般傳值調用的機制中只能把實參傳送給形參,而不能把形參的值反向地傳送給實參。因此在函數調用過程中,形參值發生改變,而實參中的值不會變化。而在引用調用的機制當中是將實參引用的地址傳遞給了形參,所以任何發生在形參上的改變實際上也發生在實參變數上。

《形參》

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.