引用 global關鍵字

2021-08-28 04:06:09 字數 1254 閱讀 2233

———————————— &引用賦值

$data = [

['id' => '1'],

['id' => '2'],

];$articlelist = [

['id' => '1','title' => '標題1'],

['id' => '2','title' => '標題2'],

];foreach ($data

as$key => &$val)

}}print_r($data); exit; // 輸出:

array (

[0] => array ( [id] => 1 [info] => array ( [id] => 1 [title] => 標題1 ) )

[1] => array ( [id] => 2 [info] => array ( [id] => 2 [title] => 標題2 ) )

)———————————— 傳值、傳位址的區別

傳值是把實參的值賦值給行參 那麼對行參的修改,不會影響實參的值

傳位址 是傳值的一種特殊方式,他傳遞的是位址,傳位址後,實參和行參都指向同乙個物件

function

jiayi

(&$value)

$a = 3;

jiayi($a);

echo

$a; //4

————————————

&取位址符號 取位址並賦給另乙個變數,乙個變另乙個也會變

$a = 1;

$b = &$a;

$b = 2;

echo

$a; // 2

unset($b); // 只是取消$a的位址,值還在

echo

$a; // 2

————————————

global將區域性變數$y變為全域性變數

$globals['var1'] = 5;

$z = 10;

function

xx()

xx();

echo

$var1; // 5

echo

$z; // 20

————————————

# $globals 範例

function

test

() $foo = "content";

test(); // content --- local_variable

————————————

php 中global關鍵字和 GLOBALS用法

首先我們先看一段 a 1 global scope function test test 這個指令碼不會有任何輸出,因為 echo 語句引用了乙個區域性版本的變數 a 而且在這個範圍內,它並沒有被賦值。你可能注意到 php 的全域性變數和 c 語言有一點點不同,在 c 語言中,全域性變數在函式中自動...

static關鍵字 和 global

類內部 宣告靜態成員,可以使用修飾符public protected private 訪問靜態屬性用 self 或 static 關鍵字 靜態變數屬於整個類 靜態函式內部沒有this指標,只能訪問靜態變數和靜態函式 類外部 靜態成員不需要例項化物件就可以訪問,類名 靜態成員名 子類繼承父類 子類訪問...

global和 nonlocal關鍵字

例如 def handu global a 利用外邊的a執行函式 a 10 print 函式內部 a a 20 handu print 外部函式 a 結果 函式內部 30 函式外部 30 開始分析 global關鍵字可以將區域性變數變成乙個全域性變數所以都是30 30 def hanfu globa...