Netcraft 調查顯示 PHP 主機數從 1998 年 7,500 台暴增至 1999 年 41 萬台,並榮獲 Webcon98 年度資料庫產品大獎。
<html><body>
<?php
$myvar = "Hello World";
echo $myvar;
?>
</body></html>
瀏覽 https://yourserver/test.php3 應顯示「Hello World」。檢視原始碼僅見純文字,證明 PHP 在伺服器端解析後輸出 HTML。
<?php ... ?>(標準)、<? ... ?>(短標籤,需開啟 short_open_tag)、<% ... %>(ASP 樣式)。;,可將多指令寫在同行但不建議。$ 開頭,型別自動判斷(數字、字串、陣列等)。<?php phpinfo(); ?>
瀏覽該頁面,在「Extensions」區尋找 MySQL 行。若無,表示編譯時未納入 MySQL 支援,需重新編譯或安裝擴充套件。
mysqladmin -u root create mydb
將以下內容存為 mydb.dump 放在 MySQL bin 目錄:
CREATE TABLE employees (
id tinyint(4) DEFAULT '0' NOT NULL AUTO_INCREMENT,
first varchar(20),
last varchar(20),
address varchar(255),
position varchar(50),
PRIMARY KEY (id),
UNIQUE id (id)
);
INSERT INTO employees VALUES (1,'Bob','Smith','128 Here St, Cityname','Marketing Manager');
INSERT INTO employees VALUES (2,'John','Roberts','45 There St, Townville','Telephonist');
INSERT INTO employees VALUES (3,'Brad','Johnson','1/34 Nowhere Blvd, Snowston','Doorman');
執行匯入:
mysql -u root mydb < mydb.dump
Windows 用戶在 DOS 視窗執行,Unix 用戶在 ./mysql 目前目錄下執行。
<html><body>
<?php
$db = mysql_connect("localhost", "root");
mysql_select_db("mydb", $db);
$result = mysql_query("SELECT * FROM employees", $db);
printf("First Name: %s<br>\n", mysql_result($result, 0, "first"));
printf("Last Name: %s<br>\n", mysql_result($result, 0, "last"));
printf("Address: %s<br>\n", mysql_result($result, 0, "address"));
printf("Position: %s<br>\n", mysql_result($result, 0, "position"));
?>
</body></html>
mysql_connect():建立連線,回傳連線識別碼存入 $db。mysql_select_db():選擇預設資料庫。mysql_query():送出 SQL,回傳結果集識別碼 $result。mysql_result($result, 0, "field"):直接取得第 0 筆(第一筆)指定欄位的值。printf():%s 佔位符對應後續運算式,以字串格式輸出。已完成環境安裝驗證、資料庫建立與資料匯入、撰寫第一支讀取資料庫的 PHP 腳本。明天將學習如何一次顯示多筆記錄、處理表單輸入與資料寫入。