前端PHP入門-013-變數範圍

來源:互聯網
上載者:User

標籤:

目前,我們知道了幾個不同的規矩:

  • 函數定義時後括弧裡面接的變數是形式上的參數(形參),與函數體外的變數沒有任何關係。僅僅是在函數內部執行
  • 函數內聲明的變數也與函數外的變數沒關係。

但是,我們實際的處理情況中會遇到這樣的一個情況:

  • 我想在函數體內定義的變數在函數體外用
  • 我想把函數體外的變數拿到函數體內來使用
1.通過$GLOBLAS來讀取外部變數
 
  1. <?php
  2. $one = 10;
  3. function demo(){
  4. $two = 100;
  5. $result = $two + $GLOBALS[‘one‘];
  6. return $result;
  7. }
  8. //你會發現結果變成了110
  9. echo demo();
  10. ?>

上例中:我們將函數體外的變數通過$GLOBALS拿到了函數體使用。所以,打破了函數外的變數不能在函數體內使用的限定。

2.通過$GLOBLAS,在函數內修改外部變數
 
  1. <?php
  2. $pangsir = ‘我是一個兵,來自老百姓‘;
  3. function test(){
  4. echo ‘執行了函數test喲<br />‘;
  5. //調用test()函數,將通過$GLOBALS[‘pangsir‘],把$pangsir 的值改變掉
  6. $GLOBALS[‘pangsir‘] = ‘協助別人很快樂‘;
  7. }
  8. test();
  9. //發現是不是輸出的值變了呀?
  10. echo $pangsir;
  11. ?>

通過上例:我們發現通過GLOBALS[′pangsir′],把GLOBALS[′pangsir′],把pangsir 的值改變掉,所以在最後輸出$pangsir 的時候,值發生了變化。

3.通過$GLOBLAS,在函數內建立全域變數
 
  1. <?php
  2. function hello(){
  3. $GLOBALS[‘que‘] = ‘提神喝茶更好喲‘;
  4. echo ‘你調了一下函數hello<br />‘;
  5. }
  6. hello();
  7. echo $que;
  8. ?>


來自為知筆記(Wiz)

前端PHP入門-013-變數範圍

聯繫我們

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