ToolkitX
知识库工具箱

PHP 基础

变量、数组、函数、表单处理

20min·入门

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 中 $ 符号的作用是什么?

下一节

面向对象

下一节