php變數訪問 不懂

來源:互聯網
上載者:User
php變數訪問 不懂求助
PHP code


在函數內部為何不能訪問函數外面的變數
函數內部的變數是局部變數
函數外面的是全域變數 按理說應該在函數內部能訪問外面的變數
為何函數內部提示:the local variable $my_var may not have been initialized

求大牛高手幫忙解說下,不甚感激!

------解決方案--------------------

在函數內部為何不能訪問函數外面的變數 ---可以方問函數外部的全域變數,
函數內部的變數是局部變數
函數外面的是全域變數 按理說應該在函數內部能訪問外面的變數 --是可以訪問的
為何函數內部提示:the local variable $my_var may not have been initialized

求大牛高手幫忙解說下,不甚感激!
$my_var = "abc";
global $my_var = "abc";
------解決方案--------------------
global $my_var;
$my_var = "abc";

探討

引用:
在函數內部為何不能訪問函數外面的變數 ---可以方問函數外部的全域變數,
函數內部的變數是局部變數
函數外面的是全域變數 按理說應該在函數內部能訪問外面的變數 --是可以訪問的
為何函數內部提示:the local variable $my_var may not have been initialized

求大牛高手幫忙解說下,不甚……

------解決方案--------------------
PHP code

------解決方案--------------------
你可以這麼理解,函數內和函數外是兩個世界,兩個世界時間變數預設是不認識的,只有介紹了才有機會認識,介紹方法就是global。

PHP code

------解決方案--------------------
要設定成全域變數的,
------解決方案--------------------
我測式了成功後在發出來的代碼。
探討

引用:
PHP code
global $my_var;
$my_var='abc';

function my_fun() {
global $my_var;
echo $my_var;
}
my_fun();
?>
第二行的global $my_var;有毛用啊?

------解決方案--------------------
在函數外面的變數前面+global 毛用不起
函數外面的變數就是全域變數了已經,+global有毛用
函數裡面的變數加global才是全域變數,這樣設計就是為了容易區分和理解,況且手冊上例子舉的的很明白
http://www.php.net/manual/zh/language.variables.scope.php
------解決方案--------------------

------解決方案--------------------
$a = 'abc';
function aaa() {
echo $a; //這個你可以寫成$GLOBALS['aa'], 也可以在這語句上面global $a;
}
?>
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.