1. 什么是 PHP?
PHP(Hypertext Preprocessor)是一种广泛使用的开源服务器端脚本语言,主要用于网页开发。它可以嵌入 HTML 中,能够与数据库交互,生成动态网页内容。
2. PHP 环境搭建
要运行 PHP 代码,你需要一个支持 PHP 的服务器环境。常用的环境有:
- XAMPP:集成了 Apache、MySQL 和 PHP 的跨平台解决方案。
- WAMP:Windows 平台的 Apache、MySQL 和 PHP 集成环境。
- MAMP:适用于 macOS 的 Apache、MySQL 和 PHP 集成环境。
安装后,启动服务器并将 PHP 文件放在 htdocs
(XAMPP)或 www
(WAMP)目录下。
3. PHP 基础语法
3.1 PHP 文件
PHP 文件的扩展名通常为 .php
。PHP 代码用 <?php
和 ?>
标签包围。
<?php
echo "Hello, World!";
?>
3.2 注释
PHP 支持单行和多行注释:
// 这是单行注释
# 这也是单行注释
/*
这是多行注释
可以写多行内容
*/
3.3 变量
变量以 $
开头,支持多种数据类型(字符串、整数、浮点数、布尔值、数组、对象等)。
$name = "Alice"; // 字符串
$age = 25; // 整数
$height = 5.5; // 浮点数
$isStudent = true; // 布尔值
3.4 数据类型
PHP 支持以下数据类型:
- 字符串:
"Hello"
- 整数:
123
- 浮点数:
12.34
- 布尔值:
true
或false
- 数组:
array(1, 2, 3)
- 对象:类的实例
3.5 数组
数组可以存储多个值,可以是索引数组或关联数组。
// 索引数组
$colors = array("red", "green", "blue");
// 关联数组
$person = array("name" => "Alice", "age" => 25);
4. 控制结构
4.1 条件语句
使用 if
、else
和 switch
进行条件判断。
$age = 18;
if ($age >= 18) {
echo "成年人";
} else {
echo "未成年人";
}
// switch 语句
$day = 3;
switch ($day) {
case 1:
echo "星期一";
break;
case 2:
echo "星期二";
break;
case 3:
echo "星期三";
break;
default:
echo "其他";
}
4.2 循环
使用 for
、while
和 foreach
进行循环。
// for 循环
for ($i = 0; $i < 5; $i++) {
echo $i;
}
// while 循环
$count = 0;
while ($count < 5) {
echo $count;
$count++;
}
// foreach 循环
$fruits = array("apple", "banana", "orange");
foreach ($fruits as $fruit) {
echo $fruit;
}
5. 函数
函数是可重用的代码块,可以接收参数并返回值。
function add($a, $b) {
return $a + $b;
}
$result = add(5, 10);
echo $result; // 输出 15
6. 表单处理
PHP 可以处理 HTML 表单数据。使用 $_GET
和 $_POST
超全局数组获取表单数据。
<!-- form.html -->
<form method="post" action="process.php">
姓名: <input type="text" name="name">
<input type="submit" value="提交">
</form>
// process.php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$name = $_POST['name'];
echo "你好, " . htmlspecialchars($name);
}
7. 数据库操作
PHP 常与 MySQL 数据库结合使用。使用 mysqli
或 PDO
进行数据库操作。
// 使用 mysqli 连接数据库
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 查询数据
$sql = "SELECT id, name FROM users";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
echo "id: " . $row["id"] . " - 姓名: " . $row["name"] . "<br>";
}
} else {
echo "0 结果";
}
$conn->close();
8. 错误处理
使用 try-catch
语句处理异常。
try {
// 代码块
throw new Exception("发生错误");
} catch (Exception $e) {
echo '捕获异常: ', $e->getMessage(), "\n";
}
9. 文件操作
PHP 可以读取和写入文件。
// 写入文件
file_put_contents("example.txt", "Hello, World!");
// 读取文件
$content = file_get_contents("example.txt");
echo $content;
10. 会话管理
使用 session
管理用户会话。
session_start(); // 开始会话
$_SESSION['username'] = "Alice"; // 设置会话变量
// 访问会话变量
echo $_SESSION['username']