You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP技术问题:如何实现类中添加多个用户信息且不被覆盖

问题解决:存储所有用户信息的数组实现

你的问题出在类里用了单个变量$name存储用户名,每次调用add方法时,新用户名会直接覆盖旧值,所以最后只能保留最后一个添加的用户。要实现存储所有用户,需要把单个变量改成数组来存储多个值。

修正后的代码

class Users{
    public $users = []; // 初始化空数组用于存储用户
    
    function add($name){
        $this->users[] = $name; // 将新用户追加到数组末尾
    }
}

$users = new Users();
$users->add('Jane');
$users->add('Rick');
$users->add('Niles');

var_dump($users);

输出结果

执行后会得到包含所有三个用户名的数组:

object(Users)#1 (1) {
  ["users"]=>
  array(3) {
    [0]=>
    string(4) "Jane"
    [1]=>
    string(4) "Rick"
    [2]=>
    string(5) "Niles"
  }
}

关键改动说明

  • 将原来的public $name替换为public $users = [],用数组承载多个用户数据
  • add方法不再直接赋值覆盖,而是通过$this->users[] = $name把新用户追加到数组中,确保每次添加都保留之前的所有数据

内容的提问来源于stack exchange,提问作者Johnny Bravo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 00:22:04