加入收藏 | 设为首页 | 会员中心 | 我要投稿 鹰潭站长网 (https://www.0701zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP Bean 类处理 数组处理 可以控制它的属性

发布时间:2022-12-10 13:31:12 所属栏目:PHP教程 来源:转载
导读: 安装:
composer require marstm/bean
可以实现数据类型约束功能,形参约束,一次定义方便后期数据管理。
ArrayList配置bean做数据处理
ArrayList文档
在使用类里面直接引入Marstm\Bean
na

安装:

composer require marstm/bean

可以实现数据类型约束功能,形参约束,一次定义方便后期数据管理。

ArrayList配置bean做数据处理

ArrayList文档

在使用类里面直接引入Marstm\Bean

namespace Marstm\Test;
use Marstm\Bean;
class TestJBean
{
    use Bean;
}

功能方法:

new

实例对象

$userBean = UserBean::new();

bind

属性绑定数据

$userBean = UserBean::bind(["user_id" => 12, "user_name" => "new"]);

setField

设置映射属性字段名,在也不用担心字段名写错PHP数组,频繁去数据库查询表下有什么字段。

# user. 表前缀,不设置为空
$userBean = UserBean::new()->setField("user.");
//示例一
\DB::table("user")->select($userBean->toArray())->get();
//示例二
\DB::table("user")->select($userBean->getUserName())->where($userBean->getUserId(),"10086")->get();

toArray

输出数组

$userArr = UserBean::new()->toArray();

phpStorm 编辑器使用

生成get和set:类名右击->选择Generate->Getters and Setters->选择class 属性->ok 就可以生产了

快捷键 alt + insert

use Marstm\Bean;
class UserBean
{
    /**
     * @return int
     */
    public function getUserId(): int
    {
        return $this->user_id;
    }
    /**
     * @param int $user_id
     */
    public function setUserId(int $user_id): void
    {
        $this->user_id = $user_id;
    }
    /**
     * @return string
     */
    public function getUserName(): string
    {
        return $this->user_name;
    }
    /**
     * @param string $user_name
     */
    public function setUserName(string $user_name): void
    {
        $this->user_name = $user_name;
    }
    use Bean;
    /**
     * 用户id
     * @var int #整型
     */
    private $user_id;
    /**
     * 用户名
     * @var string #字符串类型
     */
    private $user_name;
}

示例

$userBean = UserBean::new();
$userBean->setUserName("teset");
$userBean->setUserId(111);
\DB::table("user")->insert($userBean->toArray());

定义一个构造方法约束初始化赋值

use Marstm\Bean;
class UserBean 
{
    public function __construct($user_id, $user_name){
        $this->setUserId($user_id);
    }
    /**
     * @return int|null
     */
    public function getUserId(): ?int
    {
        return $this->user_id;
    }
    /**
     * @param int|null $user_id
     */
    public function setUserId(?int $user_id): void
    {
        $this->user_id = $user_id;
    }
    /**
     * @return string|null
     */
    public function getUserName(): ?string
    {
        return $this->user_name;
    }
    /**
     * @param string|null $user_name
     */
    public function setUserName(?string $user_name): void
    {
        $this->user_name = $user_name;
    }
    use Bean;
    /**
     * 用户id
     * @var int|null #整型
     */
    private $user_id;
    /**
     * 用户名
     * @var string|null #字符串类型
     */
    private $user_name;
}
$userBean = UserBean::new(0, "testName");

(编辑:鹰潭站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!