floor12/yii2-phone

Yii2 手机格式化器和验证器。

安装次数: 9,751

依赖: 3

建议者: 0

安全性: 0

星星: 2

关注者: 2

分支: 2

公开问题: 0

类型:yii2-component

2.2.3 2023-07-25 18:42 UTC

This package is auto-updated.

Last update: 2024-09-07 15:17:58 UTC


README

格式化和验证电话号码

此文件还有俄语版本可供查阅:俄语版本.

Build Status Code quality score Code Coverage Latest Stable Version Total Downloads License

安装

要使用此扩展,请运行以下命令

$ composer require floor12/yii2-phone

或者将其添加到您的 composer.json 文件的 require 部分中。

"floor12/yii2-phone": "dev-master"

使用方法

此扩展允许验证电话号码并在数据库中只保存号码而不进行任何格式化。它还包括一个简单的格式化器,可以将格式化后的电话号码作为字符串或 HTML <a href='tel:'> 标签渲染。

电话验证

要将电话号码存储到数据库中,ActiveRecord 模型的数据库字段应为 VARCHAR(15)。

验证器具有后端和前端(js)验证。要验证您的字段,将 floor12\phone\PhoneValidator 添加到 ActiveRecord::rules() 动作中,如下所示

use floor12\phone\PhoneValidator;
use yii\base\Model;

class User extends Model
{

    public $phone;

    public function rules()
    {
        return [
            ['phone', PhoneValidator::class]
        ];
    }
}

电话格式化

floor12\phone\PhoneFormatter 允许将电话号码格式化为格式化的字符串或 HTML <a href="tel:">,并提供两个静态方法

  • PhoneFormatter::format($phone)
  • PhoneFormatter::a($phone,array $options= [])

格式化示例

echo PhoneFormatter::format(79461234565);                       # +7 (946) 123-45-65
echo PhoneFormatter::a(79461234565);                            # <a href='tel:+79461234565'>+7 (946) 123-45-65</a>
echo PhoneFormatter::a(79461234565,['class'=>'phone-link']);    # <a href='tel:+79461234565' class='phone-link'>+7 (946) 123-45-65</a>