Yii2 phone 字段问题

Yii2 phone field issue

这是我的 table

id           int (primary_key)
name         varchar
contact_no   int
date         date

模型规则

public function rules()
{
    return [
        [['contact_no'], 'integer'],
    ];
}

查看

    <?php $form = ActiveForm::begin(['id' => 'form-info', 'layout' => 'horizontal']); ?>

    ...

    <?php echo $form->field($model, 'contact_no') ?>

    ...

    <?php ActiveForm::end(); ?>

当我保存号码时(例如 9999999999),它在 table 中保存为 2147483647。我检查表单 post 及其在表单中传递的相同值,但保存不同。

如果我做错了或遗漏了什么,请告诉我?

我假设您为此列使用了带符号的 INT,在 MySQL 中,此类型存储在 4 个字节上:从 -21474836472147483647

您应该使用 unsigned INT,或者简单地使用 VARCHAR。

阅读更多:http://dev.mysql.com/doc/refman/4.1/en/integer-types.html

它是您的数据库包含。请检查您的数据库是否支持 9999999999.Because 数据库列可能不支持 10 位数字.. 增加您的列大小