PHP核心探索:變數概述_PHP教程

來源:互聯網
上載者:User
現代程式設計語言中的基本元素主要有:變數,流程式控制制介面,函數等等。我能否不使用變數來編寫程式呢? 這顯然是可以的,例如:

複製代碼 代碼如下:
echo "Hello AndHM";
?>

這個程式很簡單,輸出一個字串內容。

就和我們僅僅使用二進位也能編程一樣,不使用變數也能完成大部分的工作,不使用變數我們的程式將喪失極大的靈活性, 變數可以讓我們將值儲存起來,以便在程式的其他地方使用,或者通過計算儲存新的值。 變數具有三個基本特性:

名稱。變數的標示符。就像小狗一樣,主人可能會給這些小狗起個喜歡的名稱。 變數命名上,PHP繼承了Perl的文法風格,變數以貨幣符號開始,後面跟變數名。 一個有效變數名由字母或者底線開頭,後面跟上任意數量的字母,數字,或者底線。 PHP同時還支援複合變數,也就是類似$$a的變數,它會進行兩次的解釋。這給PHP帶來了非常靈活的動態特性。

類型。變數的類型,就像小狗的品種,不同的小狗血統可能會不一樣,有的聰明, 有的會購物等等。 在很多靜態語言中,變數在定義時就指定了,在程式運行過程中都不允許進行變更, 那如果你有一隻能隨便指定品種的小狗會不會很拉風呢;-) PHP就是這樣,屬於弱類型語言,可以隨便賦予它任何類型的值。
值內容。 這是標示所代表的具體內容。這就像是實實在在的小狗的這個實物。 你可以給任何一條小狗起名為:小七,在程式設計語言中也是如此,你可以給變數賦予它 所能表示範圍的值。不過在同一時間,變數只能有一個值。

PHP中組成變數名的字母可以是英文字母 a-z,A-Z,還可以是 ASCII 字元從 127 到 255(0x7f-0xff)。 變數名是區分大小寫。

除了變數本身,在PHP中我們經常會接觸到與變數相關的一些概念,比如:常量,全域變數,靜態變數以及類型轉換等。 本章我們將介紹這些與變數相關的實現。其中包括PHP本身的變數低層儲存結構以及弱類型系統的實現, 以及這些類型之間的相互轉換等。
先看一段PHP代碼:

複製代碼 代碼如下:
$foo = 10;
$bar = 20;
function change() {
global $foo;
$bar = 0;
$foo++;
}
change();
echo $foo, ' ', $bar;
?>

運行代碼會輸出11 20。

可是為什麼會有這樣的輸出呢?變數在PHP的內部是如何?的呢? 變數的範圍又是怎麼實現的呢? 這是本章將對圍繞變數這個主題展開討論,下面我們從最基本的變數實現開始。

不是所有程式設計語言中的變數的值都可以改變的。想想我們學過的數學中的變數。 他們的值也是不可改變的。例如: x + y = 10; 變數x和y的值是不能發生變化的。 在某個具體情境,也就是某個方程式中只有表示特定的值,變數的值不能改變的好處是: 這樣就能儘可能少的產生副作用, 在Erlang語言中就是如此,它是一門函數式程式設計語言,非常值得學習。

http://www.bkjia.com/PHPjc/728098.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/728098.htmlTechArticle現代程式設計語言中的基本元素主要有:變數,流程式控制制介面,函數等等。我能否不使用變數來編寫程式呢? 這顯然是可以的,例如: 複製代...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.