




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第二章Web程序設計PHP語言基礎新工科建設之路·計算機類專業(yè)系列教材01PHP基本語法01PHP基本語法01PHP標記1XML標記風格(標準標記)XML標記風格是以“<?php”開始、以“?>”結尾的,中間包含的代碼就是PHP代碼。這是PHP常用的標記風格,推薦使用這種標記風格,因為它不能被服務器禁用,在XML、XHTML中都可以使用。2腳本標記風格腳本標記風格是以“<script..”開頭、以“</script>”結尾的。由于PHP不推薦使用這種標記,讀者只需了解即可。01PHP基本語法01PHP標記3簡短標記風格簡短標記風格是以“<?”開始、以“?>”結束的。如果使用這種標記風格開發(fā)PHP程序,就必須保證PHP配置文件“php.ini”中的“short_open_tag”選項值設置為“on”。4ASP標記風格如果想使用這種標記風格開發(fā)PHP程序,就必須保證PHP配置文件“php.ini”中的!“asp_tags”選項值設置為“on”。01PHP基本語法02編碼規(guī)范編碼規(guī)范是一種總結性的說明和介紹,并不是強制性的規(guī)則。從項目長遠的;發(fā)展及團隊效率來考慮,遵守編碼規(guī)范是十分必要的。遵循編碼規(guī)范有如下優(yōu)勢。?開發(fā)人員可以了解任何代碼,理清程序的狀況。?提高代碼的可讀性,有利于相關設計人員的交流。?有助于程序的維護,降低軟件成本。?有利于團隊管理,實現(xiàn)團隊資源的可重用。01PHP基本語法02編碼規(guī)范①縮進。使用制表符(Tab鍵)縮進,縮進單位為4個空格。②“{}”,有兩種放置規(guī)則。一種是將“{}”放到關鍵字的下方,與關鍵字同列。另一種是將“{”與關鍵詞同行,“}”與關鍵字同列。③關鍵字、小括號、函數、運算符。不要把“()”與關鍵字緊貼在一起,建議用空格將它們分隔。1.書寫規(guī)范良好的命名規(guī)范是重要的編程習慣,描述性強的名稱讓代碼更加容易閱讀、理解和維護。命名遵循的基本原則是:以標準計算機英文為藍本,杜絕一切拼音或拼音英文混雜的命名方式,建議應用語義化的方式命名。2.命名規(guī)范01PHP基本語法03代碼注釋1C風格的多行注釋(*.*/)運行結果:多行注釋中可以嵌套單行注釋,但不能再嵌套多行注釋。01PHP基本語法03代碼注釋2C++風格的單行注釋(/I)運行結果:上面代碼使用echo輸出語句分別輸出了“使用C++風格的注釋”和“這就是C++風格的;注釋”,但是因為使用注釋符號(/)將第2個輸出語句注釋掉了,所以其不會被程序執(zhí)行。01PHP基本語法03代碼注釋3Shell腳本風格的注釋(#)運行結果:在使用單行注釋時,注釋內容中不要出現(xiàn)“?>”標志,因為解釋器會認為這是PHP腳本,所以會去執(zhí)行“?>”后的代碼。注釋主要是針對代碼的解釋和說明,用來解釋腳本的用途、版權說明、版本號、生成日期、作者、內容等,有助于對程序的閱讀理解。01PHP基本語法04PHP語句及語句塊PHP程序一般由若干條PHP語句構成,每條PHP語句完成某項操作。PHP中每條語句以“;”結束,但PHP結束標記前的PHP語句可以省略結尾的“;”。書寫PHP代碼時,一條PHP語句一般占用一行,但是一行寫多條PHP語句或一條PHP語句占用多行也是合法的(可能導致代碼的可讀性差,不推薦)。如果多條PHP語句之間密不可分,就可以使用“{”和“}”將這些PHP語句包含起來形成語句塊。01PHP基本語法05PHP標識符與關鍵字.在PHP中,同樣需要對程序中各個元素命名加以區(qū)分,這種用來標識變量、函數、類等元素的符號被稱為標識符。PHP規(guī)定,標識符是由字母、數字和下畫線組成的,并且只能是以字母或下畫線開頭的字符集合。在使用標識符時應注意以下3點:①系統(tǒng)已用的關鍵字不得用作標識符;②命名時應遵循見名知義的原則;③雖然關鍵字可作為變量名使用,但容易混淆,不建議使用。1.標識符關鍵字是系統(tǒng)已經定義過的標識符,在程序中已有特定的含義,也稱為保留字,如class關鍵字用于定義一個類,const關鍵字用于定義常量,function關鍵字用于定義一個函數,因此不能再使用關鍵字作為其他名稱的標識符。2.關鍵字02PHP常量02PHP常量變量是指在程序執(zhí)行過程中值可以變化的量,常量是指在程序執(zhí)行過程中值不變的量,例如,圓周率π就可以定義為常量。在PHP中,常量是通過define()函數來定義的。有時,PHP使用常量實現(xiàn)數據在內存中的存儲,使用常量名實現(xiàn)內存數據的按名存取。常量用于存儲不經常改變的數據信息。常量的值被定義后,在程序的整個執(zhí)行期間,這個值都有效,且不可再次對該常量進行賦值。PHP常量分為自定義常量和預定義常量。02PHP常量01聲明和使用常量PHP中常量的命名遵循標識符的命名規(guī)則,默認大小寫敏感,習慣上常量名稱總是使用大寫字母表示。PHP提供了兩種定義常量的方式:define()函數和const關鍵字。常量在使用前必須被定義。define()函數用于定義常量。注意:函數中用“[]”括起來的參數表示“可選”(不是必選的)。1.使用define()函數聲明自定義常量02PHP常量01聲明和使用常量const關鍵字在定義常量時,只需在其后跟上一個常量名稱,并使用“=”進行賦值,如constPI=3.14,這樣就定義了一個常量PI。雖然define()函數和const關鍵字都可以定義常量,但是二者有以下區(qū)別。①const關鍵字定義的常量大小寫敏感;define()函數可以通過第三個參數指定是否區(qū)分大小寫,true表示大小寫不敏感,默認為false。②const關鍵字不能在函數、循環(huán)和if條件語句中定義,define()函數可以。③const關鍵字可以在類中定義,define()函數不可以。2.const關鍵字02PHP常量01聲明和使用常量獲取常量的方法有兩種:一種是直接使用常量名獲取對應的值;另一種是使用constant()函數獲取對應的值,但函數可以動態(tài)地輸出不同的常量,在使用上要靈活、方便很多。3.使用constant()函數獲取常量的值defined()函數的語法如下:其中,參數constant_name為要判斷常量的名稱,若已經被定義,則返回true,,否則返回false。4.使用defined()函數判斷常量是否已經被定義02PHP常量02預定義常量內存中專門為常量的存儲分配了一個空間:常量存儲區(qū),是一塊比較特殊的存儲空間,位于該存儲空間的常量是全局的,且在程序運行期間不能修改和銷毀。預定義常量是指系統(tǒng)中已定義的常量,可以在程序中直接使用,PHP提供了很多預定義常量,可以獲取PHP中的信息,但不能任意更改這些常量的值。注意:_FILE_和LINE_中的“”是兩條下畫線,而不是一條“”。表中以E_開頭的預定義常量是PHP的錯誤調試部分。如果需詳細了解,可參考error_reporting()函數的使用。03PHP變量03PHP變量在PHP中,若要存儲數據,就需要用到變量。變量是可以隨時改變的量,主要用于存儲臨時數據,是編碼程序中尤為重要的一部分。在PHP中,變量是由“$”和變量名組成的,變量的命名規(guī)則與標識符的命名規(guī)則相同。需要注意的是,變量名是區(qū)分大小寫的,如$Num與$num是兩個不同的變量。在定義變量時,通常要為其賦值,所以在定義變量的同時,系統(tǒng)會自動為該變量分配一個存儲空間來存儲變量的值。03PHP變量01聲明變量1.變量的定義在PHP中,定義變量的語法格式如下:2.變量的命名規(guī)則在PHP中,變量的命名規(guī)則如下。①PHP中的變量名是區(qū)分大小寫的。②變量名前必須加“$”。③變量名可以以下畫線開頭。④變量名不能以數字字符開頭。⑤變量名可以包含一些擴展字符(如重音拉丁字母),但不能包含非法擴展字符(如漢字字符和漢字字母)。03PHP變量02變量賦值直接賦值直接賦值就是使用“=”直接將值賦給某變量。直接賦值就是使用“=”直接將值賦給某變量。傳值賦值傳值賦值就是使用“=”將一個變量的值賦給另一個變量。引用賦值引用賦值相當于給變量命名了一個別名,表示新變量引用原變量,如果一個變量改變,另一個變量也會隨之改變。這好比一個人有大名與小名之分,但都指同一個人。01020303PHP變量03可變變量前面使用變量時,變量名是不可以更改的。如果想動態(tài)地設置和使用變量名,就需要使用可變變量,一個可變變量使用一個普通變量的值作為其變量名,因此可變變量是一種獨特的變量,這種變量的名稱是由另一個變量的值來確定的,聲明可變變量的方法是在變量名稱前加兩個“$”。聲明可變變量的語法格式如下:03PHP變量04變量或常量數據類型查看函數gettype()函數的語法格式如下:gettype()函數需要變量名(帶“$”)或常量名作為參數,返回變量或常量的數據類型,這些數據類型包括integer、double、string、array、object、unknowntype等。1.gettype()函數var__dump()函數的語法格式如下:var_dump()函數需要傳遞一個變量名(帶“$")或常量名作為參數,可以得到變量或常量的數據類型及其對應的值,并將這些信息輸出。2.var_dump()函數04PHP數據類型04PHP數據類型計算機操作的對象是數據,而每個數據都有其類型,具備相同類型的數據才可以彼此操作。PHP與傳統(tǒng)高級語言的相同之處如下。①PHP使用變量或常量實現(xiàn)數據在內存中的存儲,并使用變量名(如userName)或常量名(如PI)實現(xiàn)內存數據的按名存取。②PHP使用“=”(賦值運算符)給變量賦值。③PHP不允許直接訪問一個未經初始化的變量,否則預處理器會提示Notice信息。④PHP提供變量作用域的概念實現(xiàn)內存數據的安全訪問控制。⑤PHP引入了數據類型的概念修飾和管理數據。PHP與傳統(tǒng)高級語言的不同之處如下。①PHP的變量名前要加“$”標識,如$userName變量。②PHP是一種“弱類型的語言”,聲明變量或常量時,不需要事先聲明變量或常量的數據類型,會自動由預處理器根據變量的值將變量轉換成適當的數據類型。04PHP數據類型PHP數據類型可以分為4種:標量數據類型、復合數據類型、特殊數據類型和偽類型,如圖2-1所示。其中,標量數據類型有4種:布爾型、整型、浮點型和字符串型;復合數據類型有2種:數組和對象;特殊數據類型有2種:資源數據類型和空數據類型;偽類型通常在函數的定義中使用。04PHP數據類型01標量數據類型標量數據類型是數據結構中最基本的單元,只能存儲一個數據。PHP中的標量數據類型包括4種。布爾型(boolean)是PHP常用的數據類型之一,通常用于邏輯判斷,僅有真值(TRUE)或假值(FALSE),這兩個值不區(qū)分大小寫。布爾型數據的用法如下:1.布爾型04PHP數據類型01標量數據類型字符串型string是連續(xù)的字符序列,由數字、字母和符號組成。字符串中的每個字符只占用1字節(jié)。字符包含以下類型:數字類型,如1、2、3等;字母類型,如a、b、c、d等;特殊字符,如#、$、%、^、&等;轉義字符,如\n(換行符)、\r(回車符)、\t(水平制表符)等。PHP提供了4種表示字符串的方式,分別為單引號、雙引號、heredoc語法結構和nowdoc語法結構。heredoc與nowdoc語法結構的區(qū)別在于開始標識符名稱,前者沒有引號,后者必須用“’”進行包裹。2.字符串型04PHP數據類型01標量數據類型整型integer表示存儲的數據是整數,整型數據類型只能包含整數,不包含有小數點的實數。整型數據可以用十進制數、八進制數和十六進制數來表示,并且在前面加上“+”或“_”表示正整數或負整數。如果用二進制數表示,數字前必須加上0b或0B;如果用八進制數表示,數字前必須加0;如果用十六進制數表示,數字前必須加0x或者0X。二進制數由0、1組成,逢2進1;八進制數由0~7的數字序列組成,逄8進1;十六進制數由0~9的數字和A~F的字母序列組成,逄16進1。注意,整型數值有最大的取值范圍,其范圍與平臺有關。通過常量PHP_INT_MAX可以獲取當前環(huán)境的整型最大值。3.整型04PHP數據類型01標量數據類型浮點型float表示存儲的數據是實數,其取值范圍也與平臺有關。浮點型可以用來存儲整數,也可以存儲小數。float類型提供的精度比整數大得多。在PHP4.0以前的版本中,浮點型的標識為double,又稱為雙精度浮點數。浮點型數據默認有兩種書寫格式。一種是標準格式:另一種是科學記數法格式:4.浮點型04PHP數據類型02復合數據類型1數組數組是一組類型相同數據的集合,把一系列數據組織起來,形成一個可操作的整體。數組中可以包括很多數據,如標量數據、數組、對象、資源及PHP支持的其他語法結構等。數組中的每個數據稱為一個元素,每個元素都有一個唯一的編號,稱為索引。元素的索引只能由數字或字符串組成。元素的值可以是多種數據類型。PHP的數組有兩種形式,即索引數組和關聯(lián)數組。①索引數組:用整數作為下標,默認從0開始,后面依次加1。②關聯(lián)數組:用字符串作為下標,通過“=>”符號將下標與值關聯(lián)。04PHP數據類型02復合數據類型對象客觀世界中的一個事物就是一個對象,每個客觀事物都有自已的特征和行為。從程序設計的角度,事物的特征就是數據,又稱為成員變量;事物的行為就是方法,又稱為成員方法。面向對象的程序設計方法就是利用客觀事物的特點,將客觀事物抽象為“類”,而類是對象的“模版”。對象是類的實例,可以使用new命令創(chuàng)建對象。代碼通過使用new關鍵字實例化一個$movie對象,然后通過如下方式訪問該對象的成員變量和成員方法。①訪問成員變量的方法對象->成員變量,如$movie->name。②訪問成員方法的方法:對象->成員方法,如Smovie->getName()。③其他有關面向對象的技術可以參考本書后面的內容。204PHP數據類型03特殊數據類型資源資源是一種特殊的變量類型,又稱為句柄,由專門的函數建立和使用。資源是一種特殊的數據類型,由程序員分配,其操作方式有創(chuàng)建、使用和釋放。在使用資源時,要及時釋放不需要的資源。如果程序員忘記釋放資源,系統(tǒng)自動啟用垃圾回收機制,避免內存消耗殆盡。空值空值,顧名思義,表示沒有為該變量設置任何值,另外,空值不區(qū)分大小寫,null和NULL的效果是一樣的。被賦予空值的情況有三種:沒有賦任何值、被賦值為null.使用unset()函數處理過的變量。010204PHP數據類型04偽類型PHP引入了4種偽類型,用于指定一個函數的參數或返回類型。①mixed混合類型:說明一個參數可以接收不同類型,但并不是可以接收所有類型。②number數字類型:可以接收integer整型和float浮點型。③callack回調類型。④void:說明函數沒有參數或返回值。注意:偽類型不能作為變量的數據類型,使用偽類型主要為了確保函數的易讀性。04PHP數據類型05數據類型轉換1.自動類型轉換所謂自動類型轉換,是指當運算需要或與期望的結果類型不匹配時,將自動進行類型轉換,無須人工操作。在程序開發(fā)過程中,最常見的自動類型轉換有3種,分別為布爾型、整型和字符串型。各類型自動進行轉換時需要注意以下幾點。①當其他類型需要轉換為布爾型時,整型0、浮點型0.0、字符串型""(空字符串)與“0”、不包含任何元素的數組、不包含任何成員變量的對象、NULL都會被轉換為false,其他值被轉換為true。②當布爾型轉換為整型時,true被轉換為整數1,false被轉換為整數0。③若字符串是數字序列的字符,則轉換為該數字,否則出現(xiàn)警告。④當布爾型轉換為字符串型時,true轉換為“1”,false轉換為"。⑤整型或浮點型數據的字面樣式可以轉換為字符串形式。04PHP數據類型05數據類型轉換2.強制類型轉換強制類型轉換是使用者手動將某數據類型轉換成目標數據類型,其中非常簡單的方法是在需要轉換的變量前加上用“()”括起來的目標類型。在進行類型轉換的過程中應該注意以下幾點。①轉換成布爾型。null.0和未賦值的變量或數組被轉換為false,
其他值被轉換為true。②轉換成整型。04PHP數據類型06PHP數據的輸出1print語句和echo語句print語句與echo語句的功能幾乎一樣,都是用于向頁面輸出字符串。二者的區(qū)別在于,echo語句可以同時輸出多個值(多個值之間使用“,”隔開即可),而print語句一次只能輸出一個值。其他區(qū)別如下:①在echo語句前不能使用錯誤抑制符“@”。②print語句也可以被看作一個有返回值的函數,此時只能作為表達式的一部分,而echo語句不能。③echo語句沒有返回值,print語句的返回值為1。④echo語句輸出的速度比print語句輸出的速度快。04PHP數據類型06PHP數據的輸出2輸出運算符<?=?>如果HTML代碼塊中只嵌入一條PHP語句,且該PHP語句是一條輸出語句,此時使用echo語句或print語句輸出字符串不但麻煩,而且會降低程序的易讀性。PHP提供了輸出運算符用于輸出字符串數據。3print_r()函數復合數據類型的數據輸出經常使用print__r()函數,輸出數組中的元素或對象中的成員變量將按照“鍵”=>“值”對或“成員變量名”=>“值”的方式輸出。4var_dump()函數輸出每個表達式的類型和值var_dump()函數不僅可以打印一個或多個任意類型的數據,還可以獲取數據的類型和:元素個數。05
PHP運算符05PHP運算符運算符(也稱為操作符)是用來對數據進行操作的符號,操作的數據被稱為操作數。運算符根據操作數的個數可分為一元運算符、二元運算符、三元運算符。根據功能,PHP運算符可分為算術運算符、字符串運算符、賦值運算符、位運算符、自加運算符或自減運算符等。05PHP運算符01算術運算符算術運算符主要用于處理算術運算操作,常用的算術運算符及其作用如表所示。在使用算術運算符時,需要注意以下幾點。①當有多種運算符參與運算時,先算乘除,后算加減。②當有浮點型數據參與前四種運算時,運算結果的數據類型為浮點型。③當進行取余數運算時,運算結果的正負取決于被除數的正負,即在算術運算符中使用“%”取余數,如果被除數($a)是負數,那么取得的結果也是一個負數。05PHP運算符02字符串運算符字符串運算符主要用于處理字符串的相關操作,在PHP中,字符串運算符只有一個,就是“”,用于將兩個字符串連接起來,形成一個新的字符串。例如:此運算符在前面的例子中已經使用,如使用字符串運算符將$c+$b的值與字符串<br>連接,在輸出$c+$b的值后執(zhí)行換行操作。注意,當連接的變量或值是布爾型、整型、浮點型或NULL時會自動轉換成字符串型。05PHP運算符03賦值運算符賦值運算符主要用于處理表達式的賦值操作,它的作用就是將右邊的常量、變量或表達式的值賦給左邊的變量。PHP提供了很多賦值運算符,其用法及意義如表所示。表中“=”是賦值運算符,而非數學意義上的相等的關系,一條賦值語句可以對多個變量進行賦值,如$a=$b=$c=6。05PHP運算符04自加或自減運算符自加運算符++使其操作數遞增1,自減運算符--使其操作數遞減1。自加和自減運算符可以在變量的前面,也可以在變量的后面,在變量前面的稱為前置,在變量后面的稱為后置。自加和自減運算符與算術運算符類似,都是對數值型數據進行操作。但算術運算符適合在兩個或兩個以上不同操作數的場合使用,當只有一個操作數時,就可以使用“++”或運算符。在使用運算符時需要注意以下4點。①自加和自減運算符只針對純數字或字母(a~z和A~Z)。②對于值為字母的變量,只能自加,不能自減(如$X值為a,則++$X結果為b)。③當操作數為布爾型數據時,自加或自減操作對其值不產生影響。④當操作數為NULL時,自加的結果為1,自減不受影響。05PHP運算符05邏輯運算符邏輯運算符對布爾型的數據進行操作,返回布爾型結果,是程序設計中一組非常重要的運算符,如表所示。雖然邏輯運算符只能操作布爾型數據,但很少直接操作布爾型數據,通常都是使用比較運算符返回的結果作為邏輯運算符的操作數。此外,邏輯運算符經常出現(xiàn)在條件語句和循環(huán)語句中。05PHP運算符06比較運算符比較運算符是對變量或表達式的結果進行比較,主要用于比較兩個數據的值,返回值為一個布爾類型(若比較結果為真,則返回true,否則返回false);
如表所示。05PHP運算符06比較運算符雖然比較運算符的使用方法很簡單,但是在實際開發(fā)中還需要注意以下兩點。①兩個數據類型不相同的數據進行比較時,PHP會自動將其轉換成數據類型相同的數據后再進行比較,例如,3與3.14進行比較時,先將3轉換成浮點型3.0,再與3.14進行比較。②運算符“===”與“!==”在進行比較時,不僅要比較數值是否相等,還要比較其數據類型是否相等。而“==”和“!=”運算符在進行比較時,只比較其數值是否相等。05PHP運算符07條件運算符條件運算符,又稱為三元運算符,作用于三個操作數之間,可以提供簡單的邏輯判斷,語法格式如下:若表達式1的值為true,則執(zhí)行表達式2,否則執(zhí)行表達式3。05PHP運算符08NULL合并運算符NULL合并運算符是PHP7新增的運算符,用于簡單的數據存在性判斷,其語法格式如下:先求條件表達式的值是否存在,若存在,則返回
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司沙漠活動方案
- 公司聚會端午節(jié)活動方案
- 公司茶花會策劃方案
- 公司荔枝活動方案
- 公司滑雪團建活動方案
- 公司流量策劃方案
- 公司環(huán)保團建活動方案
- 公司春季海邊活動方案
- 公司聚會場地策劃方案
- 公司春節(jié)放假策劃方案
- 小學生匯報講課件
- 2025浙江嘉興市海寧市嘉睿人力招聘5人筆試參考題庫附帶答案詳解析版
- 2025年安徽蚌埠市龍子湖區(qū)東方人力資源有限公司招聘筆試參考題庫含答案解析
- 2025至2030中國云計算行業(yè)產業(yè)運行態(tài)勢及投資規(guī)劃深度研究報告
- 黨課課件含講稿:《關于加強黨的作風建設論述摘編》輔導報告
- GB/T 19023-2025質量管理體系成文信息指南
- 2025中考歷史高頻點速記大全
- 2025年特種設備作業(yè)人員氣瓶充裝P證考試題庫
- 《智能駕駛輔助系統(tǒng)ADAS》課件
- 2024年自然資源部所屬單位招聘筆試真題
- 江西吉安市吉水縣吉瑞招商運營有限公司招聘筆試題庫2025
評論
0/150
提交評論