php_examples
PHP 代码示例
Section titled “PHP 代码示例”PHP 语法
Section titled “PHP 语法”- 使用
echo输出文本和 HTML。 - 单行注释(
//或#)和多行注释(/* … */)。 - 理解大小写敏感性(case sensitivity):函数名、类名和内置构造(如
echo、if、while)不区分大小写(case-insensitive)。变量名($myVar)区分大小写(case-sensitive)。
阅读更多:[Link to Syntax Chapter - Placeholder]
PHP 变量
Section titled “PHP 变量”- 声明和赋值变量(
$name = “value”;)。 - 变量作用域(Variable scope):全局变量(global) vs 局部变量(local)(函数内部)。
- 在函数内部使用
global关键字或$GLOBALS超全局数组访问全局变量。 - 函数内的静态变量(Static variables)(
static $count = 0;)以在函数调用之间保留值。 - 引入类(classes)的类型属性(typed properties)(PHP 7.4+):
public string $name;。
阅读更多:[Link to Variables Chapter - Placeholder]
PHP Echo 和 Print
Section titled “PHP Echo 和 Print”- 使用
echo输出一个或多个字符串(strings)。 - 使用
print输出单个字符串(返回 1)。 - 在双引号字符串中嵌入变量或使用点(
.)运算符进行连接。
阅读更多:[Link to Echo/Print Chapter - Placeholder]
PHP 数据类型
Section titled “PHP 数据类型”- 标量类型(Scalar types):
string、int(integer)、float(或double)、bool(boolean)。 - 复合类型(Compound types):
array、object。 - 特殊类型(Special types):
resource、null。 - 使用
var_dump()检查变量类型(variable type)和值(value)。
阅读更多:[Link to Data Types Chapter - Placeholder]
PHP 字符串
Section titled “PHP 字符串”- 常用字符串函数(string functions):
strlen()、str_word_count()、strrev()、strpos()(以及用于不区分大小写搜索的stripos)、str_replace()(以及str_ireplace)、substr()、strtolower()、strtoupper()、trim()。
阅读更多:[Link to Strings Chapter - Placeholder]
PHP 常量
Section titled “PHP 常量”- 使用
define(‘CONSTANT_NAME’, value);定义常量(传统上使用大写)。 - 使用
const MY_CONSTANT = value;定义常量(在顶层或类内部)。 - 常量本身是全局的且不能被重新定义。
阅读更多:[Link to Constants Chapter - Placeholder]
PHP 运算符
Section titled “PHP 运算符”- 算术运算符(Arithmetic):
+、-、*、/、%(取模)、**(幂)。 - 赋值运算符(Assignment):
=、+=、-=、*=、/=、%=、.=、??=(null 合并赋值)。 - 比较运算符(Comparison):
==、===(全等)、!=或<>、!==、<、>、<=、>=、<=>(spaceship)。 - 递增/递减运算符(Increment/Decrement):
++$x、$x++、—$x、$x—。 - 逻辑运算符(Logical):
and、or、xor、&&、||、!。 - 字符串连接运算符(String Concatenation):
.。 - 数组运算符(Array):
+(联合)、==、===、!=、<>、!==。 - Null 合并运算符(Null Coalescing):
??。
阅读更多:[Link to Operators Chapter - Placeholder]
PHP 条件语句
Section titled “PHP 条件语句”if语句。if…else语句。if…elseif…else语句。switch语句(带有case、break、default)。- 三元运算符(Ternary operator):
condition ? value_if_true : value_if_false;。 - Null 合并运算符:
$variable = $maybeNull ?? $default;。
阅读更多:[Link to If/Else/Switch Chapter - Placeholder]
PHP 循环
Section titled “PHP 循环”while循环:在执行前检查条件。do…while循环:先执行一次,然后检查条件。for循环:初始化、条件、递增。foreach循环:遍历数组和对象(数组首选)。
阅读更多:[Link to Loops Chapter - Placeholder]
PHP 函数
Section titled “PHP 函数”- 定义函数:
function functionName($arg1, $arg2) { … }。 - 带有参数的函数。
- 默认参数值:
function greet($name = “Guest”) { … }。 - 使用
return返回值。 - 参数和返回类型的类型提示(Type hinting)(例如,
function add(int $a, int $b): int { … })。 - 箭头函数(Arrow functions)(PHP 7.4+)用于简洁的闭包(closures):
$add = fn($a, $b) => $a + $b;。
阅读更多:[Link to Functions Chapter - Placeholder]
PHP 数组
Section titled “PHP 数组”- 索引数组(Indexed arrays)(数字键,默认从 0 开始)。
- 关联数组(Associative arrays)(字符串键)。
- 多维数组(Multidimensional arrays)。
- 短数组语法
[](推荐使用,而非array())。 - 使用
count()获取元素数量。 - 使用
foreach遍历数组。
阅读更多:[Link to Arrays Chapter - Placeholder]
PHP 数组排序
Section titled “PHP 数组排序”- 按值排序:
sort()(升序)、rsort()(降序)。 - 关联数组按值排序,保留键:
asort()(升序)、arsort()(降序)。 - 关联数组按键排序:
ksort()(升序)、krsort()(降序)。 - 自然顺序排序(Natural order sorting):
natsort()、natcasesort()。
阅读更多:[Link to Sorting Arrays Chapter - Placeholder]
PHP 超全局变量
Section titled “PHP 超全局变量”$GLOBALS:访问全局变量(global variables)。$_SERVER:服务器和执行环境信息(headers、paths、script locations)。$_REQUEST:包含$_GET、$_POST和$_COOKIE数据(谨慎使用,更推荐使用特定的超全局变量)。$_POST:通过 HTTP POST 方法提交的数据(通常来自表单)。$_GET:通过 URL 查询字符串提交的数据。$_FILES:关于上传文件(uploaded files)的信息。$_COOKIE:HTTP Cookie。$_SESSION:Session 变量。
阅读更多:[Link to Superglobals Chapter - Placeholder]
PHP 表单处理与验证
Section titled “PHP 表单处理与验证”- 创建 HTML 表单(
<form method=“post” action=”…”>)。 - 使用
$_GET或$_POST访问表单数据。 - 验证(validating)和净化(sanitizing)用户输入的重要性。
- 使用过滤函数(filter functions)(
filter_var()、filter_input())进行验证(例如,FILTER_VALIDATE_EMAIL、FILTER_SANITIZE_STRING)。 - 输出用户数据时,使用
htmlspecialchars()防止跨站脚本攻击(Cross-Site Scripting, XSS)。 - 使用 token 防止跨站请求伪造(Cross-Site Request Forgery, CSRF)。
阅读更多:[Link to Forms Chapter - Placeholder]
PHP 日期和时间
Section titled “PHP 日期和时间”- 获取当前日期/时间:
date(‘Y-m-d H:i:s’)。 - 处理时间戳(timestamps):
time()。 - 从字符串创建日期:
strtotime()。 - 使用
DateTime对象(推荐)进行更强大的日期/时间操作:new DateTime()、$date->format()、$date->modify()、DateInterval、DateTimeZone。
阅读更多:[Link to Date/Time Chapter - Placeholder]
PHP Include 和 Require
Section titled “PHP Include 和 Require”- 包含文件:
include ‘file.php’;(失败时发出警告)、require ‘file.php’;(失败时产生致命错误)。 - 只包含文件一次:
include_once ‘file.php’;、require_once ‘file.php’;(定义时首选)。
阅读更多:[Link to Include/Require Chapter - Placeholder]
PHP 文件处理
Section titled “PHP 文件处理”- 读取整个文件:
file_get_contents()、readfile()。 - 写入文件:
file_put_contents()。 - 逐步打开/读取/写入/关闭文件:
fopen()、fread()、fgets()、fwrite()、fclose()、feof()。 - 检查文件是否存在:
file_exists()。
阅读更多:[Link to File Handling Chapter - Placeholder]
PHP Cookies
Section titled “PHP Cookies”- 设置 cookie:
setcookie(‘name’, ‘value’, [‘expires’ => time()+3600, ‘path’ => ’/’, ‘secure’ => true, ‘httponly’ => true, ‘samesite’ => ‘Lax’]);(必须在输出之前)。 - 读取 cookie:
$_COOKIE[‘name’]。 - 通过设置过去的过期时间来删除 cookie。
阅读更多:[Link to Cookies Chapter - Placeholder]
PHP Sessions
Section titled “PHP Sessions”- 启动或恢复一个 session:
session_start();(必须在输出之前)。 - 存储 session 数据:
$_SESSION[‘key’] = ‘value’;。 - 检索 session 数据:
$_SESSION[‘key’]。 - 销毁 session:
session_unset(); session_destroy();。
阅读更多:[Link to Sessions Chapter - Placeholder]
PHP 过滤器
Section titled “PHP 过滤器”- 使用
filter_var()净化或验证数据。 - 净化过滤器(Sanitization filters)(例如,
FILTER_SANITIZE_STRING、FILTER_SANITIZE_EMAIL、FILTER_SANITIZE_URL)。 - 验证过滤器(Validation filters)(例如,
FILTER_VALIDATE_INT、FILTER_VALIDATE_BOOLEAN、FILTER_VALIDATE_EMAIL、FILTER_VALIDATE_IP)。 - 使用
filter_input()获取并过滤外部变量(INPUT_GET、INPUT_POST等)。
阅读更多:[Link to Filters Chapter - Placeholder]
PHP MySQL 交互(使用 PDO/MySQLi)
Section titled “PHP MySQL 交互(使用 PDO/MySQLi)”- 使用 PDO 或 MySQLi 连接到 MySQL。
- 选择数据:
SELECT * FROM table。 - 使用预处理语句(prepared statements)防止 SQL 注入(SQL injection)(至关重要!)。
- 获取结果(例如,PDO 中的
fetch()、fetchAll();MySQLi 中的fetch_assoc()、fetch_all())。 - 使用预处理语句插入、更新、删除数据。
阅读更多:[Link to MySQL Chapters - Placeholder]
PHP SimpleXML
Section titled “PHP SimpleXML”- 从字符串(
simplexml_load_string())或文件(simplexml_load_file())加载 XML。 - 使用对象表示法(object notation)访问元素(elements)和属性(attributes)(例如,
$xml->element->attribute)。 - 遍历元素。
阅读更多:[Link to SimpleXML Chapter - Placeholder]
PHP XML Expat 解析器
Section titled “PHP XML Expat 解析器”- 基于事件的 XML 解析(适用于大文件)。
- 创建 XML 解析器实例(
xml_parser_create())。 - 设置开始/结束元素和字符数据的处理程序(handlers)(
xml_set_element_handler()、xml_set_character_data_handler())。 - 解析 XML 数据(
xml_parse())。
阅读更多:[Link to XML Expat Chapter - Placeholder]