当前位置:首页 > PHP

php 实现类

2026-01-14 13:01:07PHP

PHP 类的基本实现

在 PHP 中,类通过 class 关键字定义,后跟类名和一对花括号。类名通常遵循大驼峰命名法(如 ClassName)。以下是基本语法:

class ClassName {
    // 属性(成员变量)
    public $property;

    // 方法(成员函数)
    public function method() {
        // 方法逻辑
    }
}

类属性与访问修饰符

属性用于存储对象的状态,支持三种访问修饰符:

  • public:全局可访问
  • protected:仅类自身及子类可访问
  • private:仅类自身可访问
class User {
    public $name;          // 公共属性
    protected $password;  // 受保护属性
    private $token;       // 私有属性
}

类方法与构造函数

方法定义与普通函数类似,可包含参数和返回值。__construct 是特殊方法,在对象实例化时自动调用:

class Product {
    public $price;

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

    public function applyDiscount($percent) {
        $this->price *= (1 - $percent/100);
    }
}

实例化与对象操作

通过 new 关键字创建对象实例,并使用 -> 访问成员:

$product = new Product(100);  // 调用构造函数
$product->applyDiscount(10);  // 调用方法
echo $product->price;        // 访问属性(输出90)

继承与多态

使用 extends 实现继承,子类可重写父类方法:

class Animal {
    public function makeSound() {
        echo "Some sound";
    }
}

class Dog extends Animal {
    public function makeSound() {
        echo "Bark";
    }
}

$dog = new Dog();
$dog->makeSound();  // 输出"Bark"

静态成员

通过 static 关键字定义类级别的属性和方法,无需实例化即可访问:

class MathHelper {
    public static $pi = 3.14;

    public static function square($num) {
        return $num * $num;
    }
}

echo MathHelper::$pi;          // 输出3.14
echo MathHelper::square(5);    // 输出25

接口与抽象类

接口(interface)定义方法规范,抽象类(abstract class)可包含部分实现:

interface Logger {
    public function log($message);
}

abstract class Shape {
    abstract public function area();
}

class FileLogger implements Logger {
    public function log($message) {
        file_put_contents('log.txt', $message);
    }
}

魔术方法

PHP 提供特殊魔术方法,以双下划线开头,如 __toString() 用于对象字符串表示:

class Person {
    public $name;

    public function __toString() {
        return "Person: {$this->name}";
    }
}

$person = new Person();
$person->name = "Alice";
echo $person;  // 输出"Person: Alice"

命名空间与自动加载

命名空间解决类名冲突,PSR-4 标准实现自动加载:

namespace MyProject;

class MyClass {
    // 类实现
}

// composer.json 配置示例
{
    "autoload": {
        "psr-4": {
            "MyProject\\": "src/"
        }
    }
}

php 实现类

标签: php
分享给朋友:

相关文章

php实现搜索功能

php实现搜索功能

实现基本的搜索功能 在PHP中实现搜索功能通常涉及数据库查询。以下是一个简单的实现方式,假设使用MySQL数据库: <?php // 连接数据库 $conn = new mysqli('loc…

php实现验证码

php实现验证码

PHP实现验证码的方法 使用GD库生成验证码 GD库是PHP中处理图像的扩展,可用于生成验证码图片。 <?php session_start(); $width = 120; $height…

php 实现购物车

php 实现购物车

PHP 实现购物车功能 购物车功能是电子商务网站的核心部分,可以通过 PHP 和 Session 或数据库来实现。以下是两种常见的实现方式: 使用 Session 存储购物车数据 Session…

php 实现文件下载

php 实现文件下载

实现文件下载的基本方法 使用 PHP 实现文件下载的核心是通过设置 HTTP 头部信息,强制浏览器将文件作为附件下载而非直接显示。以下是一个基础实现示例: $file_path = '/path/…

php实现下载

php实现下载

PHP实现文件下载 使用PHP实现文件下载可以通过设置HTTP头部信息强制浏览器下载文件而非直接打开。以下是几种常见的方法: 方法一:直接输出文件内容 $file_path = 'path/to/…

php实现一个

php实现一个

PHP 实现一个简单的计算器 创建一个基本的计算器,支持加、减、乘、除运算。以下是一个完整的实现代码示例: <?php $result = ""; if ($_SERVER["REQUEST…