超详细 PHP 入门教程

PHP(全称:Hypertext Preprocessor)是一种广泛使用的开源脚本语言,特别适合 Web 开发,可以嵌入 HTML 中使用。它是一种服务端脚本语言,在浏览器端没有直接执行,通常用于动态生成网页内容。

以下是这篇 超详细 PHP 入门教程,我们将从基础到实际应用逐步讲解。


目录

  1. 环境搭建
  2. PHP 基础语法
    • 变量
    • 数据类型
    • 运算符
  3. 条件语句与循环
  4. 函数
  5. 数组
  6. 表单处理与用户输入
  7. 文件操作
  8. 面向对象编程(OOP)
  9. 数据库操作(MySQL)
  10. 常用 PHP 内置函数

1. 环境搭建

1.1 安装 XAMPP

最简单的 PHP 开发环境搭建方法是使用 XAMPP,它将 Apache 服务器、MySQL 数据库、PHP 解释器以及 phpMyAdmin 集成在一起。

  • 下载地址:XAMPP 官方下载
  • 安装并启动 XAMPP,启动 Apache 和 MySQL 服务。

1.2 创建第一个 PHP 文件

在安装好 XAMPP 后,创建一个文件夹在 htdocs 中(比如 my_project),然后在文件夹内创建一个 PHP 文件,比如 index.php

在 index.php 文件中,输入如下代码:

<?php
  echo "Hello, World!";
?>

访问 http://localhost/my_project/index.php,你应该能看到浏览器显示 "Hello, World!"


2. PHP 基础语法

2.1 变量

在 PHP 中,变量以 $ 符号开头。PHP 是弱类型语言,变量的类型是动态决定的。

<?php
  $name = "John";
  $age = 25;
  $is_student = true;
  echo "Name: " . $name . ", Age: " . $age;
?>

2.2 数据类型

PHP 主要有以下数据类型:

  • 字符串 (String): 字符串可以用单引号 ' 或双引号 " 包围。
  • 整数 (Integer): 整数值。
  • 浮点数 (Float 或 Double): 带小数的数字。
  • 布尔值 (Boolean): true 或 false
  • 数组 (Array): 存储多个数据项。
  • 对象 (Object): 类的实例。
  • NULL (NULL): 没有值。

2.3 运算符

PHP 支持常见的算术运算符、比较运算符、逻辑运算符等。

  • 算术运算符:+-*/%
  • 比较运算符:==!=><>=<=
  • 逻辑运算符:&&(与),||(或),!(非)
<?php
  $a = 5;
  $b = 10;
  $sum = $a + $b;
  echo $sum; // 输出 15
?>

3. 条件语句与循环

3.1 条件语句

常用的条件语句有 ifelseelseif,以及 switch

<?php
  $num = 20;
  if ($num > 10) {
    echo "Number is greater than 10";
  } else {
    echo "Number is less than or equal to 10";
  }
?>

3.2 循环

PHP 支持多种循环结构,如 forwhiledo-while 和 foreach

<?php
  for ($i = 1; $i <= 5; $i++) {
    echo $i . " ";
  }
  // 输出 1 2 3 4 5
?>

4. 函数

4.1 定义和调用函数

PHP 使用 function 关键字来定义函数。函数可以接受参数并返回结果。

<?php
  function greet($name) {
    return "Hello, " . $name;
  }

  echo greet("John"); // 输出 Hello, John
?>

4.2 内置函数

PHP 有大量的内置函数,如 strlen()strpos()array_push() 等。

<?php
  $text = "Hello, PHP!";
  echo strlen($text); // 输出 13
?>

5. 数组

5.1 数组的创建和使用

PHP 支持索引数组和关联数组。

<?php
  // 索引数组
  $fruits = ["apple", "banana", "orange"];
  echo $fruits[1]; // 输出 banana

  // 关联数组
  $person = ["name" => "John", "age" => 25];
  echo $person["name"]; // 输出 John
?>

5.2 数组函数

PHP 提供了很多内置的数组函数,如 count()array_push()array_pop() 等。

<?php
  $arr = [1, 2, 3];
  array_push($arr, 4); // 向数组尾部添加元素
  print_r($arr); // 输出 Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 )
?>

6. 表单处理与用户输入

PHP 可以轻松地处理 HTML 表单提交的用户数据。

<form action="process.php" method="POST">
  <input type="text" name="username" placeholder="Enter your name">
  <input type="submit" value="Submit">
</form>

在 process.php 中:

<?php
  if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $username = $_POST['username'];
    echo "Hello, " . htmlspecialchars($username);
  }
?>

7. 文件操作

PHP 提供了丰富的文件操作函数,如 fopen()fwrite()fclose()

7.1 读取文件

<?php
  $file = fopen("example.txt", "r");
  $content = fread($file, filesize("example.txt"));
  fclose($file);
  echo $content;
?>

7.2 写入文件

<?php
  $file = fopen("example.txt", "w");
  fwrite($file, "Hello, PHP!");
  fclose($file);
?>

8. 面向对象编程(OOP)

PHP 支持面向对象编程。

8.1 定义类和对象

<?php
  class Car {
    public $model;
    public $color;

    function __construct($model, $color) {
      $this->model = $model;
      $this->color = $color;
    }

    function display() {
      echo "Model: " . $this->model . ", Color: " . $this->color;
    }
  }

  $car = new Car("Tesla", "Red");
  $car->display(); // 输出 Model: Tesla, Color: Red
?>

9. 数据库操作(MySQL)

9.1 连接数据库

<?php
  $conn = mysqli_connect("localhost", "root", "", "test_db");

  if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
  }
?>

9.2 查询数据库

<?php
  $sql = "SELECT * FROM users";
  $result = mysqli_query($conn, $sql);

  while ($row = mysqli_fetch_assoc($result)) {
    echo $row['username'] . "<br>";
  }
?>

10. 常用 PHP 内置函数

  • strlen():计算字符串长度;
  • str_replace():字符串替换;
  • array_merge():合并数组;
  • date():格式化日期;
  • json_encode() 和 json_decode():JSON 编解码。

总结

这篇教程涵盖了 PHP 的基础语法、条件语句、循环、函数、数组、文件操作、面向对象编程、表单处理、数据库操作等核心概念。PHP 是

一个强大的 Web 开发语言,掌握其基础知识后,你可以开始开发动态网站和 Web 应用。