lekoala / silverstripe-phonenumber
在 SilverStripe 中格式化、存储和验证电话号码
1.1.0
2023-08-10 14:59 UTC
Requires
- php: ^7.4 || ^8
- silverstripe/framework: ^4.4 || ^5
- silverstripe/recipe-plugin: ^1 || ^2
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-22 11:24:32 UTC
README
简介
提供一些辅助服务来处理 SilverStripe 中的电话号码
此模块将 libphonenumber 集成为解析和验证电话号码的工具。
通常情况下,设置电话号码的国家是很明智的。否则,将使用当前区域设置。
示例代码
$phone = new PhoneField('phone', 'Phone number');
$phone->setCountryField('CountryCode');
$validator = ZenValidator::create();
$validator->setConstraint('phone', Constraint_remote::create('/__phonenumber/validate',null,array('data' => array('country' => 'BE'))));
此模块还提供扩展以应用于数据对象,例如成员
SilverStripe\Security\Member:
extensions:
- LeKoala\PhoneNumber\PhoneNumberExtension
电话 DBField
您可以将您的数据对象 db 字段设置为 Phone 或 DBPhone::class
这将自动生成一个 CountryPhoneField,它是一个组合字段,具有国家下拉菜单(带有前缀列表)和字段本身的空白区域
表单字段
两个可用的字段
- PhoneField:支持国内和国际号码的普通电话字段
- CountryPhoneField:具有国家下拉菜单 + 国内电话号码的组合字段
Ajax 验证和格式化
公开 `__phonenumber/validate` 和 `__phonenumber/format` 端点以进行电话号码验证和格式化
待办事项
无
兼容性
已在 4.6 上测试,但应适用于任何 ^4 项目
维护者
LeKoala - thomas@lekoala.be