Laravel вдосконалив свій клас Stringable, додавши до методу toInteger() параметр бази. Це значно спростило обробку шістнадцяткових, двійкових та вісімкових рядків у ваших застосунках.
Розробникам часто потрібно перетворювати рядкові представлення чисел у різних системах числення. Раніше для цього доводилося виходити за рамки флюентних операцій Laravel і використовувати рідні функції PHP. Оновлений метод toInteger() дозволяє виконувати ці перетворення безперешкодно в рамках ланцюгів маніпуляцій зі рядками.
Ось приклад роботи методу:
// Перетворення шістнадцяткового рядка на ціле число
$value = Str::of('2F')->toInteger(16); // Повертає 47
// Перетворення двійкового рядка на ціле число
$value = Str::of('11001')->toInteger(2); // Повертає 25
// Перетворення вісімкового рядка на ціле число
$value = Str::of('644')->toInteger(8); // Повертає 420
Це нововведення особливо корисне при роботі з такими форматами, як кольорові коди, двійкові дані або налаштування конфігурацій, що використовують не десятинні числові системи. Розгляньте цей приклад обробки шістнадцяткового кольору:
// Раніше: вихід за межі флюентного ланцюга
$hexColor = '#3f8ac2';
$stringable = Str::of($hexColor)->after('#');
$colorValue = intval($stringable, 16);
// Тепер: підтримка флюентності
$colorValue = Str::of($hexColor)
->after('#')
->toInteger(16);
Цей метод легко інтегрується з іншими функціями маніпуляції рядками, що дозволяє виконувати складніші операції:
// Парсинг та перетворення шістнадцяткового значення з даних з датчика
$data = 'Sensor: reading=0x4B, status=0x03';
$reading = Str::of($data)
->between('reading=', ',') // Витягує "0x4B"
->replaceFirst('0x', '') // Видаляє префікс "0x"
->toInteger(16); // Перетворює в десяткову (75)
Метод дотримується тих самих принципів, що й рідна функція intval() у PHP, і параметр бази підтримує значення від 2 до 36, що надає вам гнучкість при обробці чисел у різних системах, зберігаючи елегантний флюентний синтаксис Laravel
Laravel пропонує зручні методи для роботи з датами, які значно спрощують запити до бази даних. Досліджуйте, як ці інтуїтивно зрозумілі функції допомагають створювати чіткі та зрозумілі умови для роботи з часовими даними!
Вперше у світі Laravel з'являється можливість, яка значно спростить ваше повсякденне програмування завдяки новому пакету Laravel Boost. Читайте статтю, щоб дізнатися, як посилена інтеграція штучного інтелекту може підвищити ефективність вашої роботи та оптимізувати створення проектів у Laravel
PHP 8.5 обіцяє безліч нових можливостей, таких як оператор Pipe, функції `array_first()` та `array_last()`, а також нове розширення URI. Чи готові ви дізнатися, як ці функції можуть спростити вашу розробку? Читайте далі, щоб дізнатися більше про ці захоплюючі нововведення