• Час читання ~1 хв
  • 04.03.2024

Пакет Laravel-Phone спрощує роботу з телефонними номерами на PHP та Laravel, пропонуючи правила валідації, приведення атрибутів, помічники утиліт та багато іншого.

Ви коли-небудь будували валідацію навколо телефонних номерів, які підтримують кілька країн? Цей пакет має вбудовані корисні правила перевірки, які дозволяють легко перевіряти номери для будь-якої країни. Ви можете вказати прийнятні формати кодів країни, але в той же час прийняти дійсні "міжнародні" номери:

// Validate either USA or Belguim
Validator::make($request->all(), [
    'phone_number' => 'phone:US,BE',
]);
// Validate US specifically, but also accept other countries
Validator::make($request->all(), [
    'phone_number' => 'phone:US,INTERNATIONAL',
]);
// Use the Phone rule
Validator::make($request->all(), [
    'phone_number' => (new Phone)->country(['US', 'BE']),
]);
// Match country code against another data field
Validator::make($request->all(), [
    'phone_number' => (new Phone)->countryField('custom_country_field'),
    'custom_country_field' => 'required_with:phone_number',
]);

Цей пакет використовує порт PHP бібліотеки обробки телефонних номерів Google під капотом, яка має надійні можливості аналізу, форматування та перевірки для роботи з телефонними номерами в PHP:

// Formatting examples
$phone = new PhoneNumber('012/34.56.78', 'BE');

$phone->format($format);       // Custom formatting
$phone->formatE164();          // +3212345678
$phone->formatInternational(); // +32 12 34 56 78
$phone->formatRFC3966();       // +32-12-34-56-78
$phone->formatNational();      // 012 34 56 78

Ви можете дізнатися більше про цей пакет, отримати повну інструкцію по встановленню, і переглянути вихідний код на GitHub. Я рекомендую розпочати роботу з readme для отримання повної документації щодо цього пакунку.

Comments

No comments yet
Yurij Finiv

Yurij Finiv

Full stack

Про мене

Professional Fullstack Developer with extensive experience in website and desktop application development. Proficient in a wide range of tools and technologies, including Bootstrap, Tailwind, HTML5, CSS3, PUG, JavaScript, Alpine.js, jQuery, PHP, MODX, and Node.js. Skilled in website development using Symfony, MODX, and Laravel. Experience: Contributed to the development and translation of MODX3 i...

Про автора CrazyBoy49z
WORK EXPERIENCE
Контакти
Ukraine, Lutsk
+380979856297