PHP基本語法

曉客發表於2020-12-29

1、PHP指令碼以<?php開始,以?>結束
2、PHP檔案的預設副檔名為“.PHP”
3、PHP用分號來分割語句
4、變數以$ 符號表示,後面跟著變數的名稱:$test='Hello World';
5、PHP註釋:
單行註釋://、#
多行註釋/*...*/
————————我是分割線——————————————
PHP指令碼可以放在文件中的任何位置
主要格式如下:

<?php//PHP程式碼?>123

PHP 中的每個程式碼行都必須以分號結束。分號是一種分隔符,用於把指令集區分開來。
通過 PHP,有兩種在瀏覽器輸出文字的基礎指令:echo 和 print。
例項:

<!DOCTYPE html><html><body><h1>My first PHP page</h1><?phpecho "Hello World!";?></body></html>123456789101112

PHP 中的註釋
例項

<!DOCTYPE html><html><body><?php// 這是 PHP 單行註釋/*
這是
PHP 多行
註釋
*/?></body></html>12345678910111213141516

————————我是分割線——————————————

PHP 變數規則:

變數以 $ 符號開始,後面跟著變數的名稱
變數名必須以字母或者下劃線字元開始
變數名只能包含字母數字字元以及下劃線(A-z、0-9 和 _ )
變數名不能包含空格
變數名是區分大小寫的($y 和 $Y 是兩個不同的變數)

PHP 語句和 PHP 變數都是區分大小寫的。
——————我是分割線——————————————————
PHP 是一門弱型別語言

在上面的例項中,我們注意到,不必向 PHP 宣告該變數的資料型別。
PHP 會根據變數的值,自動把變數轉換為正確的資料型別。
在強型別的程式語言中,我們必須在使用變數前先宣告(定義)變數的型別和名稱。
————————我是分割線————————————————

PHP 變數作用域

PHP 有四種不同的變數作用域:

local 區域性作用域
global 全域性作用域
static 靜態作用域
parameter 函式引數作用域

在 PHP 函式內部宣告的變數是區域性變數,僅能在函式內部訪問。
例項:

<?php$x=5; // 全域性變數function myTest(){
    $y=10; // 區域性變數
    echo "<p>測試函式內變數:<p>";
    echo "變數 x 為: $x";
    echo "<br>";
    echo "變數 y 為: $y";} myTest();echo "<p>測試函式外變數:<p>";echo "變數 x 為: $x";echo "<br>";echo "變數 y 為: $y";?>12345678910111213141516171819

1

在以上例項中 myTest() 函式定義了 $x 和 $y 變數。 $x 變數在函式外宣告,所以它是全域性變數 , $y 變數在函式內宣告所以它是區域性變數。

當我們呼叫myTest()函式並輸出兩個變數的值, 函式將會輸出區域性變數 $y 的值,但是不能輸出 $x 的值,因為 $x 變數在函式外定義,無法在函式內使用,如果要在一個函式中訪問一個全域性變數,需要使用 global 關鍵字。

然後我們在myTest()函式外輸出兩個變數的值,函式將會輸出全域性變數 $x 的值,但是不能輸出 $y 的值,因為 $y 變數在函式中定義,屬於區域性變數。

你可以在不同函式中使用相同的變數名稱,因為這些函式內定義的變數名是區域性變數,只作用於該函式內。
————————我是分割線————————————————

PHP global 關鍵字

global 關鍵字用於函式內訪問全域性變數。
例項:

<?php$x=5;$y=10;
 function myTest(){
    global $x,$y;
    $y=$x+$y;}
 myTest();echo $y; // 輸出 15?>12345678910111213

2

PHP 將所有全域性變數儲存在一個名為 $GLOBALS[index] 的陣列中。 index 儲存變數的名稱。這個陣列可以在函式內部訪問,也可以直接用來更新全域性變數。
改寫上面的例項:

<?php$x=5;$y=10;
 function myTest(){
    $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];} 
 myTest();echo $y;?>123456789101112

3
——————我是分割線——————————————————

Static 作用域

當一個函式完成時,它的所有變數通常都會被刪除。然而,有時候您希望某個區域性變數不要被刪除。

要做到這一點,請在您第一次宣告變數時使用 static 關鍵字:

例項

<?phpfunction myTest(){
    static $x=0;
    echo $x;
    $x++;
    echo PHP_EOL;    // 換行符}
 myTest();myTest();myTest();?>12345678910111213

4
然後,每次呼叫該函式時,該變數將會保留著函式前一次被呼叫時的值。
註釋:該變數仍然是函式的區域性變數。
——————我是分割線————————————————

引數作用域

引數是通過呼叫程式碼將值傳遞給函式的區域性變數。
引數是在引數列表中宣告的,作為函式宣告的一部分:
例項:

<?phpfunction myTest($x){
    echo $x;}myTest(5);?>1234567

————————我是分割線——————————————

PHP echo 和 print 語句

echo 和 print 區別:

echo - 可以輸出一個或多個字串
print - 只允許輸出一個字串,返回值總為 1
提示:echo 輸出的速度比 print 快, echo 沒有返回值,print有返回值1。

PHP echo 語句

echo 是一個語言結構,使用的時候可以不用加括號,也可以加上括號: echo 或 echo()。
例項:

<?phpecho "<h2>PHP 很有趣!</h2>";echo "Hello world!<br>";echo "我要學 PHP!<br>";echo "這是一個", "字串,", "使用了", "多個", "引數。";?>123456

6下面的例項演示瞭如何使用 echo 命令輸出變數和字串:

<?php$txt1="學習 PHP";$txt2="www.CSDN.com";$cars=array("蘭博基尼","BMW","雪佛蘭");echo $txt1;echo "<br>";echo "在 $txt2 學習 PHP ";echo "<br>";echo "我車的品牌是 {$cars[1]}";?>1234567891011

2
——————我是分割線——————————————————

PHP print 語句

print同樣是一個語言結構,可以使用括號,也可以不使用括號:print或者print()。
例項 顯示字串:

<?phpprint "<h1>PHP 是世界上最好的語言!</h1>";print "Hello Covteam!<br>";?>1234

8
例項 顯示變數:

<?php$txt1="學習 PHP";$txt2="www.CSDN.com";$cars=array("蘭博基尼","BMW","雪佛蘭");print $txt1;print "<br>";print "在 $txt2 學習 PHP ";print "<br>";print "我車的品牌是 {$cars[1]}";?>1234567891011