PHP语法与基础主要包括以下几个方面:
一、PHP脚本结构与注释
-
脚本开头与结束:
PHP脚本通常以<?php开始,以?>结束。在现代PHP实践中,为了防止意外输出和提高代码安全性,建议仅在文件末尾或纯PHP文件中使用?>结束标签,而在包含HTML混合的PHP文件中省略结束标签。 -
短标签:
PHP还支持短标签形式<?(在PHP配置文件中启用),但因其可能导致兼容性问题,推荐使用标准长标签<?php。 -
注释:
- 单行注释:使用
//后跟注释内容,例如:
php
// This is a single-line comment - 多行注释:使用
/*开始,*/结束,例如:
php
/* This is a
multi-line comment */
二、变量
-
声明与赋值:
变量以$符号开头,后面紧跟变量名。声明并赋值时可以直接写成:
php
$myVariable = "Hello, World!";
PHP是弱类型语言,声明变量时无需指定数据类型,类型会在运行时自动推断。 -
变量名规则:
- 变量名必须以字母或下划线
_开始,后续字符可以是字母、数字或下划线。 - 变量名区分大小写。
- 避免使用PHP保留关键字作为变量名。
三、数据类型
PHP支持多种数据类型:
- 标量类型:
string:字符串,可以用单引号'或双引号"包围,如"Hello, World!"或'Hello, World!'。int:整数,如42。float(或double):浮点数,如3.14。bool:布尔值,只有true和false两个值。-
null:表示无值或未定义。 -
复合类型:
array:数组,可以存储多个值。有索引数组(整数键)和关联数组(字符串键)两种形式。
php
$fruits = array("apple", "banana", "orange");
$colors = array("red" => "#FF0000", "green" => "#00FF00", "blue" => "#0000FF");-
object:对象,用于封装数据和方法,通过类实例化得到。 -
特殊类型:
resource:表示对系统资源(如文件、数据库连接)的抽象引用。callable:表示可调用的类型,如函数名、匿名函数或类的方法。
四、操作符与表达式
-
算术操作符:
+,-,*,/,%(求余),以及自增自减操作符++和--。 -
比较操作符:
==(等于)、===(全等,比较值和类型)、!=(不等于)、!==(不全等)、<、>、<=、>=、<=>(太空船操作符,比较并返回-1、0、1)。 -
逻辑操作符:
&&(逻辑与)、||(逻辑或)、!(逻辑非)。 -
位操作符:
&(按位与)、|(按位或)、^(按位异或)、~(按位取反)、<<(左移)、>>(右移)。 -
赋值操作符:
=(简单赋值)、=+,=-,=*,=/,=%,=&,|=,^=,<<=,>>=(复合赋值)。 -
字符串操作符:
.(字符串拼接)。
五、控制结构
- 条件判断:
if、else、elseif结构:
php
if ($condition) {
// code if true
} elseif ($anotherCondition) {
// code if anotherCondition is true
} else {
// code if all conditions are false
}-
switch、case、default结构:
php
switch ($expression) {
case 'value1':
// code for value1
break;
case 'value2':
// code for value2
break;
default:
// code for default case
} -
循环:
for循环:
php
for ($i = 0; $i < 10; $i++) {
echo $i;
}while循环:
php
$counter = 0;
while ($counter < 10) {
echo $counter++;
}do...while循环:
php
$counter = 0;
do {
echo $counter++;
} while ($counter < 10);foreach循环(遍历数组):
php
$fruits = array("apple", "banana", "orange");
foreach ($fruits as $fruit) {
echo $fruit;
}
六、函数
-
定义:
使用function关键字定义函数,例如:
php
function greet($name) {
echo "Hello, " . $name . "!";
} -
调用:
调用已定义的函数,传入参数:
php
greet("Alice"); -
参数与返回值:
- 函数可以有任意数量的参数,参数之间用逗号分隔。
-
可以使用
return语句返回函数结果。 -
可变参数:
使用...(省略号)表示函数可以接受任意数量的参数作为一个数组。
七、数组
- 创建:
- 索引数组:
php
$numbers = array(1, 2, 3, 4, 5); -
关联数组(键值对):
php
$students = array(
"John" => 20,
"Jane" => 22,
"Bob" => 21
); -
访问:
- 索引数组:
php
echo $numbers[0]; // 输出 1 -
关联数组:
php
echo $students["John"]; // 输出 20 -
操作:
使用count()获取数组长度,isset()判断元素是否存在,unset()删除元素,array_push(),array_pop()对数组进行堆栈操作,array_shift(),array_unshift()对数组进行队列操作,array_merge()合并数组,array_key_exists()检查键是否存在等。
八、字符串操作
PHP提供了丰富的字符串函数,如 strlen() 计算长度,strpos() 查找子串位置,substr() 截取子串,str_replace() 替换子串,trim()、ltrim()、rtrim() 去除空格,strtolower()、strtoupper() 转换大小写等。
九、常量
使用 define() 函数定义常量,常量一旦定义就不能改变其值。定义时不需要 $ 符号,如:
define("PI", 3.14159);
echo PI; // 输出 3.14159
十、错误与异常处理
-
错误报告:
设置error_reporting()、display_errors(在php.ini或.htaccess中)以控制错误显示级别。 -
错误抑制:
使用@操作符抑制特定语句产生的错误信息。 -
自定义错误处理:
使用set_error_handler()注册用户自定义的错误处理函数。 -
异常处理:
使用try-catch结构捕获和处理异常:
`php
try {
// 可能抛出异常的代码
} catch (Exception $e) {
echo "Caught exception: " . $e->getMessage();
}
当前文章价值2.29元,扫一扫支付后添加微信提供帮助!(如不能解决您的问题,可以申请退款)

评论已关闭!