日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > php >内容正文

php

php basic syntax

發(fā)布時(shí)間:2024/4/14 php 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php basic syntax 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

php basic syntax

? ??? ? PHP(Hypertext Preprocessor,超文本預(yù)處理器)。


一、PHP入門

1、指令分隔符“分號(hào)”
語義分為兩種:一種是在程序中使用結(jié)構(gòu)定義語句,例如流程控制、函數(shù)定義、類的定義等,用來定義程序結(jié)構(gòu)使用的語句。在結(jié)構(gòu)語句后面不能使用分號(hào)作為結(jié)束;
另一種是在程序中使用功能執(zhí)行語句,例如變量的聲明、內(nèi)容的輸出、函數(shù)的調(diào)用等,是用來在程序中執(zhí)行某些特定功能的語句,這種語句也可以成為指令,php需要在每個(gè)指令后用分號(hào)結(jié)束。
2、程序注釋
php注釋的三種形式: 以“/*”和“*/”閉合多行注釋符, “//”和"#"開始的單行注釋符
3、在程序中使用空白的處理
下列情況應(yīng)該總是使用兩個(gè)空行:
一個(gè)源文件的兩個(gè)代碼片段之間。 兩個(gè)類的聲明之間。
下列情況應(yīng)該總是使用一個(gè)空行:
兩個(gè)函數(shù)聲明之間。 函數(shù)內(nèi)的局部變量和函數(shù)的第一條語句之間。 塊注釋或單行注釋之前。 一個(gè)函數(shù)內(nèi)的兩個(gè)邏輯代碼段之間,用以提高可讀性。
空格的應(yīng)用規(guī)則:
一般用于關(guān)鍵字和括號(hào)之間,函數(shù)名與左括號(hào)間不應(yīng)使用空格。 一般函數(shù)的參數(shù)列表中的逗號(hào)后面添加空格。 數(shù)學(xué)算式的操作數(shù)與運(yùn)算符之間應(yīng)該添加空格(二進(jìn)制元算與醫(yī)院元算除外)。 for語句中表達(dá)式應(yīng)該用逗號(hào)分開,后面添加空格。

二、變量

第一次賦值,就創(chuàng)建了變量。必須使用"$"后跟變量名表示。再次給該變量賦值會(huì)覆蓋之前的變量。 php變量聲明以后有一定的范圍,變量的范圍即它定義的上下文背景(也就是它生效范圍)。大部分的php變量如果不是在函數(shù)里面聲明的,只有在聲明處到文件結(jié)束的一個(gè)單獨(dú)范圍內(nèi)使用。這個(gè)單獨(dú)的范圍跨度不僅是<?php ?標(biāo)記開始處到?>結(jié)束標(biāo)記處使用,可以在一個(gè)頁面的所有開啟的PHP模式下使用,也包含了include和require引入的文件。如果使用COOKIE或SESSION還可以在多個(gè)頁面中應(yīng)用。 在變量的使用范圍周期內(nèi),我們可以借助unset()函數(shù)釋放指定的變量,使用isset()函數(shù)檢測變量是否設(shè)置和使用empty()函數(shù)檢測一個(gè)變臉是否為空。
empty()與isset()的區(qū)別: 如果empty()函數(shù)的參數(shù)是非空或非零的值,則empty()返回false。""、0、“0”、null、false、array()、var $var、以及沒有任何屬性的對(duì)象都將被認(rèn)為是空的。如果參數(shù)為空,則返回true。 如果函數(shù)isset()參數(shù)存在,則返回true。若使用isset()檢測一個(gè)被設(shè)置成null的變量或使用unset()釋放了一個(gè)變量,都將返回false。 注意:字節(jié)NULL("\0")并不等同于null常數(shù)。 建議:使用!empty($var)判斷變量存在且不能為空。
1、變量的命名
變量名區(qū)分大小寫。但內(nèi)置結(jié)構(gòu)和關(guān)鍵字以及用戶自定義的類名和函數(shù)名都是不區(qū)分大小寫的。
駝峰命名法。如:$aaaBBBccc。
2、可變變量
可變變量可使用一個(gè)普通變量的值作為這個(gè)可變變量的變量名。
3、變量的引用賦值
變量總是傳值賦值。也就是說,當(dāng)將一個(gè)表達(dá)式的值賦予一個(gè)變量時(shí),整個(gè)原始表達(dá)式的值被賦值到目標(biāo)變量。改變其中一個(gè)變量的值,將不會(huì)影響到另一個(gè)變量。
引用賦值,將“&”加到變量前。將變量的引用方式復(fù)制給新的變量,指向共同的引用,改變?nèi)魏我粋€(gè)變量的值,都會(huì)影響另一個(gè)變量。只有有名字的變量才可以引用賦值。不會(huì)將引用賦值的兩個(gè)變量在內(nèi)存上同體,只是把各自的值相關(guān)聯(lián)起來,基于這一點(diǎn),unset()不會(huì)導(dǎo)致另一個(gè)變量消失。
4、變量的類型
4種標(biāo)量類型:boolean(布爾型)、integer(整型)、float(浮點(diǎn)型)、string(字符串) 2種復(fù)合類型:array(數(shù)組)、object(對(duì)象) 2種特殊類型:resource(資源)、NULL 如果想看某個(gè)表達(dá)式的值和類型,可以使用函數(shù)var_dump()。 布爾類型 以下值被認(rèn)為是false 1)布爾值false。 2)整型值0(零)為假,-1和其他非零值(不論正負(fù))一樣,被認(rèn)為是true。 3)浮點(diǎn)型值0.0(零)。 4)空白字符串和字符串“0” 5)沒有成員變量的數(shù)組。 6)特殊類型NULL 整型 有最大范圍2 147 483 647 。PHP不支持無符號(hào)整數(shù),如果給定的數(shù)超出最大范圍,將會(huì)被解釋為float。 浮點(diǎn)型 永遠(yuǎn)不要比較兩個(gè)浮點(diǎn)數(shù)是否相等。 如果需要更高的精度,應(yīng)該使用任意精度數(shù)學(xué)函數(shù)或gmp()函數(shù)。 字符串 單引號(hào)字符串: 如果要在單引號(hào)中引用單引號(hào),需要使用反斜杠(\)轉(zhuǎn)義。 如果在單引號(hào)之前或字符串結(jié)尾需要出現(xiàn)一個(gè)反斜線,需要用兩個(gè)反斜線表示。 其中出現(xiàn)的變量不會(huì)被變量的值替代。即php不會(huì)解析單引號(hào)中的變量,而是將變量名原樣輸出。定義簡單字符串時(shí),單引號(hào)字符串效率更高。 雙引號(hào)字符串:其中的變量會(huì)被解析。 定界符字符串: 使用定界符<<<開始,之后提供一個(gè)標(biāo)識(shí)符,然后是包含的字符串,最后是同樣頂格書寫的標(biāo)識(shí)符。 定界符文本處理不能初始化類成員以外,表現(xiàn)的就和雙引號(hào)字符串一樣,只是沒有雙引號(hào)。這意味著在定界符文本中不需要轉(zhuǎn)義引號(hào),不過仍然可以用以上列出來的在雙引號(hào)中可以使用的轉(zhuǎn)義符號(hào)。而且定界符中的變量也會(huì)被解析,但當(dāng)在定界符文本中表達(dá)復(fù)雜變量時(shí)和字符串一樣同樣也需要注意。所以能夠很容易地使用定界符定義較長的字符串,通常用于從文本或者數(shù)據(jù)庫中打斷地輸出文檔。 數(shù)組(Array) 使用print_r()函數(shù)查看數(shù)組中的全部內(nèi)容。 對(duì)象(Object)
1 2 3 4 5 6 7 8 9 10 11 <?php ????class?Person{ ????????var?$name; ????????function?say(){ ????????????echo?"Doing foo"; ????????} ????} ????$p=new?Person(); ????$p->name="staven"; ????$p->say(); ?>
->:表示對(duì)象屬性、方法的引用 資源類型(Resource) NULL類型 特殊的NULL值表示一個(gè)變量沒有值,NULL類型唯一可能的值就是NULL。NULL不表示空格,也不表示零,也不是空字符串,而是表示一個(gè)變量的值為空。NULL不區(qū)分大小寫,在下列情況下一個(gè)變量被認(rèn)為是NULL。 a)將變量直接賦值為NULL。 b)聲明的變量尚未被賦值。 c)被unset()函數(shù)銷毀的變量。
偽類型
mixed:說明一個(gè)參數(shù)可以接受多種不同的(但并不必須是所有的)類型。例如getype()可以接受所有的php類型,str_replace()可以接受字符串和數(shù)組。 number:說明一個(gè)參數(shù)可以是integer或者float。 callback:有些諸如call_user_function()或usort()的函數(shù)接受用戶自定義的函數(shù)作為一個(gè)參數(shù)。callback函數(shù)不僅可以是一個(gè)簡單的函數(shù),他還可以是一個(gè)對(duì)象的方法,包括靜態(tài)類的方法。一個(gè)php函數(shù)用函數(shù)名字符串來傳遞。可以傳遞任何內(nèi)置的或者用戶自定義的函數(shù),除了array(),echo(),empty(),eval(),exit(),isset(),list(),print()和unset()。
數(shù)據(jù)類型之間相互轉(zhuǎn)換
自動(dòng)轉(zhuǎn)換通常發(fā)生在不同數(shù)據(jù)類型的變量混合運(yùn)算時(shí),若參加元算量的類型不同,則顯轉(zhuǎn)換成同一類型,然后在進(jìn)行運(yùn)算。通常只有四種標(biāo)量類型(integer、float、string、boolean)才使用自動(dòng)類型轉(zhuǎn)換。這并沒有改變這些運(yùn)算書本身的類型,改變的近視這些運(yùn)算數(shù)如何被求值。自動(dòng)類型轉(zhuǎn)換雖然石油系統(tǒng)自動(dòng)完成的,但在混合運(yùn)算時(shí),自動(dòng)轉(zhuǎn)換要遵循轉(zhuǎn)換按數(shù)據(jù)長度增加的方向進(jìn)行,以保證精度不降低。 有布爾型值參與運(yùn)算時(shí),true將轉(zhuǎn)化為整型1,flase將轉(zhuǎn)化為整型0后再參與運(yùn)算。 有NULL值參與運(yùn)算時(shí),NULL值轉(zhuǎn)化為整型0在進(jìn)行運(yùn)算。 有integer型和float型參與運(yùn)算時(shí),先把integer型變量轉(zhuǎn)換成float類型后在進(jìn)行運(yùn)算。 有字符串和數(shù)字型(integer、float)數(shù)據(jù)參與運(yùn)算時(shí),字符串先轉(zhuǎn)換為數(shù)字,在參與運(yùn)算。轉(zhuǎn)化后的數(shù)字是從字符串開始的數(shù)值字符串,如果在字符串開始的數(shù)值型字符串不帶小數(shù)點(diǎn)則轉(zhuǎn)換為integer類型數(shù)字。如果帶有小數(shù)點(diǎn)則轉(zhuǎn)換為float類型數(shù)字。 強(qiáng)制類型轉(zhuǎn)換 再要轉(zhuǎn)換的變量之前加上用括號(hào)括起來的目標(biāo)類型,也可以使用具體的轉(zhuǎn)換函數(shù),即intval()、floatval()、strval()或者用setType()函數(shù)轉(zhuǎn)換類型。 intval()floatval()strval()強(qiáng)制類型轉(zhuǎn)換沒有改變變量本身的類型,而是通過轉(zhuǎn)換將得到的新類型的數(shù)據(jù)賦值給新的變量,原變量的類型和值不變。如果需要改變自身的類型與值,可以使用setType()函數(shù)來設(shè)置變量的類型。 變量類型的測試函數(shù) is_bool():判斷是否是布爾型。 is_int()、is_integer()和is_long():判斷是否是整型。 is_float()、is_double()和is_real():判斷是否是浮點(diǎn)數(shù)。 is_string():判斷是否是字符串。 is_array():判斷是否是數(shù)組。 is_object():判斷是否是對(duì)象。 is_resource():判斷是否是資源類型。 is_null():判斷是否為空。 is_scalar():判斷是否是標(biāo)量,也就是一個(gè)整數(shù)、浮點(diǎn)數(shù)、布爾型或字符串。 is_numberic():判斷是否是任何類型的數(shù)字或數(shù)字字符串。 is_callable():判斷是否是有效的函數(shù)名。

三、常量

常量只能包含四種標(biāo)量數(shù)據(jù)。
常量的定義
  • define(string?namemixed value[,bool?case_insensitive]);
  • 第一個(gè)參數(shù)為常量名,第二個(gè)參數(shù)為常量的值或表達(dá)式,第三個(gè)參數(shù)是可選的,如果把case_insensitive設(shè)為true,則常數(shù)將會(huì)定義成不區(qū)分大小寫。如果只想檢測是否定義了某常量,用defined()函數(shù)。
    預(yù)定義常量

    循環(huán)語句

    break
    在循環(huán)語句中中斷循環(huán)語句,也就是結(jié)束循環(huán)語句的執(zhí)行。 break語句可以將深埋在嵌套循環(huán)中的語句退出指定層數(shù)或直接退出最外層,break是接受一個(gè)可選的數(shù)字參數(shù)來決定跳出幾重語句。break可以跳出幾重循環(huán)語句或是幾重switch語句。
    continue
    continue 語句只能使用在循環(huán)語句內(nèi)部,功能是跳過該次循環(huán),繼續(xù)執(zhí)行下一次循環(huán)結(jié)構(gòu)。在while和do-while語句中continue語句跳轉(zhuǎn)到循環(huán)條件處開始繼續(xù)執(zhí)行,對(duì)于for循環(huán)隨后的動(dòng)作是變量更新。. 接受一個(gè)可選數(shù)字參數(shù)來決定條出多重語句。 在循環(huán)中遇到continue語句后,就不會(huì)執(zhí)行該循環(huán)中位于是continue后的任何語句。 continue語句用于結(jié)束循環(huán),繼續(xù)下一次循環(huán)。
    exit
    當(dāng)前腳本只要執(zhí)行到exit語句,而不管它在那個(gè)結(jié)構(gòu)中都會(huì)直接退出當(dāng)前腳本。exit()是一個(gè)函數(shù),die()函數(shù)就是exit()函數(shù)的別名,可以帶有一個(gè)參數(shù)輸出一條信息,并退出當(dāng)前腳本。 函數(shù)

    ?

    總結(jié)

    以上是生活随笔為你收集整理的php basic syntax的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。