各位觀眾老爺大家好,歡迎收看內褲總動員之程式猿的IT程式大講堂,今天給大家分享一個小知識點就
是前台和後台互動的那點事PHP
在PHP中有兩個名詞解釋. 也算是說明我們當前APP用戶端和 網頁的區別把.
BS 無需下載的瀏覽
CS 需下載的瀏覽
環境的搭建
在網路上需要下載一個XAMPP軟體.進行安裝. 個人使用的是XAMPP for mac 版本的.
先說一下我們使用PHP都需要了哪些東西.
MYSQL Apache(中介軟體) PHP 這三個, 而我為何推薦大家安裝XAMPP呢,是因為 他已經把我們這三個東西都已經全部封裝了. 只需安裝下一步即可. 如果單個安裝的話對於我們非常複雜.所以推薦大家直接安裝XAMPP即可.
好啦,關於XAMPP的安裝方法大家可以去搜尋一下.比較簡單.直接下一步下一步即可.
PHP標籤聲明方式
echo "
hello word
";?>
hello word
在PHP裡, 表聲明以 為結尾. echo 為列印/輸出的意思.
而且我們的聲明檔案也都是以 ****.PHP為結尾的檔案.
PHP注釋
//單行注釋
#這也是單行注釋
/*
多行注釋,他橫跨很多行
*/
?>
變數
變數是以$開頭,後面跟變數名.
以字母.數字.底線組成,不能以數字開頭.
區分大小寫.
栗子:
$name = "neiku";
$age = 26;
$num = 15+"12"; // $num = 27;
在PHP裡, 加號就是相加的,他不分後面的數字是否是字串類型. 但是如果是 15+ "ab12" 的話,那他的值為 15,他會略過 ab12的. 但是有 15+ "12ab"的話 他的值 還是27.
變數賦值
賦值有兩種: 直接賦值, 引用賦值.
栗子:
$sum = "hello";
$sum2 = &$sum; //在這裡添加的&後, $sum會把他的記憶體位址賦值給$sum2. 如果$sum2在重新賦值的話,$sum的值也會變化.這個有點像C語言裡的指標.
變數的變數
栗子:
$sum = "hello";
$$sum = "word";
echo $sum; // 輸出hello;
echo ${$sum}; //輸出word;
echo $hello; // 輸出 word;
在這裡,變數前面還可以加上$ 在賦值一個新的值. 他會產生一個新的值. 這個確實有點怪怪的. 至於用處嘛........說是有大用. 這個在 我們的forin 裡面 他在遍曆的時候 可以用到.
超全域變數
PHP提供了很多有用的預定義的變數.用於提供大量與環境有關的資訊.
列印/輸出全域變數:print_r($_SERVER); 在這裡 解釋一下print_r他列印的是數組. 數組專用列印用的.而我們的這些預定義變數都是屬於數群組類型.所以他需要用print_r來列印.
print_r($_SERVER);
他會列印出你的所有資訊.
所有資訊
而在這裡我會單獨的列舉一些我們常用的一些方法.
print_r($_SERVER['SERVER_NAME']);
他會返回你當前運行指令碼所在的伺服器的主機名稱.
當前伺服器指令碼的主機名稱.
如果你把127.0.0.1 更改為 localhost 他的主機名稱也會更改為localhost 或者前面你放上你當前電腦的IP ,他就會變為IP.
print_r($_SERVER['REMOTE_ADDR']);
用戶端IP地址.
IP地址
但是注意,在這裡他擷取的只是當前的IP地址,但是他不能識別localhost.
print_r($_SERVER['REQUEST_URI']):
擷取當前的檔案路徑.
當前檔案路徑
print_r($_SERVER['HTTP_USER_AGENT']);
擷取當前作業系統和瀏覽器的相關資訊.
我的系統,我的瀏覽器,我的中介軟體
$_get
該變數包含使用get方法傳遞的參數的有關資訊.
然後在index.php檔案中書寫PHP代碼.
$name = $_GET['name'];
$pwd = $_GET['pwd'];
echo $name;
echo "
";
echo $pwd;
?>
在頁面輸入資訊
321 321
321 321
提交後,顯示頁面
321 321
但是請注意,get方法他會把你的輸入資訊在網址上顯示.
顯示出你的輸入資訊
所以接下來給大家介紹一下post.
post
該變數包含使用post方法傳遞的參數的有關資訊.
html代碼如上,我就不寫了. 鬱悶,不讓複製咱帖. 唯一不同的地方就是method="post" 他的請求方式改為post
PHP代碼同上.一樣.
在頁面輸入資訊
321 321
321 321
提交後,顯示頁面
321 321
而這回,頁面將不會有你的輸入資訊.
$_REQUEST
該變數記錄著通過各種輸入方法傳遞給指令碼的變數.如get,post,但不要使用這個超級變數,因為它不安全而且速度慢.
$_COOKIE
cookie變數數組
$_SESSION變數數組
會話變數數組
$_FILE
與上傳檔案有關的變數數組
$_ENV
環境變數數組
$_GLOBALS
所有全域變數數組
常量
常量是指在程式執行中無法修改的值.如PI(3.14159236);
常量對大小寫敏感,通常常量名總是大寫.
常量是全域的,可以在指令碼任何地方使用.
常量分為 內建常量 和 自訂常量;
常量使用define()函數來定義.
栗子:
define('PI',3.1415926);
echo PI; //3.1415926
內建常量
PHP_OS PHP所在的作業系統的常量.
PHP_VERSION 當前PHP的版本號碼.
魔術常量
__LINE__ 檔案中的當前行號.
__FILE__ 檔案的完整路徑和檔案名稱;
__FUNCTION__ 函數名稱.
__CLASS__ 類名稱.
__METHOD__ 類的方法名.
資料類型
字串
字串有三種定義方式:單引號, 雙引號,定界符;
單引號字串中出現的變數不會被變數的值替代.
雙引號字串中最重要的一點是其中的變數會被變數值替代.
如果遇到貨幣符號$,解析器會儘可能多的取得後面的字元以組成一個合法的變數名,如果想明確的指定名字的結束,用{} 括弧把變數名括起來.
栗子:
$ sum = "hello";
echo = "welcome to china, i am ***, {sum}s";
字串定界的方法使用定界符文法 <<<
栗子:
$str = <<< AAA
dasfdas fdsafdasfdsa
fdsafdsaf fdsasadf
AAA;
echo $str; //dasfdas fdsafdasfdsa fdsafdsaf fdsasadf
str
str
這裡需要注意:
結束標示符所在的行不能包含任何其他字元,這意味著該標示符不能被縮排,在分號之前,之後都不能有和任何空格或者定位字元.
字串轉意
\n 換行 \r 斷行符號 \t 水皮製表符(Tab建);
\\ \(反斜線) \$ $(美元符) \ " " (雙引號)
整形
$age = 25;
浮點型
$age = 5.29;
布爾型
$bu = TRUE;
$bu = FALSE;
複合資料型別
數組
$week = array('星期一','星期二','星期三');
對象
$db = new db;
特殊資料類型
資源
$fh = fopen("text.txt","r"); 開啟某檔案或者路徑. 如果失敗,則返回false.
null
null無,表示沒有值,null不表示空格,也不標示0, 以下情況則認為是null;
沒有設定任何預定義的變數.
明確的賦值null;
使用函數unset()清除.
自動類型轉換
因為PHP對於類型定義非常的鬆散.所以有時候會根據引用變數的環境.將變數自動轉換為最適合的類型.
栗子:
$num = 5;
$str = "15";
echo $num + $str; //20;
$str = "100 hello";
$num = 200;
echo $str + $num; //300
$str='1.2';
if($str){ //判斷$str為true或者false
echo "hello word";
} // hello word;
類型相關函數
gettype()返回變數的類型.共有8個類型.
string 字串
integer 整形
float 浮點型
boolean 布爾
array 數組
object 對象
null 空
unkonw 未知
栗子:
$sty = "hello";
echo gettype($sty); //string
is_type();
查看變數是否屬於某個類型,是返回1,否 則不返回.
栗子:
$arr = array(1);
echo is_array($arr); //1;
$num = 5;
echo is_int($num); // 1;
var_dump();
擷取變數的值和類型的詳細資料.
栗子
$str = 'hello';
echo var_dump($str);// string(5) "hello"
$arr = array('A','B','C');
echo dump($arr); // array(3){[0] => string(1)"A" [1] => string(1)"B" [2] => string(1)"C"}
好啦,關於PHP的一些知識就簡單的介紹到這,後續還會有陸續的更新. 感謝各位觀眾老爺的閱讀.如有建議謝謝大家給與留言.