PHP基礎入門1

1.PHP簡介:

  • PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本預處理器”)是一種通用開源腳本語言。語法吸收了C語言、Java和Perl的特點,利於學習,使用廣泛,主要適用於Web開發領域。PHP 獨特的語法混合了C、Java、Perl以及PHP自創的語法。它可以比CGI或者Perl更快速地執行動態網頁。用PHP做出的動態頁面與其他的編程語言相比,PHP是將程序嵌入到HTML(標準通用標記語言下的一個應用)文檔中去執行,執行效率比完全生成HTML標記的CGI要高許多;PHP還可以執行編譯後代碼,編譯可以達到加密和優化代碼運行,使代碼運行更快。(百度百科)

2.語法:

  • PHP 腳本可放置於文檔中的任何位置。
    PHP 腳本以
<?php
// 此處是 PHP 代碼
?>
  • PHP 文件的默認文件擴展名是 “.php”。
    PHP 文件通常包含 HTML 標籤以及一些 PHP 腳本代碼。
    PHP 語句以分號結尾(;)。
    PHP 代碼塊的關閉標籤也會自動錶明分號(因此在 PHP 代碼塊的最後一行不必使用分號)。
<!DOCTYPE html>
<html>
<body>

<h1>我的第一張 PHP 頁面</h1>

<?php
echo "Hello World!";
?>

</body>
</html>
  • PHP 支持三種註釋:
<!DOCTYPE html>
<html>
<body>

<?php
// 這是單行註釋

# 這也是單行註釋

/*
這是多行註釋塊
它橫跨了
多行
*/
?>

</body>
</html>
  • PHP 大小寫敏感
    在 PHP 中,所有用戶定義的函數、類和關鍵詞(例如 if、else、echo 等等)都對大小寫不敏感。
    在下面的例子中,所有這三條 echo 語句都是合法的(等價):
<!DOCTYPE html>
<html>
<body>

<?php
ECHO "Hello World!<br>";
echo "Hello World!<br>";
EcHo "Hello World!<br>";
?>

</body>
</html>
  • 不過在 PHP 中,所有變量都對大小寫敏感。
    在下面的例子中,只有第一條語句會顯示 $color 變量的值(這是因爲 $color、$COLOR 以及 $coLOR 被視作三個不同的變量):
<!DOCTYPE html>
<html>
<body>

<?php
$color="red";
echo "My car is " . $color . "<br>";
echo "My house is " . $COLOR . "<br>";
echo "My boat is " . $coLOR . "<br>";
?>

</body>
</html>

3.變量:

  • PHP 變量規則:
    變量以$符號開頭,其後是變量的名稱
    變量名稱必須以字母或下劃線開頭
    變量名稱不能以數字開頭
    變量名稱只能包含字母數字字符和下劃線(A-z、0-9 以及 _)
    變量名稱對大小寫敏感($y 與 $Y 是兩個不同的變量)
    註釋:PHP 變量名稱對大小寫敏感!
<?php
$x=5;
$y=6;
$z=$x+$y;
echo $z;
?>

如果您爲變量賦的值是文本,請用引號包圍該值。

<?php
$txt="Hello world!";
$x=5;
$y=10.5;
?>
  • PHP 是一門類型鬆散的語言
    在上面的例子中,請注意我們不必告知 PHP 變量的數據類型。
    PHP 根據它的值,自動把變量轉換爲正確的數據類型。
    在諸如 C 和 C++ 以及 Java 之類的語言中,程序員必須在使用變量之前聲明它的名稱和類型。

  • PHP 變量作用域
    在 PHP 中,可以在腳本的任意位置對變量進行聲明。
    變量的作用域指的是變量能夠被引用/使用的那部分腳本。
    PHP 有三種不同的變量作用域:

    local(局部)
    global(全局)
    static(靜態)

  • Local 和 Global 作用域
    函數之外聲明的變量擁有 Global 作用域,只能在函數以外進行訪問。
    函數內部聲明的變量擁有 LOCAL 作用域,只能在函數內部進行訪問。
<?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";
?>
    運行結果:
    在函數內部測試變量:

    變量 x 是:
    變量 y 是:10
    在函數之外測試變量:

    變量 x 是:5
    變量 y 是:
  • PHP global 關鍵詞
    global 關鍵詞用於訪問函數內的全局變量。
    要做到這一點,請在(函數內部)變量前面使用 global 關鍵詞:
<?php
$x=5;
$y=10;

function myTest() {
  global $x,$y;
  $y=$x+$y;
}

myTest();
echo $y; // 輸出 15
?>

PHP 同時在名爲 $GLOBALS[index] 的數組中存儲了所有的全局變量。下標存有變量名。這個數組在函數內也可以訪問,並能夠用於直接更新全局變量。
上面的例子可以這樣重寫:

<?php
$x=5;
$y=10;

function myTest() {
  $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];
} 

myTest();
echo $y; // 輸出 15
?>
  • PHP static 關鍵詞
    通常,當函數完成/執行後,會刪除所有變量。不過,有時我需要不刪除某個局部變量。實現這一點需要更進一步的工作。
    要完成這一點,請在您首次聲明變量時使用 static 關鍵詞:
<?php

function myTest() {
  static $x=0;
  echo $x;
  $x++;
}

myTest();//0
myTest();//1
myTest();//2

?>

然後,每當函數被調用時,這個變量所存儲的信息都是函數最後一次被調用時所包含的信息。
註釋:該變量仍然是函數的局部變量。

  • PHP echo 和 print 語句
    echo 和 print 之間的差異:
    echo - 能夠輸出一個以上的字符串
    print - 只能輸出一個字符串,並始終返回 1
    提示:echo 比 print 稍快,因爲它不返回任何值。

echo 是一個語言結構,有無括號均可使用:echo 或 echo()。
print 也是語言結構,有無括號均可使用:print 或 print()。


<!DOCTYPE html>
<html>
<body>

<?php
echo "<h2>PHP 很有趣!</h2>";
echo "Hello world!<br>";
echo "我計劃學習 PHP!<br>";
echo "這段話", "由", "多個", "字符串", "串接而成。";
?>  

</body>
</html>

輸出:

PHP 很有趣!
Hello world!
我計劃學習 PHP!
這段話由多個字符串串接而成。


<!DOCTYPE html>
<html>
<body>

<?php
$txt1="Learn PHP";
$txt2="W3School.com.cn";
$cars=array("Volvo","BMW","SAAB");
echo $txt1;
echo "<br>";
echo "Study PHP at $txt2";
echo "<br>";
echo "My car is a {$cars[0]}";
?>

</body>
</html>

輸出:

Learn PHP
Study PHP at W3School.com.cn
My car is a Volvo


<!DOCTYPE html>
<html>
<body>

<?php
print "<h2>PHP is fun!</h2>";
print "Hello world!<br>";
print "I'm about to learn PHP!";
?>  

</body>
</html>

<!DOCTYPE html>
<html>
<body>

<?php
$txt1="Learn PHP";
$txt2="W3School.com.cn";
$cars=array("Volvo","BMW","SAAB");
print $txt1;
print "<br>";
print "Study PHP at $txt2";
print "<br>";
print "My car is a {$cars[0]}";
?>

</body>
</html>

輸出:

Learn PHP
Study PHP at W3School.com.cn
My car is a Volvo

3.數據類型:

字符串、整數、浮點數、邏輯、數組、對象、NULL。

  • PHP 字符串
    字符串是字符序列,比如 “Hello world!”。
    字符串可以是引號內的任何文本。您可以使用單引號或雙引號:
<?php 
$x = "Hello world!";
echo $x;
echo "<br>"; 
$x = 'Hello world!';
echo $x;
?>
  • PHP 整數
    整數是沒有小數的數字。
    整數規則:
    整數必須有至少一個數字(0-9)
    整數不能包含逗號或空格
    整數不能有小數點
    整數正負均可
    可以用三種格式規定整數:十進制、十六進制(前綴是 0x)或八進制(前綴是 0)
    在下面的例子中,我們將測試不同的數字。PHP var_dump() 會返回變量的數據類型和值:

<!DOCTYPE html>
<html>
<body>

<?php 
$x = 5985;
var_dump($x);
echo "<br>"; 
$x = -345; // 負數 
var_dump($x);
echo "<br>"; 
$x = 0x8C; // 十六進制數
var_dump($x);
echo "<br>";
$x = 047; // 八進制數
var_dump($x);
?>

</body>
</html>

輸出:

int(5985)
int(-345)
int(140)
int(39)

  • PHP 浮點數
    浮點數是有小數點或指數形式的數字。
    在下面的例子中,我們將測試不同的數字。PHP var_dump() 會返回變量的數據類型和值:

<!DOCTYPE html>
<html>
<body>

<?php 
$x = 10.365;
var_dump($x);
echo "<br>"; 
$x = 2.4e3;
var_dump($x);
echo "<br>"; 
$x = 8E-5;
var_dump($x);
?>

</body>
</html>

輸出:

float(10.365)
float(2400)
float(8.0E-5)

  • PHP 邏輯
    邏輯是 true 或 false。
$x=true;
$y=false;
  • PHP 數組
    數組在一個變量中存儲多個值。
    在下面的例子中,我們將測試不同的數組。PHP var_dump() 會返回變量的數據類型和值:
<!DOCTYPE html>
<html>
<body>

<?php 
$cars=array("Volvo","BMW","SAAB");
var_dump($cars);
?>

</body>
</html>

輸出:

array(3) { [0]=> string(5) “Volvo” [1]=> string(3) “BMW” [2]=> string(4) “SAAB” }

  • PHP 對象
    對象是存儲數據和有關如何處理數據的信息的數據類型。
    在 PHP 中,必須明確地聲明對象。
    首先我們必須聲明對象的類。對此,我們使用 class 關鍵詞。類是包含屬性和方法的結構。
    然後我們在對象類中定義數據類型,然後在該類的實例中使用此數據類型:
<!DOCTYPE html>
<html>
<body>

<?php
class Car
{
    var $color;
    function Car($color="green") {
      $this->color = $color;
    }
    function what_color() {
      return $this->color;
    }
}

function print_vars($obj) {
    //遍歷對象的屬性,以鍵值對形式輸出
   foreach (get_object_vars($obj) as $prop => $val) {
     echo "\t$prop = $val\n";
   }
}

// instantiate one object
$herbie = new Car("white");

// show herbie properties
echo "\herbie: Properties\n";
print_vars($herbie);

?>  

</body>
</html>

輸出:

\herbie: Properties color = white

  • PHP NULL 值
    特殊的 NULL 值表示變量無值。NULL 是數據類型 NULL 唯一可能的值。
    NULL 值標示變量是否爲空。也用於區分空字符串與空值數據庫。
    可以通過把值設置爲 NULL,將變量清空:
<?php
$x="Hello world!";
$x=null;
var_dump($x);
?>

輸出:

NULL

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章