PHP基础语法讲解

大家好,我是程序员小羊!

前言:

PHP(Hypertext Preprocessor)是一种常用于网页开发的服务器端脚本语言,易于学习并且与 HTML 紧密结合。以下是

PHP 的基础语法详细讲解。

1. PHP 基础结构

1.1 PHP 脚本结构

PHP 代码通常嵌入到 HTML 文件中,并且用特殊的标记 <?php ?> 或短标记 <? ?> 包围:

php 复制代码
<?php
  echo "Hello, World!";
?>
  • <?php 是 PHP 代码的起始标记,?> 是结束标记。
  • PHP 代码可以放在 HTML 代码中间,服务器解析时只执行 PHP 代码,输出结果会生成标准 HTML 页面。
1.2 PHP 文件扩展名

PHP 文件通常以 .php 作为扩展名,例如 index.php

2. 基本语法规则

2.1 注释

PHP 支持 C 和 C++ 风格的注释:

  • 单行注释:

    php 复制代码
    // 这是单行注释
    # 这也是单行注释
  • 多行注释:

    php 复制代码
    /*
     这是多行注释
     可以有多行内容
    */
2.2 大小写敏感
  • PHP 中的变量名是大小写敏感的。

    php 复制代码
    $Variable = "Hello";
    echo $variable;  // 会出错,因为大小写不匹配
  • 函数名和关键字则不区分大小写

    php 复制代码
    echo "hello";  // 输出 "hello"
    ECHO "world";  // 也能输出 "world"
2.3 分号

每个 PHP 语句必须以分号 (;) 结束。如果没有分号,会导致解析错误。

php 复制代码
echo "Hello, World!";  // 正确
echo "Hello, World!"   // 错误,缺少分号

3. 变量

3.1 变量声明

PHP 变量不需要显式声明类型,使用 $ 符号加上变量名来声明和使用变量:

php 复制代码
$name = "Alice";
$age = 25;
  • PHP 是弱类型语言,变量类型由赋给它的值自动决定。
  • 变量名必须以字母或下划线 _ 开头,后面可以跟字母、数字或下划线。
3.2 变量类型

PHP 支持多种变量类型:

  • 字符串(String)

    php 复制代码
    $str = "Hello";
  • 整数(Integer)

    php 复制代码
    $int = 123;
  • 浮点数(Float)

    php 复制代码
    $float = 12.34;
  • 布尔值(Boolean)

    php 复制代码
    $isTrue = true;
  • 数组(Array)

    php 复制代码
    $arr = array("apple", "banana", "cherry");
  • 对象(Object)

    PHP 通过类(class)创建对象,详细内容后续介绍。

  • NULL 类型

    变量未定义或被赋值为 NULL 时,它就是 NULL 类型:

    php 复制代码
    $var = null;

4. 常量

常量的值一旦定义就不能改变,使用 define() 函数定义:

php 复制代码
define("PI", 3.14159);
echo PI;  // 输出 3.14159
  • 常量名通常使用大写字母表示,定义后不需要 $ 符号引用。

5. 字符串操作

5.1 字符串拼接

PHP 中使用 . 运算符拼接字符串:

php 复制代码
$greeting = "Hello, " . "World!";
echo $greeting;  // 输出 "Hello, World!"
5.2 字符串插值

使用双引号定义的字符串支持变量插值:

php 复制代码
$name = "Alice";
echo "Hello, $name";  // 输出 "Hello, Alice"

单引号字符串不支持变量插值,变量会按字面量输出:

php 复制代码
echo 'Hello, $name';  // 输出 "Hello, $name"

6. 运算符

6.1 算术运算符

PHP 支持常见的算术运算符:

php 复制代码
$a = 10;
$b = 3;

echo $a + $b;  // 加法,输出 13
echo $a - $b;  // 减法,输出 7
echo $a * $b;  // 乘法,输出 30
echo $a / $b;  // 除法,输出 3.3333
echo $a % $b;  // 取余数,输出 1
6.2 赋值运算符

常用赋值运算符:

php 复制代码
$a = 5;      // 基本赋值
$a += 10;    // 相当于 $a = $a + 10,结果是 15
$a -= 2;     // 相当于 $a = $a - 2,结果是 13
$a *= 3;     // 相当于 $a = $a * 3,结果是 39
6.3 比较运算符

比较两个值的关系:

php 复制代码
$a == $b;  // 相等
$a === $b; // 全等(值和类型相同)
$a != $b;  // 不等
$a > $b;   // 大于
$a < $b;   // 小于
6.4 逻辑运算符

用于布尔运算:

php 复制代码
$and = true && false;  // 逻辑与,结果为 false
$or  = true || false;  // 逻辑或,结果为 true
$not = !true;          // 逻辑非,结果为 false

7. 条件语句

7.1 if-else 语句

PHP 支持标准的条件语句 if-else 语句:

php 复制代码
$age = 18;

if ($age >= 18) {
    echo "You are an adult.";
} else {
    echo "You are a minor.";
}
7.2 elseif

多条件分支使用 elseif

php 复制代码
$grade = 85;

if ($grade >= 90) {
    echo "A";
} elseif ($grade >= 80) {
    echo "B";
} else {
    echo "C";
}
7.3 三元运算符

简洁的条件语句可以使用三元运算符:

php 复制代码
$result = ($age >= 18) ? "Adult" : "Minor";

8. 循环结构

8.1 while 循环

while 循环会在条件为真时重复执行代码块:

php 复制代码
$i = 1;

while ($i <= 5) {
    echo $i;  // 输出 1 到 5
    $i++;
}
8.2 for 循环

for 循环适用于已知循环次数的情况:

php 复制代码
for ($i = 1; $i <= 5; $i++) {
    echo $i;  // 输出 1 到 5
}
8.3 foreach 循环

foreach 用于遍历数组:

php 复制代码
$arr = array("apple", "banana", "cherry");

foreach ($arr as $fruit) {
    echo $fruit;  // 输出 "apple", "banana", "cherry"
}

9. 函数

9.1 定义和调用函数

PHP 函数使用 function 关键字定义:

php 复制代码
function greet($name) {
    return "Hello, $name!";
}

echo greet("Alice");  // 输出 "Hello, Alice!"
9.2 默认参数

函数参数可以有默认值:

php 复制代码
function greet($name = "Guest") {
    return "Hello, $name!";
}

echo greet();  // 输出 "Hello, Guest!"
9.3 可变参数

PHP 函数可以通过 ... 来接收可变数量的参数:

php 复制代码
function sum(...$numbers) {
    return array_sum($numbers);
}

echo sum(1, 2, 3);  // 输出 6

10. 数组

10.1 索引数组

PHP 的数组类似于其他语言的列表或数组:

php 复制代码
$fruits = array("apple", "banana", "cherry");

echo $fruits[0];  // 输出 "apple"
10.2 关联数组

关联数组使用键值对:

php 复制代码
$ages = array("Alice" => 25, "Bob" => 30);

echo $ages["Alice"];  // 输出 25

11. 面向对象编程 (OOP)

PHP 支持面向对象编程,以下是简单的类和对象的示例:

php 复制代码
class Person {
    public $name;

    public function __construct($name) {
        $this->name = $name;
    }

    public function greet() {
        return "Hello, " . $this->name;
    }
}

$person = new Person("Alice");
echo $person->greet();  // 输出 "Hello, Alice"

12. 表单处理

PHP 通常用于处理网页表单,数据通过 $_GET$_POST 数组传递:

php 复制代码
// 表单提交方式是 POST
$name = $_POST['name'];
echo "Hello, $name";

13. 会话管理

PHP 提供 session 机制用于在用户间传递数据:

php 复制代码
session_start();
$_SESSION['username'] = "Alice";

这就是 PHP 的基础语法,涵盖了从变量、条件语句、循环、数组、函数到面向对象编程等基本内容。

结尾

csharp 复制代码
今天这篇文章就到这里了,大厦之成,非一木之材也;大海之阔,非一流之归也。感谢大家观看本文
相关推荐
两个人的幸福10 天前
Windows 桌面应用自研 PHP 队列(下):完整代码与六大工程化优化
php
BingoGo12 天前
PHP 泛型之殇 泛型 RFC 提案被拒绝
后端·php
JaguarJack12 天前
PHP 泛型之殇 泛型 RFC 提案被拒绝
后端·php
用户30745969820713 天前
PHP 扩展——从入门到理解
php
鹏仔先生14 天前
拷贝漫画APP下载页PHP程序,后台带免费AI写作
php
云水一下14 天前
从零开始学 PHP 系列(一):PHP 的前世今生与开发环境搭建
开发语言·php
xingpanvip14 天前
星盘接口开发文档:本命盘接口指南
android·开发语言·css·php·lua
酉鬼女又兒14 天前
零基础入门计算机网络运输层:端到端通信核心作用、端口号分类规则、复用分用工作机制及UDP与TCP协议全方位对比详解
网络·网络协议·tcp/ip·计算机网络·考研·udp·php
dog25014 天前
不要再继续优化 TCP
网络协议·tcp/ip·php
Channing Lewis14 天前
PHP 解析 Excel 的那些坑:一次“行号错位”引发的数据丢失
开发语言·php·excel