程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP內核探索:變量概述

PHP內核探索:變量概述

編輯:關於PHP編程

現代編程語言中的基本元素主要有:變量,流程控制接口,函數等等。我能否不使用變量來編寫程序呢? 這顯然是可以的,例如:

復制代碼 代碼如下:
<?php
    echo "Hello AndHM";
?>

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

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

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

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

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

除了變量本身,在PHP中我們經常會接觸到與變量相關的一些概念,比如:常量,全局變量,靜態變量以及類型轉換等。 本章我們將介紹這些與變量相關的實現。其中包括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語言中就是如此,它是一門函數式編程語言,非常值得學習。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved