PHP 變數作用域

2021-09-25 14:10:44 字數 933 閱讀 8021

<?php

date_default_timezone_set("asia/shanghai");

#變數作用域

/*** 以下**結構會進入全域性命名空間

* 1.functions(函式)

* 2.classes(類)

* 3.inte***ces(介面)

* 4.constants(常量,並非類常量)

* 5.在函式/方法之外定義的變數

* tips: tips: php.ini裡一定要把register_globals配置設定為off,不然php接收的引數會自動註冊到全域性命名空間

*/function scope_test()

class abc

}} scope_test();

fun();

(new abc()) -> utest();

/*#global引入全域性變數或使用$globals

$a = 1 ;

$b = 2 ;

function sum ()

sum ();

echo $b;

*/#變數範圍的另乙個重要特性是靜態變數。靜態變數僅在區域性函式域中存在,但當程式執行離開此作用域時,其值並不丟失

#靜態宣告是在編譯時解析的,所以不能賦值表示式

function scope_test2()

scope_test2();

scope_test2();

scope_test2();

/*#global匯入的是個引用這點與static類似

function test_global_noref ()

test_global_noref ();

var_dump ( $obj );

*/?>

php變數作用域

1 在php中變數主要有 內建超級全域性變數,一般的變數,常量,全域性變數,靜態變數等。內建超級全域性變數 可以在指令碼的任何地方使用和可見。即如果我們在乙個php頁面中改變了其中的乙個值,那麼在其他php頁面中使用時,它的值也會發生改變。常量 一旦被宣告將可以在全域性可見,也就是說,它們可以函式內...

php變數作用域

學過c的人用php的時候一般會相當順手,而且感到php太方便太輕鬆。但在變數作用域這方面卻與 c有不同的地方,搞不好會相當鬱悶,就找不到錯誤所在。昨晚就與到這麼乙個問題,是全域性變數在函式中的問題。今天搜尋了一下,發現一篇相當不錯的文章,講了php中的變數作用域。是一位翻譯的 在這貼一下 變數的範圍...

php變數作用域

先引入官網的一句話 變數的範圍即它定義的上下文背景 也就是它的生效範圍 大部分的 php 變數只有乙個單獨的範圍。這個單獨的範圍跨度同樣包含了 include 和 require 引入的檔案。我理解的就是 php變數只有乙個單獨範圍就是指函式內變數的範圍單獨作用於函式內部,函式外部的變數作用域只在函...