摘要:小駝峰法大駝峰法匈牙利命名法變量名屬性類型對(duì)象描述。是一種弱類型語(yǔ)言,變量在使用之前并不需要聲明類型,且同一變量可以保存多種不同類型的數(shù)據(jù)。另外,在函數(shù)內(nèi)部創(chuàng)建的靜態(tài)變量是無(wú)法在函數(shù)外部使用的。
變量標(biāo)識(shí)符
標(biāo)識(shí)符即是變量的名稱,PHP 中關(guān)于變量的標(biāo)識(shí)符有以下規(guī)則:
由任意字母、數(shù)字、下劃線組成,但不能以數(shù)字開(kāi)頭
嚴(yán)格區(qū)分大小寫
為了科學(xué)規(guī)范標(biāo)識(shí)符,主要有以下幾種流行的命名方式:
第一個(gè)單詞以小寫字母開(kāi)始,之后每個(gè)單詞的首字母大寫(小駝峰法);或每一個(gè)單詞的首字母都采用大寫字母(大駝峰法,也稱帕斯卡命名法)。
$myFirstName = "jochen"; # 小駝峰法 $MyFirstName = "jochen"; # 大駝峰法
變量名 = 屬性 + 類型 + 對(duì)象描述。
$sMyFirstName = "jochen";
所有字母均小寫,并且每個(gè)單詞間以下劃線分割
$my_first_name = "jochen";變量賦值
PHP 提供了兩種方式給變量賦值,分別是傳值賦值和引用賦值。
最常用的是傳值賦值,當(dāng)將一個(gè)表達(dá)式的值賦予一個(gè)變量時(shí),整個(gè)原始表達(dá)式的值被賦值到目標(biāo)變量。這意味著,當(dāng)一個(gè)變量的值賦予另外一個(gè)變量時(shí),改變其中一個(gè)變量的值,將不會(huì)影響到另外一個(gè)變量。
引用賦值是原始變量?jī)?nèi)容的一種別名,不同于 C 語(yǔ)言中的指針,但改動(dòng)變量的值一樣會(huì)影響到原始變量。
$foo = "jochen"; # 傳值賦值 $bar = &$foo; # 引用賦值 $bar = "coco"; # $foo、$bar 的值都為 coco變量類型
變量類型是指能夠保存在該變量中的數(shù)據(jù)類型。PHP 的數(shù)據(jù)類型可分為三種:標(biāo)量數(shù)據(jù)類型、復(fù)合數(shù)據(jù)類型和特殊數(shù)據(jù)類型。PHP 標(biāo)量數(shù)據(jù)類型有 boolean(布爾型)、integer(整型)、float(浮點(diǎn)型,也稱作 double)、string(字符串),復(fù)合數(shù)據(jù)類型有 array(數(shù)組)、object(對(duì)象) 和 callable(可調(diào)用),特殊數(shù)據(jù)類型 resource(資源) 和 NULL(無(wú)類型)。
PHP 是一種弱類型語(yǔ)言,變量在使用之前并不需要聲明類型,且同一變量可以保存多種不同類型的數(shù)據(jù)。有時(shí),為了判斷當(dāng)前變量的數(shù)據(jù)類型,我們可以使用以下方法進(jìn)行判斷:
gettype() — 獲取變量的類型 is_int() 或 is_integer() — 檢測(cè)變量是否是整數(shù) is_numeric() — 檢測(cè)變量是否為數(shù)字或數(shù)字字符串 is_float() 或 is_double() — 檢測(cè)變量是否是浮點(diǎn)型 is_string() — 檢測(cè)變量是否是字符串 is_bool() — 檢測(cè)變量是否是布爾型 is_array() — 檢測(cè)變量是否是數(shù)組 is_object() — 檢測(cè)變量是否是一個(gè)對(duì)象 is_null() — 檢測(cè)變量是否為 NULL is_resource() — 檢測(cè)變量是否為資源類型
有時(shí),我們需要強(qiáng)制將某個(gè)變量當(dāng)作某種類型來(lái)求值,就要進(jìn)行類型強(qiáng)制轉(zhuǎn)換:
(int) 或 (integer) — 轉(zhuǎn)換為整形 (bool) 或 (boolean) — 轉(zhuǎn)換為布爾類型 (float) 或 (double) — 轉(zhuǎn)換為浮點(diǎn)型 (string) — 轉(zhuǎn)換為字符串 (array) — 轉(zhuǎn)換為數(shù)組 (object) — 轉(zhuǎn)換為對(duì)象 (unset) — 轉(zhuǎn)換為 NULL變量作用域
由 PHP 預(yù)定義的,且在任何腳本的任何作用域中始終可用的一種變量。超全局變量包括:
$GLOBALS
$_SERVER
$_REQUEST
$_POST
$_GET
$_FILES
$_ENV
$_COOKIE
$_SESSION
其中 $GLOBALS 是一個(gè)包含了所有全局變量的關(guān)聯(lián)數(shù)組,變量的名字就是數(shù)組的 key,變量的值就是數(shù)組的 value。
在函數(shù)外部創(chuàng)建的變量, for 語(yǔ)句 、while 語(yǔ)句、foreach 語(yǔ)句中創(chuàng)建的變量也屬于全局變量,其作用域是從創(chuàng)建變量的語(yǔ)句開(kāi)始到文件的末尾,但在函數(shù)內(nèi)部不可見(jiàn)。需要注意的是:常量一旦被創(chuàng)建,將在全局中可見(jiàn),同時(shí)在函數(shù)內(nèi)部也是可見(jiàn)的。
在函數(shù)內(nèi)部創(chuàng)建的變量,其作用域是從創(chuàng)建變量的語(yǔ)句開(kāi)始到函數(shù)末尾。需要注意的是:如果函數(shù)內(nèi)部的變量與外部的全局變量名稱相同時(shí),內(nèi)部變量會(huì)覆蓋外部變量。另外,在函數(shù)內(nèi)部創(chuàng)建的靜態(tài)變量是無(wú)法在函數(shù)外部使用的。
require 和 include 不影響作用域,即如果這兩個(gè)語(yǔ)句作用于函數(shù)內(nèi)部,變量具有局部作用域;如果作用于函數(shù)外部,變量具有全局作用域。用關(guān)鍵字 global 聲明變量,可以用來(lái)手動(dòng)指定一個(gè)在函數(shù)中定義或使用的變量具有全局作用域。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/28519.html
摘要:因此,當(dāng)需要操作字符集的字符串時(shí)候,請(qǐng)務(wù)必安裝擴(kuò)展,并使用相應(yīng)的函數(shù)代替原生的字符串函數(shù)中國(guó)擴(kuò)展大部分的函數(shù)都需要基于一個(gè)編碼內(nèi)部編碼來(lái)處理,請(qǐng)務(wù)必統(tǒng)一使用編碼,這個(gè)大部分可以在中配置。 創(chuàng)建 PHP 支持 4 種方式來(lái)創(chuàng)建一個(gè)字符串:?jiǎn)我?hào)、雙引號(hào)、heredoc 語(yǔ)法結(jié)構(gòu)和 nowdoc 語(yǔ)法結(jié)構(gòu)。 1. 單引號(hào) 在單引號(hào)字符串中,變量和特殊字符將不會(huì)被轉(zhuǎn)義替換,除了反斜杠和單引號(hào)...
摘要:前言本文通過(guò)分析這個(gè)語(yǔ)句的編譯和執(zhí)行來(lái)窺探解釋執(zhí)行邏輯準(zhǔn)備參考之前的系列文章,在環(huán)境下下載,編譯源代碼將代碼導(dǎo)入中編輯運(yùn)行選項(xiàng),增加運(yùn)行參數(shù)設(shè)置斷點(diǎn)開(kāi)始調(diào)試是一個(gè)測(cè)試腳本,放在目錄下,中只包含一條簡(jiǎn)單的賦值語(yǔ)句調(diào)用堆棧參考之前的系列文章 前言 本文通過(guò)分析 $a=1 這個(gè) PHP 語(yǔ)句的編譯和執(zhí)行來(lái)窺探 php-cli 解釋執(zhí)行邏輯 準(zhǔn)備 參考之前的系列文章,在 ubuntu 環(huán)境下...
摘要:概述我們知道,在編程語(yǔ)言中,數(shù)組的使用頻率是很高的,幾乎每個(gè)腳本都會(huì)使用到。循環(huán)缺點(diǎn)遍歷完成之后,不能對(duì)數(shù)組進(jìn)行第二次遍歷數(shù)組內(nèi)部指針指向了最后一個(gè)元素。 概述 我們知道,在 PHP 編程語(yǔ)言中,數(shù)組的使用頻率是很高的,幾乎每個(gè)腳本都會(huì)使用到。 PHP 自帶了大量的、優(yōu)秀的操作數(shù)組的函數(shù)以供我們使用,本文就對(duì)這些數(shù)組函數(shù)的使用做一些分類和總結(jié),方便大家以后查閱。 創(chuàng)建 1. range...
摘要:通過(guò)這個(gè)函數(shù)可以很方便的在程序運(yùn)行期間執(zhí)行很多常見(jiàn)操作。此文可以轉(zhuǎn)載,但轉(zhuǎn)載前需要發(fā)郵件到進(jìn)行溝通,未溝通的均視作侵權(quán)。 index.php index.php 是整個(gè)框架的入口文件,也就是說(shuō)所有的請(qǐng)求都要從它這里開(kāi)始。因?yàn)?index.php 源碼非常簡(jiǎn)潔,那么我們直接放一張?jiān)创a截圖,按著截圖說(shuō)一下源碼。 showImg(https://segmentfault.com/img/re...
閱讀 3324·2023-04-25 16:25
閱讀 3837·2021-11-15 18:01
閱讀 1609·2021-09-10 11:21
閱讀 3016·2021-08-02 16:53
閱讀 3087·2019-08-30 15:55
閱讀 2494·2019-08-29 16:24
閱讀 2104·2019-08-29 13:14
閱讀 1037·2019-08-29 13:00