色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

PHP基礎之變量1——基礎簡介

瀏覽:2日期:2022-09-14 13:40:22

PHP 中的變量用一個美元符號后面跟變量名來表示。變量名是區分大小寫的。

變量名與 PHP 中其它的標簽一樣遵循相同的規則。一個有效的變量名由字母或者下劃線開頭,后面跟上任意數量的字母,數字,或者下劃線。按照正常的正則表達式,它將被表述為:’[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*’。

Note: 在此所說的字母是 a-z,A-Z,以及 ASCII 字符從 127 到 255(0x7f-0xff)。

Note: $this 是一個特殊的變量,它不能被賦值。

<?php

$var = ’Bob’;

$Var = ’Joe’;

echo '$var, $Var'; ?????// 輸出 'Bob, Joe'

$4site = ’not yet’; ????// 非法變量名;以數字開頭

$_4site = ’not yet’; ???// 合法變量名;以下劃線開頭

$i站點is = ’mansikka’; ?// 合法變量名;可以用中文

?>

變量默認總是傳值賦值。那也就是說,當將一個表達式的值賦予一個變量時,整個原始表達式的值被賦值到目標變量。這意味著,例如,當一個變量的值賦予另外一個變量時,改變其中一個變量的值,將不會影響到另外一個變量。

PHP 也提供了另外一種方式給變量賦值:引用賦值。這意味著新的變量簡單的引用(換言之,“成為其別名” 或者 “指向”)了原始變量。改動新的變量將影響到原始變量,反之亦然。

使用引用賦值,簡單地將一個 & 符號加到將要賦值的變量前(源變量)。例如,下列代碼片斷將輸出“My name is Bob”兩次:

<?php

$foo = ’Bob’; ?????????????// 將 ’Bob’ 賦給 $foo

$bar = &$foo; ?????????????// 通過 $bar 引用 $foo

$bar = 'My name is $bar'; ?// 修改 $bar 變量

echo $bar;

echo $foo; ????????????????// $foo 的值也被修改

?>

有一點重要事項必須指出,那就是只有有名字的變量才可以引用賦值。

<?php

$foo = 25;

$bar = &$foo; ?????// 合法的賦值

$bar = &(24 * 7); ?// 非法; 引用沒有名字的表達式

function test()

{

??return 25;

}

$bar = &test(); ???// 非法

?>

雖然在 PHP 中并不需要初始化變量,但對變量進行初始化是個好習慣。未初始化的變量具有其類型的默認值 - 布爾類型的變量默認值是 FALSE,整形和浮點型變量默認值是零,字符串型變量(例如用于 echo 中)默認值是空字符串以及數組變量的默認值是空數組。

Example #1 未初始化變量的默認值

<?php

// Unset AND unreferenced (no use context) variable; outputs NULL

var_dump($unset_var);

// Boolean usage; outputs ’false’ (See ternary operators for more on this syntax)

echo($unset_bool ? 'truen' : 'falsen');

// String usage; outputs ’string(3) 'abc'’

$unset_str .= ’abc’;

var_dump($unset_str);

// Integer usage; outputs ’int(25)’

$unset_int += 25; // 0 + 25 => 25

var_dump($unset_int);

// Float/double usage; outputs ’float(1.25)’

$unset_float += 1.25;

var_dump($unset_float);

// Array usage; outputs array(1) { ?[3]=> ?string(3) 'def' }

$unset_arr[3] = 'def'; // array() + array(3 => 'def') => array(3 => 'def')

var_dump($unset_arr);

// Object usage; creates new stdClass object (see http://www.php.net/manual/en/reserved.classes.php)

// Outputs: object(stdClass)#1 (1) { ?['foo']=> ?string(3) 'bar' }

$unset_obj->foo = ’bar’;

var_dump($unset_obj);

?>

依賴未初始化變量的默認值在某些情況下會有問題,例如把一個文件包含到另一個之中時碰上相同的變量名。另外把 register_globals 打開是一個主要的安全隱患。使用未初始化的變量會發出E_NOTICE 錯誤,但是在向一個未初始化的數組附加單元時不會。 isset() 語言結構可以用來檢測一個變量是否已被初始化。

標簽: PHP
相關文章:
主站蜘蛛池模板: 一级aaaaa毛片免费视频 | 免费视频男女 | 色悠久久久久综合网伊人男男 | 92av在线 | 亚洲免费一 | 国产成人精品视频免费大全 | www.三级| 三级网站国产 | 99久久精品国产片久人 | 26uuu欧美日韩国产 | 国产精品亚洲精品日韩已满 | 2022国产精品自拍 | 免费男女乱淫真视频播放 | 最新欧美精品一区二区三区 | 成人久久18免费网 | 亚洲性免费 | 在线视频一区二区三区在线播放 | 黄色欧美视频 | 亚洲人成亚洲精品 | 国产精品一二三区 | 香蕉香蕉国产片一级一级毛片 | 日本卡一卡2卡3卡4精品卡无人区 | 亚洲国语 | 国产成人免费高清在线观看 | 国产成人99精品免费观看 | 综合网站 | 美女视频黄的免费看网站 | 手机在线观看毛片 | 成人免费看片 | 在线视频亚洲一区 | 亚洲免费视频在线观看 | 午夜性色福利视频在线视频 | 91精品久久久久 | 99精品视频观看 | 一区国严二区亚洲三区 | 亚洲高清在线看 | 一区二区三区影视 | 国产特黄特色的大片观看免费视频 | 九九视频在线观看视频23 | 久久九九国产 | 狼人青草久久网尹人 |