saifalbd / model-collection
将 PHP 数组转换为类似 Laravel 模型的对象
v1.0
2019-07-21 08:23 UTC
Requires
- php: ^7.1
- ext-curl: *
- ext-json: *
Requires (Dev)
- phpunit/phpunit: 6.*
This package is not auto-updated.
Last update: 2024-09-24 08:14:48 UTC
README
如果你想要将数组转换为对象或多维数组转换为 Laravel Eloquent Collection 类型的 Collection,那么这个包对你来说非常有用。你也可以像处理关联数组一样调用对象,例如 object->key 或 object['key']
入门指南
use Saifalbd\CustomModel\Model;
模型创建
在非静态方法中
$model = new Model();
$data = $model->add(array("name"=>"John", "email"=>"john@gmail.com", "age"=>33));
返回对象,你可以访问 $data["name"] 或 $data->name,你也可以添加多个
$collection = $model->add()->add()->add()->get()
返回对象集合,你可以访问 $collection[index]->property;
在静态方法中
$data = Model::make(array("name"=>"John", "email"=>"john@gmail.com", "age"=>33));
返回对象,你可以访问 $data["name"] 或 $data->name
集合创建
在非静态方法中
$model = new Model();
$collection = $model->addAll(
array("name"=>"Ram", "email"=>"ram@gmail.com", "age"=>23),
array("name"=>"Shyam", "email"=>"shyam23@gmail.com", "age"=>28),
array("name"=>"John", "email"=>"john@gmail.com", "age"=>33),
array("name"=>"Bob", "email"=>"bob32@gmail.com", "age"=>41)
);
返回对象集合,你可以访问 $collection[index]->property;
在静态方法中
$collection = Model::makeAll(
array("name"=>"Ram", "email"=>"ram@gmail.com", "age"=>23),
array("name"=>"Shyam", "email"=>"shyam23@gmail.com", "age"=>28),
array("name"=>"John", "email"=>"john@gmail.com", "age"=>33),
array("name"=>"Bob", "email"=>"bob32@gmail.com", "age"=>41)
);
返回对象集合,你可以访问 $collection[index]->property;
注意:如果你在 Laravel 项目中使用这个包,那么调用 $collection->collection(); 返回 Illuminate\Support\Collection
模型设置
$model = new Model();
$model->country = 'bangladesh'
模型获取
$model->country;
or
$model['country'];
集合 JSON
$model = new Model();
$json = $model->addAll(MultidimensionalArray)->toJson();
or
$json = Model::makeAll(MultidimensionalArray)->toJson();
安装
composer require saifalbd/model-collection