在 macOS 系統上搭建 PHP 開發環境,推薦使用 MAMP Pro(官網:mamp.info)。安裝完成後,網站根目錄位於 /Applications/MAMP/htdocs,將項目文件放入該目錄,即可通過 https://localhost:8888 訪問。軟體介面提供快速訪問按鈕,一鍵開啟站點。

偏好命令列的開發者,兩行指令即可完成 PHP 安裝:
brew tap josegonzalez/homebrew-php brew install php54
安裝後的 PHP 執行檔位於 /usr/local/bin/php,配置好 PHPStorm 即可開始高效開發。

.php 請求,傳遞給 PHP 引擎處理| 類別 | 類型 |
|---|---|
| 整數型 | TINYINT, SMALLINT, INT, BIGINT |
| 浮點型 | FLOAT, DOUBLE, DECIMAL(M,D) |
| 字符型 | CHAR, VARCHAR |
| 日期型 | DATETIME, DATE, TIMESTAMP |
| 文本型 | TINYTEXT, TEXT, LONGTEXT |
-- 顯示所有資料庫
SHOW DATABASES;
-- 選擇資料庫
USE guest;
-- 查看當前資料庫
SELECT DATABASE();
-- 查看資料表結構
DESCRIBE users;
-- 建立資料庫
CREATE DATABASE book;
-- 建立資料表
CREATE TABLE users (
username VARCHAR(20) NOT NULL,
sex CHAR(1),
birth DATETIME
);
-- 插入資料
INSERT INTO users (username, sex, birth) VALUES ('jack', 'male', NOW());
-- 設定編碼
SET NAMES utf8;
<?php
header('Content-Type: text/html; charset=utf-8');
// 定義常量(提升安全性)
define('DB_HOST', 'localhost');
define('DB_USER', 'root');
define('DB_PWD', 'your_password');
define('DB_NAME', 'trigkit');
// 連接資料庫
$conn = mysql_connect(DB_HOST, DB_USER, DB_PWD)
or die('連接失敗:' . mysql_error());
// 選擇資料庫
mysql_select_db(DB_NAME, $conn)
or die('選擇資料庫失敗:' . mysql_error());
// 設定字符集
mysql_query('SET NAMES UTF8')
or die('字符集設定失敗:' . mysql_error());
// 查詢資料
$query = "SELECT * FROM class";
$result = mysql_query($query)
or die('SQL 錯誤:' . mysql_error());
// 獲取關聯陣列
$data = mysql_fetch_array($result, MYSQL_ASSOC);
print_r($data);
// 釋放資源
mysql_free_result($result);
?>
$query = "INSERT INTO class (name, email, point, regdate)
VALUES ('小明', 'xiaoming@163.com', 100, NOW())";
mysql_query($query) or die('新增失敗:' . mysql_error());
$query = "UPDATE class SET point = 80 WHERE id = 2"; mysql_query($query);
$query = "DELETE FROM class WHERE id = 2"; mysql_query($query); mysql_close();
$query = "SELECT id, name, email, regdate FROM class";
$result = mysql_query($query) or die('查詢錯誤:' . mysql_error());
while ($row = mysql_fetch_assoc($result)) {
echo "姓名:{$row['name']}, Email:{$row['email']}<br>";
}
mysql_close();
mysql_fetch_assoc() - 取得關聯陣列mysql_fetch_array() - 取得混合陣列mysql_num_rows() - 取得行數mysql_num_fields() - 取得欄位數mysql_insert_id() - 取得最後自增 IDmysql_affected_rows() - 取得影響行數注意: mysql_* 系列函數已於 PHP 7.0 移除,新專案請使用 PDO 或 mysqli 擴展。