01. PHP 简介与环境搭建
PHP(Hypertext Preprocessor)是一种广泛使用的开源服务器端脚本语言,特别适合 Web 开发。
PHP 的特点:
- 语法简单,学习曲线平缓
- 内置大量 Web 开发函数
- 支持多种数据库(MySQL、PostgreSQL、SQLite)
- 跨平台运行
- 丰富的生态系统(Composer、Laravel、Symfony)
php
<?php
// PHP 基础语法
$name = "张三";
$age = 25;
$is_student = true;
// 输出
echo "姓名: " . $name . "<br>";
echo "年龄: $age<br>";
// 数组
$fruits = ["苹果", "香蕉", "橘子"];
echo count($fruits) . " 个水果<br>";
// 关联数组
$user = [
"name" => "李四",
"age" => 30,
"email" => "[email protected]"
];
echo $user["name"];
?>02. 变量与数据类型
PHP 是弱类型语言,变量不需要声明类型。
PHP 支持的数据类型:
- 标量类型:int、float、string、bool
- 复合类型:array、object
- 特殊类型:null、resource
变量命名规则:
- 以 $ 开头
- 只能包含字母、数字、下划线
- 不能以数字开头
php
<?php
// 变量
$integer = 42;
$float = 3.14;
$string = "Hello";
$boolean = true;
$null = null;
// 类型检查
echo gettype($integer); // integer
echo is_int($integer); // 1 (true)
echo is_string($string); // 1 (true)
// 数组操作
$numbers = [1, 2, 3, 4, 5];
$numbers[] = 6; // 添加元素
echo array_pop($numbers); // 弹出最后一个
echo array_push($numbers, 7); // 添加到末尾
// 二维数组
$matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
];
echo $matrix[1][2]; // 6
?>03. 函数与流程控制
PHP 支持函数定义、条件语句和循环语句。
函数特点:
- 使用 function 关键字定义
- 支持默认参数和可变参数
- 支持引用传递
- 支持返回多个值(使用 list() 解构)
php
<?php
// 函数定义
function greet($name, $greeting = "你好") {
return "$greeting, $name!";
}
echo greet("张三"); // 你好, 张三!
echo greet("李四", "早上好"); // 早上好, 李四!
// 引用传递
function swap(&$a, &$b) {
$temp = $a;
$a = $b;
$b = $temp;
}
$x = 10;
$y = 20;
swap($x, $y);
echo "$x, $y"; // 20, 10
// 条件语句
$score = 85;
if ($score >= 90) {
echo "优秀";
} elseif ($score >= 80) {
echo "良好";
} elseif ($score >= 60) {
echo "及格";
} else {
echo "不及格";
}
// 循环
for ($i = 0; $i < 5; $i++) {
echo $i . " ";
}
$colors = ["红", "绿", "蓝"];
foreach ($colors as $index => $color) {
echo "$index: $color ";
}
// 匿名函数
$multiply = function($a, $b) {
return $a * $b;
};
echo $multiply(3, 4); // 12
?>04. 字符串与正则
PHP 提供了丰富的字符串处理函数和正则表达式支持。
常用字符串函数:
- strlen():获取长度
- strpos():查找位置
- substr():截取子串
- str_replace():替换
- explode():分割字符串
- implode():合并数组为字符串
php
<?php
// 字符串函数
$str = "Hello, World!";
echo strlen($str); // 13
echo strpos($str, "World"); // 7
echo substr($str, 7, 5); // World
echo str_replace("World", "PHP", $str); // Hello, PHP!
// 分割与合并
$csv = "张三,李四,王五";
$names = explode(",", $csv);
echo $names[0]; // 张三
$joined = implode(" | ", $names);
echo $joined; // 张三 | 李四 | 王五
// 正则表达式
$email = "[email protected]";
$pattern = "/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/";
if (preg_match($pattern, $email)) {
echo "邮箱格式正确";
}
// 提取所有数字
$text = "我有3个苹果和5个橘子";
preg_match_all("/\d+/", $text, $matches);
print_r($matches[0]); // [3, 5]
?>知识测验
第 1/6 题正确 0
PHP 中 $ 符号的作用是什么?
下一节
下一节 面向对象