PHP中的全域性變數

2021-08-18 13:42:38 字數 2073 閱讀 6733

1.global

global的作用是定義全域性變數,但是這個全域性變數不是應用於整個**,而是應用於當前頁面,包括include或require的所有檔案。

但是在函式體內定義的global變數,函式體內可以使用,在函式體外定義的global變數不能在函式體內使用,具體看下面示例。

(1)在函式體內定義global變數,函式體內可以使用。

<?php 

$a=123;

function

aa()

aa();

//輸出結果為123,說明函式體內可以使用函式體外的變數;

?>

(2)在函式體外定義global變數,函式體內不可以使用。

<?php 

$a=123;

global

$a; //

在函式體外把$a定義為global變數。

function

aa()

aa();

//會報錯,不能輸出變數a。

?>

2.$globals

在 $globals 陣列中,每乙個變數為乙個元素,鍵名對應變數名,值對應變數的內容。$globals 之所以在全域性範圍內存在,是因為 $globals 是乙個超全域性變數。注意$globals 的寫法,比如變數$a1,寫法為$globals['a1']。

示例:先使用global定義

<?php 

$a1 = 1;

$a2 = 2;

function

sum()

sum();

echo a2; //

輸出結果為3

?>

使用$globals定義全域性變數

<?php 

$a1 = 1;

$a2 = 2;

function

sum()

sum();

echo a2; //

輸出結果為2

?>

例1:

function

test()

$a = 2; //

定義乙個變數a

test(); //

呼叫test()方法

print

$a; //

輸出a,輸出的其實是$a = 2,所以結果為2.

例2:

function

test_global()

function

test_globals()

$var1 = 5;

$var2 = $var3 = 0;

test_global();

print

$var2; //

輸出結果為0

test_globals();

print

$var3; //

輸結果為5

分類:

php好文要頂

關注我

收藏該文

strive-count

關注 - 24

粉絲 - 39

+加關注 00

phpcms新增子欄目後的讀取

phpcms導航欄當前欄目選中方法

posted @

2016-12-10 10:44

strive-count 閱讀(

1) 編輯收藏

#1樓2018-02-08 17:09 |

it追分少年

博主你的這些**都是通過執行的麼?

<?php

$a1 = 1;

$a2 = 2;

function sum()

sum();

echo a2; //輸出結果為3

?>

<?php

$a1 = 1;

$a2 = 2;

function sum()

sum();

echo a2; //輸出結果為2

?>

你這兩段**有沒有經過執行?

PHP中全域性變數和超全域性變數

自定義全域性變數的作用域為當前的指令碼檔案的任意位置 函式或者方法啊之類的 但是要想用它們必須先執行一下 global variable語句 variable為要使用的全域性變數 或者是使用 global 變數名字 來呼叫。超全域性變數作用於也是為當前的指令碼檔案的任意位置,在使用的時候無需先執行 ...

PHP 全域性變數

全域性變數用關鍵字 global,如宣告乙個全域性變數 global x 函式之外宣告的變數具有global作用域,只能在函式之外進行訪問 函式之內宣告的變數具有local作用域,只能在函式之內進行訪問 如果全域性變數要在函式之內進行訪問,需要在變數前加global,例如 x 5 全域性作用域 fu...

php 全域性變數

描述 php中把定義在函式 類之外的變數稱之為全域性變數,也就是定義在主指令碼中的變數,這些變數可以在函式 成員方法中通過global關鍵字引入使用。1 function test 56 id 1 7test 8echo id 儲存 全域性變數在整個請求執行期間始終存在,它們儲存在eg symbol...