PHP核心探索 變數概述

2022-10-06 12:36:09 字數 1421 閱讀 1638

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

複製** **如下:

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()

change();

echo $foo, ' ', $bar;

?>

執行**會輸程式設計客棧出11 20。

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

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

本文位址: /wangluo/php/104714.html

PHP核心探索之變數(6)

年前因為工作比較飽和,現在又忙著換工作的事情,基本停止了對博文的更新。後續的博文,還是慢慢補上吧。為了不至於過於發散,先搞個未成形的大綱,如下 php 核心 探索 之 變數 不平凡的字串 php 核心 探索 之 變數 變數 的生命週期 型別轉換 php 核心 年前因為工作比較飽和,現在又忙著換工作的...

php核心探索 常量

在php中常量的結構只是在變數的基礎上新增了一些額外的元素 typedef struct zend constant zend constant php常量定義方式 define think in php define定義常量過程 類常量定義 此處不做介紹 值型別判斷和處理 c.value val ...

PHP核心探索筆記 函式

函式的定義是乙個將函式名註冊到函式列表的過程 1.詞法分析 function將會生成t function標記 2.語法分析 3.生成中間 生成的中間 為 zend declare function 根據這個中間 及運算元對應的op type。我們可以找到中間 的執行函式為 zend declare ...