|
1:通常我們所寫(xiě)的PHP程序文件后綴, .php 2:php語(yǔ)言的開(kāi)始標(biāo)記"<?php" ,結(jié)束標(biāo)志'?>' 3: php語(yǔ)句 一個(gè)語(yǔ)句可以理解為讓php解釋器執(zhí)行的一個(gè)命令. 語(yǔ)句必須以";"結(jié)束 用{}包圍起來(lái)作為復(fù)合語(yǔ)句,可以當(dāng)成一個(gè)單元體,要么都執(zhí)行,都跳過(guò). 4:php的注釋 單行注釋 // # 多行注釋 /* 中間寫(xiě)注釋 */ 變量 1:Php是弱語(yǔ)言類型,聲明變量不必聲明變量類型. 2:給一個(gè)變量賦值為字符串等類型的值之后,也可以再次為其賦值為其他類型的值. 3:變量的命名規(guī)則 1 可以用字母、數(shù)字及下劃線的組合,但不能用數(shù)字開(kāi)頭. 2 變量名稱區(qū)分大小寫(xiě) 變量的賦值 1:傳值賦值 傳值賦值是把一個(gè)具體的值"3","5",寫(xiě)入到變量對(duì)應(yīng)的內(nèi)存空間去. 或者是把另外一個(gè)變量的值讀出來(lái),寫(xiě)到被賦值變量的對(duì)應(yīng)內(nèi)存空間去. 2:引用傳值 例: $a = &$b; 既不是$a 指向了$b,也不是說(shuō) $b指向了 $a; 而是指$a,$b 共同指向同一個(gè)內(nèi)存空間. 因此,$a被賦新值,$b受影響, 反之也成立. 但是,$a變量被銷毀, 并不影響 $b的值,反之也成立. 變量的銷毀 unset ( mixed $var [, mixed $var [, $... ]] ) 注意引用傳值的時(shí)候的變量銷毀 動(dòng)態(tài)變量名 $a=”b”; $$a => $b 變量的8種類型 四種標(biāo)量類型 1. 整型(integer) 整型即數(shù)學(xué)里的整數(shù). 給整型變量賦值,直接賦其字面值即可. 例: $num = 56; $socre = 98; 2. 浮點(diǎn)型(float) 浮點(diǎn)型即數(shù)學(xué)里的小數(shù),給浮點(diǎn)型賦值,直接賦其字面值即可. 例: $flo = 121.34; $flo2 = 45.32 3. 字符串型(string) 字符串型的賦值,可以用單引號(hào),或者雙引號(hào). 例: $str1 = 'hello'; 或者 $str2 = '"hello"; (單引號(hào)雙引號(hào)有很大區(qū)別,下面詳述) 4. 布爾型(boolean) 布爾型只有兩種值 true, false ,代表真和假. 例: $boo = true; $boo = false; 兩種復(fù)合型類型 5. 數(shù)組型(array) 6. 對(duì)象型(object) 兩種特殊型類型 7. 資源型(source) 8. NULL型 NULL型代表變量還沒(méi)有被定義或者已被unset.(注意和false的區(qū)別) 此類型只有一個(gè)值, 即 NULL. 變量的檢測(cè) isset ( ) 檢測(cè)變量是否設(shè)置 變量存在返回true,不存在返回false 若使用isset 測(cè)試一個(gè)被設(shè)置null的變量,將返回false empty ( ) 檢測(cè)一個(gè)變量是否為空 “”,0,“0”,null,false,array(),var $a以及沒(méi)有任何屬性的對(duì)象都將認(rèn)為空,返回true 變量類型檢測(cè) gettype ( ), is_array(),is_int(),is_bool(),is_float()…… 字符串類型 字符串變量的值應(yīng)該用" ",或者是’ ’號(hào)包起來(lái). 單引號(hào)與雙引號(hào)的區(qū)別 1:雙引號(hào)里面的變量名稱將會(huì)解析, 而單引號(hào)里面的變量名稱原樣輸出不解析. 2:單引號(hào)的速度更快些,因?yàn)閱我?hào)不必去解析內(nèi)部的變量 2:單引號(hào)支持的轉(zhuǎn)義字符少, 只支持'\',',而雙引號(hào)支持的轉(zhuǎn)義字符多. 也就是說(shuō),單引號(hào)盡量的保持原字符的樣子輸出. 除了單引號(hào)和雙引號(hào)用來(lái)聲明字符串變量,還有heredoc方式(自學(xué))
變量類型的轉(zhuǎn)換 字符串到數(shù)字的轉(zhuǎn)換,(計(jì)算),從左往右截取,碰到不合法的數(shù)值,截取部分轉(zhuǎn)換為數(shù)字 $b="123a"; var_dump($b+5); int(128) 數(shù)字到字符串的轉(zhuǎn)換,(拼接),直接把數(shù)字當(dāng)作字符串 $c=123; Var_dump($c.’a’); string(“123e”) 到布爾型的轉(zhuǎn)換,(比較),以下值都當(dāng)作boolean的false 0,’0’,null,false,array(),’ ’,’0.0’ 常量 常量的命名規(guī)則: 和變量一樣,但習(xí)慣上大寫(xiě). 常量的聲明方式: Define('常量名',常量值); 例: define('PIE',3.14); 常量的引用方式: 直接引用常量名,不加$,不加引號(hào). Echo PIE*5*5, 常量和變量相比,意義何在? 1:常量一旦定義,就不可以重新定義,不可以清除,也不可以修改值 2:常量是全局有效的, 因此在頁(yè)面內(nèi),函數(shù)內(nèi),類內(nèi)部甚至數(shù)組內(nèi)部都可以直接引用. 不用考慮作用域的問(wèn)題. 3:常量的值不能是數(shù)組,對(duì)象,資源類型,(只能是標(biāo)量類型,數(shù)值(整型,浮點(diǎn)),字符,布爾,NULL型) 常量名如何動(dòng)態(tài)? 常量名如果也由一個(gè)變量表示時(shí), 可以用constant函數(shù)來(lái)讀取常量的值. Constant(常量名)-----> 返回常量值; 例: Define('LAODA','劉備'); $who = 'LAODA'; Echo constant($who);; 輸出劉備
PHP的運(yùn)算符 數(shù)學(xué)運(yùn)算符: + - * / %,取模(求余), 注意: %求余的結(jié)果, 正負(fù)數(shù)和被求余的符號(hào)一樣, 即 -3%/x, 無(wú)論x為正負(fù)數(shù),結(jié)果都是負(fù)數(shù). 比較運(yùn)算符 > , < , >= , >= , == , === ,< >(不等號(hào)) 凡運(yùn)算,必有運(yùn)算結(jié)果,比較運(yùn)算的結(jié)果都是boolean型 三元運(yùn)算符 Expr1 ? expr2 : expr3; 邏輯運(yùn)算符 或 && 與 || 非 ! 運(yùn)算符的返回值 Js varc=a||b 短路賦值
For(語(yǔ)句1; 語(yǔ)句2;語(yǔ)句4) { 執(zhí)行體3
}
語(yǔ)句4
執(zhí)行 體 3 跳出!
語(yǔ)句2 語(yǔ)句1 PHP函數(shù) 函數(shù)的執(zhí)行權(quán): 從調(diào)用函數(shù)開(kāi)始, 語(yǔ)句的執(zhí)行權(quán)進(jìn)入到函數(shù)內(nèi)部. 函數(shù)什么時(shí)間交出執(zhí)行權(quán): 當(dāng)函數(shù)結(jié)束的時(shí)候. 當(dāng)函數(shù)執(zhí)行到最后一個(gè)語(yǔ)句,或者是遇到return語(yǔ)句. 函數(shù)的命名規(guī)范: 變量:可以由字母,數(shù)字,下劃線組成,但是不能以數(shù)字開(kāi)頭. 常量:同變量,但,一般大寫(xiě). 函數(shù):和變量一樣. 大小寫(xiě): 變量區(qū)分大小寫(xiě),而函數(shù)不區(qū)分大小寫(xiě), 但是一般推薦在調(diào)用函數(shù)時(shí),和聲明函數(shù)時(shí)保持一致. 函數(shù)的參數(shù)的賦值方式 函數(shù)的賦值方式,類似于變量的賦值,也分傳值賦值, 和引用賦值. 對(duì)于傳值賦值,是指把實(shí)參復(fù)制一份給形參,因此,函數(shù)內(nèi)部對(duì)形參處理后, 并不影響外部傳入的實(shí)參. 而引用賦值,是指,把實(shí)參的地址傳給形參, 因此,本質(zhì)上,函數(shù)內(nèi)部的形參,與外部的實(shí)參,指向一個(gè)內(nèi)存地址. 因此,函數(shù)內(nèi)部對(duì)形參的操作,將會(huì)影響到實(shí)參. PHP里,如何允許以引用傳值形式,調(diào)用函數(shù),配置哪個(gè)選項(xiàng)? allow_call_time_pass_reference 函數(shù)的實(shí)參與形參是如何分配的? Function foo ($arg1,$arg2,$arg3); 當(dāng)調(diào)用的時(shí)候, 不管形參有沒(méi)有默認(rèn)值, Foo(1,2,3,4,5), 實(shí)參按順序依次賦給形參. 如果實(shí)參多于形參的個(gè)數(shù),多余的實(shí)參自動(dòng)拋棄. 但是, 如果按順序分配實(shí)參后, 實(shí)參的數(shù)量小于形參,而沒(méi)得到值的形參,又沒(méi)有聲明默認(rèn)值. 將會(huì)報(bào)錯(cuò). 函數(shù)允許沒(méi)有參數(shù),也允許沒(méi)有返回值. 在PHP里,函數(shù)不能重寫(xiě)定義,會(huì)報(bào)redeclare錯(cuò)誤. 已定義的函數(shù)也不能被清除掉.
PHP函數(shù)內(nèi)部如何訪問(wèn)全局變量? 答:global 關(guān)鍵字 修飾變量名(不推薦). 超級(jí)全局變量有哪幾種? 答:$_GET,$_POST,$_COOKIE,$_SESSION,$_SERVER,$_ENV,$_REQUEST,$_FILES,$GLOBALS $_SERVER: 是服務(wù)器相關(guān)信息 $_EVN是webSEerver傳遞給PHP腳本的一些信息. $_ENV在最新PHP里,默認(rèn)不開(kāi)啟, 即$_ENV數(shù)組為空. 有沒(méi)有辦法獲取ENV的值 答: 用getenv函數(shù). Php 連接mysql 不用PHP操作mysql,而直接用cmd客戶端+命令行來(lái)注冊(cè)用戶: 1: 客戶端連接數(shù)據(jù)庫(kù)服務(wù)器 2: 選擇庫(kù) 3: 做增刪改查查詢. 用PHP操作mysql 1: mysql_connect(host,user,passwd) ,連接數(shù)據(jù)庫(kù). 返回資源類型,或false; 2:mysql_query($sql,$link) , 參數(shù): 等執(zhí)行的sql語(yǔ)句,和連接資源 3: 語(yǔ)句先查詢: use dbName, 選擇庫(kù), 再查詢'set names GBK/utf8'; 4:最后查詢?cè)鰟h改查等操作語(yǔ)句,并根據(jù)返回結(jié)果,提示用戶. PHP收取POST數(shù)據(jù),用$_POST, $_POST是一個(gè)超級(jí)全局變量, 就是說(shuō),在函數(shù)內(nèi)部也可以直接引用. 又,$_POST是一個(gè)數(shù)組,與表單的值有對(duì)應(yīng)關(guān)系 $_POST[key] <===> 表單里 name="key"的值
PHP連接mysql 0:什么是服務(wù)器? 2層含義: a:物理上的,一臺(tái)實(shí)際機(jī)器. B: 能提供某種服務(wù)的進(jìn)程,就稱為服務(wù)器. 比如,apache運(yùn)行, 80端口提供web服務(wù),此時(shí)稱為web服務(wù)器 比如,mysql運(yùn)行,3306提供mysql服務(wù),此時(shí)稱為mysql服務(wù)器或者數(shù)據(jù)庫(kù)服務(wù)器.
建立連接,操作mysql
1: php 怎么樣連接mysql服務(wù)器 Mysql_connect(地址,用戶名,密碼); 返回值: 資源型 什么是資源型? 就是"通道",沿著通道就能獲取資源 PHP如何從mysql讀取數(shù)據(jù) Mysql_fetch_assoc($rs) // $rs是mysql_query的返回資源 PHP面向?qū)ο?/p> 類屬性 , 對(duì)象屬性的關(guān)系圖解 繼承: 基本語(yǔ)法 subClass extends parentClass { } 注:一個(gè)父類能被多個(gè)子類繼承, 但是,一個(gè)子類不能繼承多個(gè)父類. Private,protected,public的權(quán)限區(qū)別 一些補(bǔ)充概念 Global 聲明引用全局變量 Php函數(shù)內(nèi)部引用變量時(shí),默認(rèn)在函數(shù)內(nèi)部找,找不到會(huì)報(bào)一個(gè)Notice $GLOBALS 超級(jí)變局?jǐn)?shù)組 他是頁(yè)面內(nèi)所有全局變量的一個(gè)花名冊(cè),一個(gè)總的引用
信息發(fā)布:廣州名易軟件有限公司 http://m.jetlc.com
|