PHP介绍
1、什么是PHP
PHP(Hypertext Preprocessor 超文本预处理器) 的简称,是一种被广泛应用的开源通用的服务器端脚本语言,适用于 Web 开发并可嵌入 HTML 中。
- 特点:
- 通用:指跨平台,如:Windows、Linux、MacOS
- 开源:意味着你可以轻松获取全部源代码,并进行定制或扩展
- 免费:意味着你不必为PHP花一分钱,哪怕用在商业项目中
- 服务器端:意味着你必须将它安装在服务器环境下才可以使用
- 脚本语言:解释型语言,按编写顺序执行。是指不需要编译,直接由解释器/虚拟机执行的编程语言
2、PHP
能干嘛?
- 可以快速动态的生成HTML页面
- 可以返回前端需要的各种类型的数据
- 可以高效安全的处理表单数据
- 可以安全的操作服务器上的文件
- 可以控制与客户端的会话( Cookie/Session )
- 可以对用户的行为进行授权控制
- 可以高效安全的操作各种类型的数据库
- 通过扩展,可以实现加密,压缩等其他功能
- 可以提供接口数据,包括:小程序、APP、等其他语言
3、php
程序执行流程

环境介绍
1、web
环境
- 使用 PHP 需要先安装环境,安装环境比较麻烦,需要安装Web服务、PHP应用服务器、MySQL管理系统。
- Web服务:apache 和 nginx
- PHP:多版本
- MySQL:多版本
2、环境集成包
基础语法
一、php 程序
- PHP 文件的默认扩展名是 ".php"
- PHP 文件中可以包含
html
、CSS
、JavaScript
代码
组成 |
描述 |
<?php ... ?> |
PHP 标记 |
PHP代码 |
函数、数组、流程控制、类、方法... |
; 、{} |
语句结束符 |
空白符 |
合理使用空白符可增强代码可读性 |
注释 |
// 单行注释 , /* 多行注释 */ |
1、PHP
标记
- 开始标记
<?php
和 结束标记 ?>
中间写 PHP
代码
当解析一个文件时,PHP
会寻找起始和结束标记,也就是告诉 PHP
开始和停止解析二者之间的代码。此种解析方式使得 PHP
可以被嵌入到各种不同的文档中去,而任何起始和结束标记之外的部分都会被 PHP
解析器忽略。
2、PHP
代码
指令 |
描述 |
echo |
可以输出一个或多个字符串,用逗号(,)隔开 |
print |
只允许输出一个字符串 |
3、语句结束符 ;
4、注释
二、php
变量
1、声明变量
2、赋值运算符
3、php
连接符
4、变量命名规则
注意:保证变量名的唯一性,变量名重复会导致后声明的变量会覆盖之前声明的变量
数据类型
一、php
标量数据类型
类型 |
描述 |
布尔型 Boolean |
true 和 false |
整型 Integer |
0 - 无限大 |
浮点型 Float |
带小数的数字 |
字符串 String |
汉字、英文、符合、其它国家语言 |
echo 输出数据值,开发时使用
var_dump 可以打印数据类型和值,测试时使用
1、整型
- 整数不能包含逗号或空格
- 整数是没有小数点的
- 整数可以是正数或负数
- 整型可以用三种格式来指定:十进制、十六进制、八进制
2、浮点型
3、字符串
- 可以用单引号
' '
也可以用双引号" "
- 双引号
" "
声明的变量如果里面有变量会输出变量的值
4、布尔型
二、php
复合数据类型
类型 |
描述 |
array |
数组 |
object |
对象 |
callable |
可调用 |
iterable |
可迭代 |
三、php
特殊数据类型
类型 |
描述 |
空值 NULL |
表示变量没有值 |
resource |
资源 |
1、NULL
运算符
一、运算符
运算符 |
描述 |
+ |
相加 |
- |
相减 |
* |
相乘 |
/ |
相除 |
% |
取余 |
++ |
加加 |
-- |
减减 |
. |
连接、用在字符串 |
二、赋值运算符
运算符 |
描述 |
= |
赋值运算符 |
+= |
先加,后赋值 |
-= |
先减,后赋值 |
*= |
先乘,后赋值 |
/= |
先除,后赋值 |
%= |
先取余,后赋值 |
.= |
先连接,后赋值 |
三、比较运算符
运算符 |
描述 |
> |
大于 |
>= |
大于等于 |
< |
小于 |
<= |
小于等于 |
== |
等于 |
!= |
不等于 |
=== |
恒等于 |
!== |
恒不等 |
1、===
恒等于
===
先比较类型,类型不一致直接返回false
,类型相同则比较值
!===
恒不等则反之
四、逻辑运算符
运算符 |
描述 |
and 和 && |
与 |
or 和 ` |
|
xor |
异或 |
! |
非 |
数组
一、数组
类型 |
描述 |
数组 Array |
数组可以在一个变量中存储多个值 |
1、创建空数组
2、创建索引数组
3、创建关联数组
4、打印数组 print_r
二、php
多维数组
1、二维数组
2、多维数组访问
三、php
数组循环
1、foreach
循环
2、key
和 value
条件判断
1、三元运算符 ? :
2、if
3、if
else
4、if
elseif
else
5、switch
case
default
循环
1、while
2、do
while
3、for
4、continue
- 执行到
continue
时跳出当前循环执行下一个循环
- 在循环语句中使用
while
for
5、break
- 运行到break能结束当前循环
- 可以跳出多层循环
- 在循环语句中使用
while
for
switch
示例1:
示例2:
函数
一、函数介绍
1、什么是函数
- 函数是一段可以重复执行的代码片断
- 函数是实现代码复用的重要手段
- 函数是现代编程语言最重要的基本单元
- 函数永远是编程的核心工作
2、函数的分类
- 根据函数的提供者(编写者),分为二类
- 系统函数: 编程语言开发者事先写好提供给开发者直接使用的
- 自定义函数: 用户根据自身需求,对系统功能进行扩展
二、系统函数
- PHP 的真正力量来自它的函数:它拥有超过 1000 个内建的函数。
函数集合名 |
描述 |
String |
字符串处理函数 |
Array |
数组函数允许您访问和操作数组 |
MySQLi |
允许您访问 MySQL 数据库服务器 |
Date |
服务器上获取日期和时间 |
Filesystem |
允许您访问和操作文件系统 |
Mail |
数学函数能处理 integer 和 float 范围内的值 |
HTTP |
允许您在其他输出被发送之前,对由 Web 服务器发送到浏览器的信息进行操作 |
Calendar |
日历扩展包含了简化不同日历格式间转换的函数 |
Directory |
允许您获得关于目录及其内容的信息 |
Error |
允许您对错误进行处理和记录 |
Filter |
进行验证和过滤 |
FTP |
通过文件传输协议 (FTP) 提供对文件服务器的客户端访问 |
MySQL |
允许您访问 MySQL 数据库服务器 |
SimpleXML |
允许您把 XML 转换为对象 |
XML |
允许我们解析 XML 文档,但无法对其进行验证 |
Zip |
压缩文件函数允许我们读取压缩文件 |
1、String
字符串函数
函数 |
描述 |
strtolower() |
将字符串转化为小写 |
strtoupper() |
将字符串转化为大写 |
strlen() |
获取字符串长度 |
trim() |
去除字符串首尾处的空白字符(或者其他字符) |
ltrim() |
去除字符串开头的空白字符(或者其他字符) |
rtrim() |
去除字符串结尾的空白字符(或者其他字符) |
str_replace() |
字符串替换 |
strpbrk() |
字符串中查找一组字符是否存在 |
explode() |
将字符串分割为数组 |
md5() |
将字符串进行md5加密 |
2、Array
数组函数
函数 |
描述 |
count() |
数组中元素的数量 |
implode() |
把数组元素组合为字符串 |
array_merge() |
两个数组合并为一个数组 |
in_array() |
数组中是否存在指定的值 |
sort() |
对数值数组进行升序排序 |
rsort() |
对数值数组进行降序排序 |
array_unique() |
移除数组中的重复的值 |
array_push() |
将一个或多个元素插入数组的末尾 |
array_pop() |
删除数组中的最后一个元素 |
三、自定义函数
1、函数的基本语法
- 必须使用关键字:
function
声明
- 函数名称不区分大小写,多个单词推荐使用下划线连接
2、调用函数和传参
- 方法参数可以有默认值,有默认值可以不传值
- 方法必须以返回的方式,不要用
echo
输出的方式
3、作用域
- php中, 只有函数作用域和全局作用域
- 所有函数作用域中的变量,外部不可见
- 全局作用域声明变量,在函数中是可见的
__EOF__
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」