簡介php
---------html
PHP(超文本預處器)是一種通用開源腳本語言。語法吸取了C語言、Java和Perl的特色,利於學習,使用普遍,主要適用於Web開發領域。PHP 獨特的語法混合了C、Java、Perl以及PHP自創的語法。它能夠比CGI或者Perl更快速地執行動態網頁。用PHP作出的動態頁面與其餘的編程語言相比,PHP是將程序嵌入到HTML(標準通用標記語言下的一個應用)文檔中去執行,執行效率比徹底生成HTML標記的CGI要高許多;PHP還能夠執行編譯後代碼,編譯能夠達到加密和優化代碼運行,使代碼運行更快。mysql
廢話很少說↓↓↓↓↓↓↓程序員
1、靜態網站&動態網站sql
一、靜態網站:純html頁面,頁面內容是固定不變的,沒有與後臺進行交互,沒有數據庫的支持;
二、動態網頁:頁面的內容會根據後臺交互的狀況顯示不一樣的內容,須要與後臺服務器交互,須要數據庫的支持。數據庫
2、支持動態網站的語言
Java---JSP
PHP----PHP
asp----asp編程
3、常見的服務器
Apache:Apache公司旗下服務器,用於解析PHP類網站。端口號:80
Tomcat:Apache公司旗下的另外一款服務器,用於解析JSP類的網站。端口號:8080windows
Http協議的默認端口號是80,因此使用Apache服務器時無需輸入端口,
能夠直接使用本地IP:127.0.0.1或 localhost數組
4、常見的數據庫
mysql,Access,Oracle,SQLServer……瀏覽器
MySql是一款開源免費的數據庫軟件,數據存儲量上要低於Oracle,可是執行效率上要高於Oracle。
PHP系統一般配合MySql使用,可是PHP也支持連接幾乎全部的主流瀏覽器。
5、B/S C/S
B/S:瀏覽器/服務器結構。用戶只須要經過瀏覽器便可訪問的網站。大部分操做功能集中在後臺服務器。
C/S:客戶端/服務器結構。用戶須要安裝客戶端使用的程序。客戶端能夠分擔必定的操做功能。
6、常見的開發PHP集成環境
安裝一個軟件,內置多種開發須要的軟件或語言環境
Wamp:windows+Apache+mysql+PHP
Lamp:Linux+Apache+mysql+PHP
PHPStudy:
APPServer:
>>>PHP開發首選Linux系統,可是PHP可以友好的兼容各類操做系統。
(Windows,Linux,Unix,MacOS……)
PHP入門基礎
**PHP中"+"只有運算功能,沒有鏈接功能。鏈接功能用"."鏈接
**關鍵詞:PHP標記的種類、PHP中的指令分隔符、PHP中的變量、PHP中算false的狀況、PHP中字符串的聲明、PHP中的僞類型、PHP中的數據類型轉換、PHP中判斷類型、PHP中的輸出語句、PHP中的常量
1、PHP標記的種類
PHP文件默認的語言依然是HTML代碼,若是要在PHP文件中使用PHP語法,則必需要將PHP代碼放到PHP語言標記中,PHP支持的語言標記有四種:
① <?php?> 這是PHP官方的寫法,也是咱們主要採用的寫法!
>>> 注 :若是頁面中,是純PHP代碼,則推薦省略結尾的寫法"?>";
緣由:若是保留結束符,則在導入PHP文件時,會將文件最後多餘的換行符都導入進來;
② <script language="php"></script> 長標記風格。這種寫法,老是被支持,可是咱們不推薦使用。
③ <? ?> 短標記風格,默認不開啓,須要修改php.ini文件中的"short_open_tag=on"才能使用。可是,這種寫法與XML文件衝突,不推薦使用。
④ <% %> asp風格,默認不開啓,須要修改php.ini文件中的"asp_tags=on"才能使用。可是,這種寫法與asp文件、jsp文件都衝突,不推薦使用。
2、PHP中的指令分隔符
一、PHP中的「結構定義語句」(分支,循環,類,函數等{}結尾),不須要使用分號結尾。
二、PHP中的「功能執行語句」,不用{}結尾的,必須使用分號結尾。
三、特例:最後結束標籤?>前的最後一條語句,能夠省略分號。
3、PHP中的變量
一、PHP中的變量,聲明與使用,必須用$開頭。
二、PHP是一種弱類型語言!變量無需聲明,直接給變量賦值便可,而且能夠在後續賦值過程當中隨時修改變量的數據類型;
三、PHP中可使用連等同時聲明多個變量,而不能使用逗號分隔;eg:$a=$b=$c=10;
四、經常使用變量函數:
unset();刪除並釋放變量;
isset();檢驗變量是否設置;
empty();檢驗變量是否爲空(未設置或值爲null都算空);
五、變量的命名:只能由數字,字母,下劃線組成,開頭不能是數字。並且,PHP中變量區分大小寫!$name $Name $NAME 都是不一樣變量!可是,PHP內置函數或類名不區分大小寫!echo EcHo 都是有效的!
六、PHP中的數據類型有8種:
·4種標量類型:
布爾型:Boolean
整型:Integer
浮點型:Float/Double
字符串:String
·2種複合類型:
數組:Array
對象:Object
·2種特殊類型:
資源:Resource
空:null
七、整型的範圍:-(2^31-1) ~~~ +(2^31-1),超過這個範圍,將自動轉爲浮點型。
4、PHP中的真假換算
一、Boolean類型: false爲假 true爲真
二、Integer類型: 0爲假 非0爲真
三、浮點 類型 : 0.0爲假 非0.非0爲真
四、字符串 類型: ""、"0"爲假 其他全爲真
五、Array類型: 空數組爲假 其餘爲真
六、Object類型: 全爲真。(只有PHP4版本中,空對象爲假)
七、Null類型: 全爲假
八、Resource: 類型 全爲真
5、PHP中字符串的聲明
PHP支持三種方式聲明字符串:
一、' ':
二、" ":
三、<<<(定界符):
$str = <<<s(定界標識符)
// 定界結束符必須定格寫,並且一行中不能有任何其餘內容,包括空格;
// 定界標識符能夠是任何字符,只要保證開始符合結束符一致便可;
s; (定界符結束)
四、三種聲明方式的區別:
①定界符功能,默認與雙引號相同。(可是定界符中能夠放雙引號)
②單引號中,不能解析變量,而雙引號、定界符均可以解析變量。
注:雙引號解析變量時,需注意變量名後需用"hahaha{$num}hahaha" "hahaha${num}hahaha"都可!
③單引號中能夠放雙引號,雙引號中能夠放單引號。可是不能放自身相同類型的引號。
④單引號中不能使用轉義字符(除了單引號''自己,轉義符\自己),雙引號中可使用轉義字符。
6、PHP中的僞類型
僞類型:並非一種真實存在的數據類型。它的存在,僅僅是告訴程序員能夠是哪一種,哪些數據類型,經常使用於撰寫幫助文檔時使用。
mixed:表明參數能夠是多種不一樣數據類型。
Number:表明參數能夠是Integer或者Float。
callback:表明參數能夠是一個回調函數。
7、PHP中的數據類型轉換
一、自動類型轉換:表示運算的時候,Boolean,Null,String等類型,會先自動轉爲Integer或Float類型
null-->0
true-->1
false-->0
String轉非數值字符前的數字,
沒有的話轉爲0 "123a"-->123 "a123"-->0
二、強制類型轉換:根據咱們的須要,強制將變量轉爲其餘類型的變量。
能夠強制轉換的類型以下:
$新變量 = (新類型)$原變量; $str = (String)1;
//新類型的名稱,可使用全拼,也可使用縮寫。Integer/int Boolean/bool都行。
①使用()聲明新類型強轉:
(integer) (int) ---轉換成整型
(boolean) (bool) --- 轉換成布爾型
(float),(double),(real) --- 轉換成浮點型
(string) --- 轉換成字符串
(array) --- 轉換成數組
(object) --- 轉換成對象
②使用setType();函數強轉:
bool setType(mixed var,String type);第一個參數表示任何類型的變量,第二個參數表示字符串類型的數據類型,返回值是Boolean類型,表示轉換是否成功。
以上兩種轉換的區別:
第①種:是將轉換以後的結果,賦給新變量;
第②種:直接修改了原變量的數據類型。
8、PHP中判斷數據類型的經常使用函數
is_bool():判斷是不是布爾型
is_int()、is_integer()和is_long():判斷是否爲整型。
is_float()、is_double()和is_real():判斷是否爲浮點型
is_string():判斷是否爲字符串
is_array():判斷是否爲數組
is_object():判斷是否爲對象
is_resource():判斷是否爲資源類型
is_null():判斷是否爲null
is_scalar():判斷是否爲標量
is_numeric():判斷是不是任何類型的數字和數字字符串
is_callable():判斷是不是有效的函數名
9、PHP中的輸出語句
echo "……";輸出變量的值
var_dump(num);輸出變量的數據類型&值[&一些其餘信息]
print_r(arr);專門用於打印數組
//單行註釋
/*
* 多行註釋
*/
/**
* 文檔註釋
*/
# 腳本註釋
#echo"①形式";
10、PHP中的常量
一、常量的定義:bool define(String 常量名,mixed 常量值[,bool 是否區分大小寫]);
二、常量的注意事項:
①常量定義,只能使用define()函數;
②常量名,原則上要求必須使用大寫聲明。並且必須不能帶$符號($只能是變量);
③常量聲明之後,默認全局範圍有效。沒有做用域之說。
④常量不但不能改,並且不能刪!unset,setType等函數均無效
⑤常量默認區分大小寫!!!可是,能夠在聲明常量時,將define第三個參數設爲true,便可改成不區分大小寫。
⑥常量必須使用define()定義後才能使用。若是使用未聲明常量,則默認轉爲常量字符串。可是,會有警告。
var_dump(NUM);-->String "NUM"
⑦常量的值只能是標量Boolean String Float Integer
三、可使用echo constant("NUM");讀取常量值!注意!!!
可使用get_defined_constants(),獲取全部已定義的常量!!包括系統自定義的N多個常量。