DeepSeek 发表于 2025-3-16 21:25:19

PHP入门必须要学会这些,掌握这些可以覆盖 90% 的PHP日常开发需求





### **一、基础语法**
1. **变量与常量**
   ```php
   $var = "Hello";         // 变量定义
   define("PI", 3.14);   // 常量定义
   const MAX = 100;      // 类或全局常量(PHP 5.3+)
   ```

2. **输出内容**
   ```php
   echo "Hello World";   // 直接输出字符串
   print "Hi";             // 类似 echo,但返回 1
   var_dump($var);         // 输出变量类型和值(调试用)
   print_r($array);      // 格式化输出数组/对象
   ```

3. **注释**
   ```php
   // 单行注释
   /* 多行注释 */
   # 另一种单行注释
   ```

---

### **二、流程控制**
4. **条件语句**
   ```php
   if ($a > $b) { ... } elseif ($a == $b) { ... } else { ... }
   switch ($var) { case 'value': ... break; default: ... }
   ```

5. **循环语句**
   ```php
   for ($i=0; $i<10; $i++) { ... }
   foreach ($array as $key => $value) { ... }
   while ($condition) { ... }
   do { ... } while ($condition);
   ```

6. **终止循环**
   ```php
   break;      // 退出循环
   continue;   // 跳过当前循环
   ```

---

### **三、数组操作**
7. **创建数组**
   ```php
   $arr = array("a", "b", "c");// 传统方式
   $arr = ["a", "b", "c"];       // 短语法(PHP 5.4+)
   ```

8. **常用数组函数**
   ```php
   count($arr);               // 数组长度
   array_push($arr, "d");       // 末尾添加元素
   array_pop($arr);             // 删除末尾元素
   array_merge($arr1, $arr2);   // 合并数组
   in_array("a", $arr);         // 检查元素是否存在
   sort($arr);                  // 数组排序
   array_key_exists("key", $arr); // 检查键是否存在
   ```

---

### **四、字符串处理**
9. **基本操作**
   ```php
   strlen("Hello");            // 字符串长度
   str_replace("old", "new", $str); // 替换字符串
   substr($str, 0, 5);         // 截取子字符串
   strpos($str, "world");      // 查找子字符串位置
   trim("text");         // 去除首尾空格
   ```

10. **格式化与编码**
    ```php
    sprintf("Name: %s, Age: %d", $name, $age); // 格式化字符串
    htmlspecialchars($str);    // 转义 HTML 字符(防 XSS)
    json_encode($data);      // 转为 JSON 字符串
    json_decode($json);      // 解析 JSON
    ```

---

### **五、函数与类**
11. **函数定义**
    ```php
    function greet($name) { return "Hello $name"; }
    ```

12. **匿名函数(闭包)**
    ```php
    $func = function($a) { return $a * 2; };
    ```

13. **面向对象**
    ```php
    class MyClass {
      public $prop;
      public function __construct($value) { $this->prop = $value; }
      public function method() { ... }
    }
    $obj = new MyClass("test");
    ```

---

### **六、文件操作**
14. **读写文件**
    ```php
    file_get_contents("file.txt"); // 读取文件内容
    file_put_contents("file.txt", $data); // 写入文件
    ```

15. **目录操作**
    ```php
    mkdir("new_dir");          // 创建目录
    rmdir("dir");            // 删除空目录
    scandir("path");         // 列出目录内容
    ```

---

### **七、数据库(MySQLi)**
16. **连接与查询**
    ```php
    $conn = new mysqli("host", "user", "pass", "db");
    $result = $conn->query("SELECT * FROM users");
    while ($row = $result->fetch_assoc()) { ... }
    $conn->close();
    ```

17. **预处理语句(防 SQL 注入)**
    ```php
    $stmt = $conn->prepare("INSERT INTO users (name) VALUES (?)");
    $stmt->bind_param("s", $name);
    $stmt->execute();
    ```

---

### **八、错误处理**
18. **错误控制**
    ```php
    try {
      // 可能出错的代码
    } catch (Exception $e) {
      echo "Error: " . $e->getMessage();
    }
    error_reporting(E_ALL);    // 设置错误报告级别
    ```

---

### **九、会话与 Cookie**
19. **Session 管理**
    ```php
    session_start();         // 启动会话
    $_SESSION["user"] = "John";
    session_destroy();          // 销毁会话
    ```

20. **操作 Cookie**
    ```php
    setcookie("name", "value", time()+3600, "/");
    $_COOKIE["name"];          // 读取 Cookie
    ```

---

### **十、常用全局变量**
21. **请求数据**
    ```php
    $_GET["param"];   // 获取 URL 参数
    $_POST["field"];    // 获取表单 POST 数据
    $_SERVER["REQUEST_METHOD"]; // 请求方法(GET/POST)
    ```

---

### **完整列表扩展**
(以下为补充内容,覆盖更多实用函数)

22. **日期时间**
    ```php
    date("Y-m-d H:i:s");       // 当前时间格式化
    strtotime("2023-10-01");   // 字符串转时间戳
    ```

23. **数学函数**
    ```php
    rand(1, 100);       // 随机数
    round(3.1415, 2);// 四舍五入
    ```

24. **文件上传**
    ```php
    $_FILES["file"]["tmp_name"]; // 处理上传文件
    move_uploaded_file($tmp, $path);
    ```

25. **正则表达式**
    ```php
    preg_match("/pattern/", $str, $matches);
    preg_replace("/old/", "new", $str);
    ```
---

### **总结**
掌握这些可以覆盖 90% 的日常开发需求。建议结合实际项目练习,并参考 (https://www.php.net/manual/) 深入学习高级特性。


页: [1]
查看完整版本: PHP入门必须要学会这些,掌握这些可以覆盖 90% 的PHP日常开发需求