Akademi Manajemen Informatika

Halo Sobat Sandi Dharma,

Pekan ini Laravel mengeluarkan versi terbaru mereka, Adalah Laravel versi 10.33 dengan tambahan fitur fitur yang menarik. Buat lebih jelasnya Simak pembahasan berikut ini yuk!!

Update Laravel 10.33

Update Laravel dari versi 10.32 ke Laravel versi 10.33 pada bulan November 2023. Berikut ini adalah info tentang beberapa fitur terbaru Laravel pada pekan ini:

Number utility class

Caen De Silva berkontribusi pada Laravel Number Utility Class, yang dimana mempermudah pemformatan Bilangan yang dibutuhkan. Number helper terdapat pada `Illuminate\Support` package, yang memberikan Anda beberapa helper yang baru. Berikut ini adalah beberapa contohnya:

Number::format(25) // 25
Number::format(100000) // 100,000
Number::format(123456789) // 123,456,789
 
Number::format(123456789, locale: 'en') // 123,456,789
Number::format(123456789, locale: 'de') // 123.456.789
Number::format(123456789, locale: 'sv') // 123 456 789
 
Number::percentage(25) // 25%
Number::percentage((1/3) * 100, precision: 2) 

color_hex validation rule

Niko Peikrishvli berkontribusi Membangun fitur validasi Buat `hex_color`.  Fitur ini digunakan Buat melakukan pengecekkan pada hex color apakah hex color tersebut valid atau Enggak. Eksis beberapa aturan Buat mengetahui apakah hex color valid atau Enggak:

  • Standard 6-Digit Hex Codes:
READ  DOM (Document Object Model) pada Javascript & 7 Propertinya

Format #RRGGBB

Setiap pasang Kepribadian (RR, GG, BB) melambangkan intensitas Rona merah, hijau, dan biru. Setiap pasang Kepribadian ditulis dengan format heksadesimal, mulai dari 00 Tiba dengan FF.

Format #RGB

Versi singkat dari standard hex codes yang dimana setiap Kepribadian mewakili Rona merah, hijau dan biru

Pesan error Kalau hex color Enggak valid:

Pass the $validator as a parameter to $callback Closure

shinsenter berkontribusi dengan menambahkan instance validator sebagai argument dalam colsure-based validation rules. Fitur ini meneruskan property $validator sebagai parameter ke $callback Closure, Sehingga kita dapat memanfaatkan property $validator yang Eksis pada kelas ClosureValidationRule.

use Closure;
use Illuminate\Support\Facades\Validator;
use Illuminate\Support\LazyCollection;
+ use Illuminate\Validation\Validator as ValidationValidator;

$rules = [
    'price' => [
-       function (string $attribute, mixed $value, Closure $fail) {
+       function (string $attribute, mixed $value, Closure $fail, ValidationValidator $validator) {
-           if ($value === 'foo') {
+           if (!price_logic($value, $validator->attributes()['payment_country'] ?? null)) {
                $fail("The {$attribute} is invalid.");
            }
        },
    ],
];

Release notes

Anda Pandai Menyaksikan daftar fitur dan pembaruan Laravel v10.33 pada github.

READ  Definisi, Fungsi, Jenis, dan Contohnya
v10.33
[10.x] Fix wrong parameter passing and add these rules to dependent rules by @kayw-geek in #49008
[10.x] Make Validator::getValue() public by @shinsenter in #49007
[10.x] Custom messages for Password validation rule by @rcknr in #48928
[10.x] Round milliseconds in database seeder console output runtime by @SjorsO in #49014
[10.x] Add a Number utility class by @caendesilva in #48845
[10.x] Fix the replace() method in DefaultService class by @jonagoldman in #49022
[10.x] Pass the property $validator as a parameter to the $callback Closure by @shinsenter in #49015
[10.x] Fix Cache DatabaseStore::add() error occur on Postgres within transaction by @xdevor in #49025
[10.x] Support asserting against chained batches by @taylorotwell in #49003
[10.x] Prevent DB Cache::get() occur race condition by @xdevor in #49031
[10.x] Fix notifications being counted as sent without a "shouldSend" method by @joelwmale in #49030
[10.x] Fix tests failure on Windows by @hafezdivandari in #49037
[10.x] Add unless conditional on validation rules by @michaelnabil230 in #49048
[10.x] Handle string based payloads that are not JSON or form data when creating PSR request instances by @timacdonald in #49047
[10.x] Fix directory separator CMD display on windows by @imanghafoori1 in #49045
[10.x] Fix mapSpread doc by @timacdonald in #48941
[10.x] Tiny Support\Collection test fix - Unused data provider parameter by @stevebauman in #49053
[10.x] Feat: Add color_hex validation rule by @nikopeikrishvili in #49056
[10.x] Handle missing translation strings using callback by @DeanWunder in #49040
[10.x] Add Str::transliterate to Stringable by @dwightwatson in #49065
Add Alpha Channel support to Hex validation rule by @ahinkle in #49069