認識 PHP8 的基本結構與語法

PHP 8 是 PHP 語言的最新版本,於 2021 年 11 月 26 日發布,它引入了許多新功能和改進,旨在提高性能、安全性、可讀性和開發人員效率,如果你有寫過 PHP 或更早一點的版本,那你可以很快的上手,如果你還沒寫過 PHP8,先開始看一些簡單語法就很重要,這篇就簡單介紹一些 PHP 8 基本語法,先說概念及簡單的程式碼範例,不用特地練習這些範例語法,之後的章節再練習即可。

基本結構

PHP 程式碼通常由以下部分組成:

  • <?php 標籤:告訴伺服器程式碼從此處開始。
  • PHP 程式碼:可以使用 PHP 語言的任何功能和語法。
  • ?> 標籤:告訴伺服器程式碼在此處結束。

實際寫起來會像下面這樣

<?php
  // PHP 程式碼
?>

語法

PHP 語法類似於 C 語言,但也有一些獨特的功能。以下是一些常見的 PHP 語法元素:

變數:用於存儲值的容器。變數名稱以美元符號 ($) 開頭。

$name = "John Doe";
$age = 30;

數據類型:指定變數中值的類型。PHP 支持多種數據類型,包括整數、浮點數、字串、布林值和陣列。

$name = "John Doe"; // 字串
$age = 30; // 整數
$is_active = true; // 布林值
$numbers = array(1, 2, 3, 4, 5); // 陣列

運算符:用於對值進行操作。PHP 支持算術運算符、比較運算符、邏輯運算符和字符串運算符。

$sum = 10 + 20; // 加法
$difference = 30 - 15; // 減法
$product = 5 * 6; // 乘法
$quotient = 20 / 4; // 除法
$remainder = 10 % 3; // 求餘
$is_equal = $name == "John Doe"; // 等於
$is_greater = $age > 25; // 大於
$is_less = $number < 10; // 小於
$is_not_equal = $name != "Jane Doe"; // 不等於
$and_condition = $is_active && $is_equal; // 邏輯與
$or_condition = $is_greater || $is_less; // 邏輯或
$concatenation = "Hello, " . $name . "!"; // 字符串連接

控制流陳述式:用於控制程式碼的執行流程,PHP 支持 if-else 陳述式、switch 陳述式、while 循環和 for 循環。

if ($age >= 18) {
  echo "You are old enough to vote.";
} else {
  echo "You are not old enough to vote.";
}

switch ($name) {
  case "John Doe":
    echo "Hello, John Doe!";
    break;
  case "Jane Doe":
    echo "Hello, Jane Doe!";
    break;
  default:
    echo "Hello, there!";
}

$i = 1;
while ($i <= 5) {
  echo $i . " ";
  $i++;
}

for ($i = 1; $i <= 5; $i++) {
  echo $i . " ";
}

函數:用於執行特定任務的程式碼塊,函數可以使用參數來接收輸入並返回輸出。

function say_hello($name) {
  echo "Hello, " . $name . "!";
}

say_hello("John Doe"); // 輸出:Hello, John Doe!

類別:用於創建自定義對象的藍圖。類別包含屬性和方法。

class Person {
  public $name;
  public $age;

function __construct($name, $age) {
    $this->name = $name;
    $this->age = $age;
  }

  function greet() {
    echo "Hello, my name is " . $this->name . " and I am " . $this->age . " years old.";
  }
}

$person = new Person("John Doe", 30);
$person->greet(); // 輸出:Hello, my name is John Doe and I am 30 years old.

命名參數:命名參數允許按名稱而不是按位置傳遞函數參數,這提高了程式碼的可讀性和可維護性。

function greet($name, $age = 30) {
  echo "Hello, " . $name . "! You are " . $age . " years old.";
}

greet("John Doe"); // 輸出:Hello, John Doe! You are 30 years old.
greet("Jane Doe", 25); // 輸出:Hello, Jane Doe! You are 25 years old.

正規表達式:正規表達式提供了一種更簡潔、更具可讀性的方式來配對值,類似於 switch 陳述式,但具有更強大的功能。

$status = match ($result) {
  1 => "Success",
  -1 => "Failure",
  default => "Unknown",
};

echo $status; // 輸出:Success (如果 $result 為 1)

空安全操作符:空安全操作符 (?.) 允許您安全存取可能為空的值。它可防止空引用錯誤。

$user = findUserById(123);
$name = $user ? $user->getName() : "Unknown";

echo $name; // 如果 $user 為空,則輸出“Unknown”

結論

PHP 8 是 PHP 語言的重大更新,引入許多新功能和改進,這些改進旨在提高性能、安全性、可讀性和開發人員效率。如果您是 PHP 開發人員,那麼學習 PHP 8 的新功能和改進非常重要,以上一些 PHP 8 常用的語法及功能,各位就先參考看看,後續章節會針對這些功能寫出一些範例讓各位練習,慢慢的就會熟悉 PHP8 的程式碼寫法與各種功能運用。

延伸閱讀

  1. PHP8 動態網頁設計學習目錄
  2. PHP8 簡介
  3. 在 Windows 11 上安裝 XAMPP 建置 PHP 開發環境
  4. 選擇 PHP 程式碼編輯軟體
© Copyright wibibi.com 網頁設計教學百科 基礎的網頁設計規劃、資料庫與程式設計 Since 2012