日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

php变量使用,php变量的使用

發布時間:2023/11/30 php 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php变量使用,php变量的使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

來源:www.cncfan.com?|?2006-1-11?|?(有1856人讀過)

就像大部份的結構化程序,有所謂的全局變量與局部變量,PHP 在這方面也是有相似之處。

在 PHP 的程序執行時,系統會在內存中保留一塊全局變量的區域。實際運用時,可以透過 $GLOBALS["變量名稱"] 將需要的變量取出。在用戶自定的函數或程序中,就可以用 $GLOBALS 數組取出需要的變量。當然別忘了 PHP 的變量是區分大小寫的,搞錯了大小寫可是叫一百年,變量也不會出來。

$GLOBALS 數組是 PHP 程序中比較特殊的變量,不必定義,系統會自動匹配相關的變量在里面。在函數中,也不必管 $GLOBALS 數組是否已經做全局定義,就可以直接使用了。

和 $GLOBALS 變量類似的還有 $php_errormsg 字符串變量。若 PHP 的配置文件 (php.ini/php3.ini) 中的 track_errors 選項打開的話,會有全局變量 $php_errormsg 可以看到錯誤的信息。

在 PHP 中,全局變量的有效范圍 (scope) 僅限于主要程序中,不會影響到函數中同名的變量,也就是全局變量與局部變量互不侵犯。若要變量能通透到函數中,就要用到 $GLOBALS 數組或是使用 global 定義。

例如,在自行開發的函數中,要取得目前執行 PHP 程序頁面的文件名,就可以用 $GLOBALS["PHP_SELF"] 取出 $PHP_SELF 的值。

// 本程序使用 $GLOBALS 數組

function myfunc() {

echo $GLOBALS["PHP_SELF"];

}

myfunc();

?>

下面是錯誤的示范,請勿模仿,上面的才是正確的示范。

// 這是錯誤的示范

function errfunc() {

echo $PHP_SELF;

}

errfunc();

?>

但是這個錯誤的示范要是改成下例就沒問題了

// 本程序使用全局定義

function myfunc() {

global $PHP_SELF;

echo $PHP_SELF;

}

myfunc();

?>

在變量前面加上 global 的名稱,就是定義該變量為全局變量。用這種方式,就不需使用 $GLOBALS 數組,也能讓變量進入自行開發的函數中。

接下來先看靜態變量的例子

// 靜態變量的例子

function myfunc() {

static $mystr;

$mystr.="哈";

echo $mystr."
\n";

}

myfunc(); // 哈

myfunc(); // 哈哈

myfunc(); // 哈哈哈

?>

函數在執行時所產生的變量,在函數結束時就消失了,有時因為程序的需要,函數在循環中,當不希望變量在每次執行完函數就消失的話,靜態變量 (static variable) 就派上用場了。上例中,使用 $mystr 變量之前,先在變量前面加上 static,即表示變量 $mystr 是靜態變量,當每次執行 myfunc() 函數時,$mystr 的值會一直增加,每執行一次就多一個哈字。若將 static 的靜態變量定義拿掉,就沒辦法累加哈字了。

// 不是靜態變量的例子 (錯誤的)

function myfunc() {

$mystr.="哈";

echo $mystr."
\n";

}

myfunc(); // 哈

myfunc(); // 哈

myfunc(); // 哈

?>

再看一個比較實際的例子,它是處理表格的顏色,讓隔行的顏色不同。

function TdBackColor() {

static $ColorStr;

if ($ColorStr=="808080") {

$ColorStr="c0c0c0";

} else {

$ColorStr="808080";

}

return($ColorStr);

}

echo "

for ($i=0; $i<10; $i++) {

$ColorStr=TdBackColor();

echo "

這是第".$i."行\n";

}

echo "

";

?>

PHP 的變量使用技巧上,最令人覺得不可思議的則是變量的變量 (variable variable)。這是充分利用 PHP 特性玩出的特殊技巧

$a = "Hello";

$$a = "world";

echo "$a, $hello"; // Hello, world

echo "$a, {$a}"; // 也是 Hello, world

?>

mdean@kcnet.com 舉出一個更絕的例子 (24-Apr-1999),他稱為變量的函數 (variable function)

function myCallbackFunction()

{

print("Hello from callback");

}

function myFunction($callback)

{

$callback();

}

// call to myFunction passing callback

// function as parameter

myFunction("myCallbackFunction");

?>

至于用戶在 FORM 中輸入的資料,要怎么處理呢?要是在 PHP 的配置文件中,track_vars 設為 On 時,直接使用變量名字就好了。如下例,next.php 在執行時,系統會自動產生兩個變量 $username 及 $sex,直接使用就好了,比起傳統的 CGI 要自己解析,PHP 實在是太神奇了。

姓名:

性別:

由于 PHP 許多語法都是 C 語言的翻版,故 PHP 在使用變量時,隨時都可以使用新的變量,只要在使用前將變量初始化就好了,不必像 Pascal 語言那樣嚴謹,所有要使用的變量都要事先定義。這當然有好處與壞處:好處是使用方便、自由;壞處就是常常因這些自由而付出相當大的代價調試。在程序碼短的 PHP 程序當然不成問題,當程序在數百數千行,甚至 include 或 require 好幾層之后,問題就浮現出來了。無論如何,保持良好的寫作習慣才是避免浪費青春的方法。

總結

以上是生活随笔為你收集整理的php变量使用,php变量的使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。