回顧上一篇和上上篇了解到如何架設環境與編譯器的設定後,接下來就可以專專心心的寫程式摟,開始寫程式之前先來快速了解php的基本語法吧!
PHP基本語法
PHP 是 HTML 的嵌入程式,以<?php標籤作為開始,?>標籤結束。
每一行需要以分號作為結尾,但是如果只有單行,結尾沒有分號也可以被解析成功。
<?php
?>
列印
echo跟python的print、c++的cout一樣用來列印。
<?php
echo "hello world";
?>
註解
單行註解
//
多行註解
/* */
<?php
echo "hello world";
//this is single line comment
/*this
is
multi
line
comment
*/
?>
變數
變數是一個暫時儲存資料的地方,宣告方式以 $ 為開頭,且不需要事先宣告資料型別。
= 在這邊是賦值的意思,將右邊的值指定給左邊的變數。
ex:咖啡廳的每一種飲品,咖啡杯是變數名稱,裡面杯子裡裝的摩卡咖啡就是值。

常見命名規則
snake_case(常用)
單字之間以 _ 分隔,均小寫。
<?php
$beverage_name = "bubble tea";
?>
camelCase
單字與單字之間不使用分隔符號,第一個單字小寫,後續每個單字首個字母大寫。
<?php
$beverageName = "bubble tea";
?>
常見資料型別
字串(String) : "hello" or 'hello'
也可以叫做字元序列,用單引號或雙引號包裹著。
<?php
$student_name = 'Joe';
?>
單引號 vs 雙引號
單引號比較老實給他什麼就是甚麼,自然而然效率就很快,優點在於效率快,而雙引號最大的功用就在於字串中包含變數和跳脫序列(Escape Sequences)時,能夠被解析。
echo 'Line 1 \n Line 2'; // 輸出:Line 1 \n Line 2
echo "Line 1 \n Line 2"; // 輸出:Line 1 (換行) Line 2
整數(Integer) : 1
<?php
$student_age = 30;
?>
浮點數(Float) : 1.5
數學中的小數。
<?php
$student_gpa = 3.5;
?>
布林值(Boolean) : True or False
用於邏輯判斷,在流程控制常常使用。
<?php
$is_pass = true;
?>
空(null) : null
用於表示變數沒有值。
<?php
$student_name = null;
?>
陣列 : array('1', '2', '3')
索引陣列
使用array()宣告,可接受任意數量,每個值之間須以逗號做分隔,其中最後一個值後的逗號可省略,索引從0開始,依索引值取值。
<?php
$all_class = array('101' ,'201', '301');//第一種寫法
$all_class = ['101', '201', '301'];//第二種寫法
echo $all_class[0]; //輸出101
?>
關聯陣列
每個元素由鍵(key)跟值(value)組成,可接受任意數量,每個值之間須以逗號做分隔,依鍵值取值,若鍵值重複出現以最後一個為主。
<?php
$all_class = array('1st'=>'101', '2st'=>'201', '3st'=>'301');//第一種寫法
$all_class = ['1st'=>'101', '2st'=>'201', '3st'=>'301'];//第二種寫法
echo $all_class['1st']; //輸出101
?>
物件(Object)
以class來定義一個類別,類別名稱後加上大括號,用new來實例化類別,包含屬性(attributes)、方法(method)和建構子(constructor),以後有機會可以詳談📝。
<?php
class Classroom {
public $id; // 屬性:教室編號
// 建構子
public function __construct($name) {
$this->id = $name;
}
// 方法:教室的自我介紹行為
public function announce() {
echo "歡迎來到 " . $this->id . " 教室!<br>";
}
}
// 實例化物件
$class_a = new Classroom('101');
// 呼叫方法
$class_a->announce(); // 輸出:歡迎來到 101 教室!
echo gettype($class_a); // 輸出:object
?>
資源(resource)
Resource 是一種特殊的變數,它保存了對「外部資源」的引用(Handle),常用於檔案開啟與資料庫連線。
<?php
$file = fopen("D:/xampp/htdocs/aiprompt.docx", "r");
echo gettype($file); // 輸出:resource
fclose($file);//關閉資源
?>
gettype()
有的時候向資料庫問資料回來,只知道傳回來的值並不知道他的資料型別是甚麼時,就可以使用php提供的gettype()函式
<?php
$student_name = 'Joe';
echo gettype($student_name); //輸出結果:string
?>
型別轉換(casting)
字串轉整數:
若為數值轉成整數,非數值無法處理轉成0,跟其他語言(像是python)不太一樣的是,
如果把非數值字串轉成整數會爆錯,而php不會。
浮點數轉整數:
小數點以後無條件捨去,保留小數點前的數字,因為(int)無法分辨小數點是甚麼。
布林轉整數:
true(1)
false(0)
<?php
$student_age = '12';
$is_current_student = 'true';
$student_name = 'lala';
echo gettype((int)$student_age);//輸出結果:integer
echo gettype((string)$student_age);//輸出結果:string
echo gettype((float)$student_age);//輸出結果float
echo gettype((bool)$is_current_student);//輸出結果boolean
echo gettype((int)$student_name);//輸出結果int,結果為0
?>
本篇文章到這裡就結束了,相信大家經過練習後,對PHP的寫法已經有了初步的認識,如果喜歡我的文章或覺得有用的話,歡迎動動手指點擊愛心,你/妳的支持是我最大的動力,我們下篇文章見🙌。











