Model “什么是”呢;模型";在Yii2?是不是数组?

Model “什么是”呢;模型";在Yii2?是不是数组?,model,yii2,Model,Yii2,Yii2中的“模型”是什么?是不是数组?这是什么 class EntryForm extends Model { public $name; public $email; public function rules() { return [ [['name', 'email'], 'required'], ['email', 'email'], ]; } } 模型就是模型

Yii2中的“模型”是什么?是不是数组?这是什么

 class EntryForm extends Model
{
    public $name;
    public $email;

    public function rules()
    {
        return [
            [['name', 'email'], 'required'],
            ['email', 'email'],
        ];
    }
}

模型就是模型。它是业务逻辑实例的简单表示。在Yii2模型中,它支持事件、行为和属性,是主要的范例。是的,Yi2中的模型实现了可阵列接口,您可以像处理阵列一样使用它。

模型就是模型。它是业务逻辑实例的简单表示。在Yii2模型中,它支持事件、行为和属性,是主要的范例。是的,Yi2中的模型实现了Arrayable接口,您可以像使用数组一样使用它。

假设您有一个老板,他希望您实现一个web应用程序,该应用程序的表单包含一些字段:

  • 用户电子邮件(必须输入此字段)
  • 用户名(必须仅使用英语)
  • 用户消息(最多140个字符)
  • 让我们来看看boss必需字段:

    • 表格必须有3个项目
    • 用户电子邮件字段必须具有有效的模式,例如firstpart@secondpart.domain,
    • 用户电子邮件字段是必需的,如果未输入,我们必须拒绝提交操作
    • 用户名字段只能包含英文字母(A-Z和A-Z)
    • 用户消息字段最多可包含140个字符
    该规则称为业务规则或短业务规则。现在,模型是一个实现业务规则的类。所以模型的类型是类,模型是类的实例。这都是关于模型概念的

    此外,我们还有另一个概念:活动记录。只需将数据库中表的一行转换为对象即可。例如,您有一个名为
    user
    的表,该表有3个字段:
    id
    username
    password
    ,如果您使用一个活动记录并从
    user
    表中选择一条记录,则您有一个具有三个属性的对象:
    id
    username
    password
    ,例如,您可以将username与
    echo$objectName->username一起使用
    $objectName
    是活动记录实例的名称


    现在,我们可以将活动记录概念与模型概念结合起来:如果我们有一个模型类表示数据库中表的记录,我们将其称为活动记录模型。因此,我们可以实现一个同时包含业务规则和数据库操作的类。

    假设您有一个老板,他希望您实现一个web应用程序,该应用程序的表单包含一些字段:

  • 用户电子邮件(必须输入此字段)
  • 用户名(必须仅使用英语)
  • 用户消息(最多140个字符)
  • 让我们来看看boss必需字段:

    • 表格必须有3个项目
    • 用户电子邮件字段必须具有有效的模式,例如firstpart@secondpart.domain,
    • 用户电子邮件字段是必需的,如果未输入,我们必须拒绝提交操作
    • 用户名字段只能包含英文字母(A-Z和A-Z)
    • 用户消息字段最多可包含140个字符
    该规则称为业务规则或短业务规则。现在,模型是一个实现业务规则的类。所以模型的类型是类,模型是类的实例。这都是关于模型概念的

    此外,我们还有另一个概念:活动记录。只需将数据库中表的一行转换为对象即可。例如,您有一个名为
    user
    的表,该表有3个字段:
    id
    username
    password
    ,如果您使用一个活动记录并从
    user
    表中选择一条记录,则您有一个具有三个属性的对象:
    id
    username
    password
    ,例如,您可以将username与
    echo$objectName->username一起使用
    $objectName
    是活动记录实例的名称


    现在,我们可以将活动记录概念与模型概念结合起来:如果我们有一个模型类表示数据库中表的记录,我们将其称为活动记录模型。因此,我们可以实现一个同时包含业务规则和数据库操作的类。

    Alexey Pechen-为什么不使用数组过滤器($model);如果元素为空?@Пёёа您将对象作为参数,这是不对的。必须使用toArray()方法。示例:数组过滤器($model->toArray())Alexey Pechen-列“day\u birth”不能为空------不删除day\u birth。我使用-array_过滤器($model->toArray())@Пёёа看起来像来自数据库或模型验证程序的消息。也许,您的数组文件服务器回调对空元素很敏感。关于您的问题,这是一个新问题,而不是关于Yii2模型的概念。Alexey Pechen-为什么不使用array_filter($model);如果元素为空?@Пёёа您将对象作为参数,这是不对的。必须使用toArray()方法。示例:数组过滤器($model->toArray())Alexey Pechen-列“day\u birth”不能为空------不删除day\u birth。我使用-array_过滤器($model->toArray())@Пёёа看起来像来自数据库或模型验证程序的消息。也许,您的数组文件服务器回调对空元素很敏感。这不是关于您的问题的足够信息,这是一个新问题,不是关于Yii2模型的概念。Yii 2.0模型描述得更好Yii 2.0模型描述得更好