Kembali ke Katalog
Back to Catalog
Solved
+20 pts
PHP
Strings & RegEx
Medium
PHP 03. Clean Code URL Slug Generator PHP 03. Clean Code URL Slug Generator
Format judul artikel menjadi URL slug bersih, huruf kecil, dan ramah SEO. Transform a title into a lowercase SEO-friendly URL slug.
Contoh Logika Serupa: Sanitisasi Username Kode Similar Pattern Example: Username Sanitizer
Referensi KodeMengubah huruf kecil, menghapus karakter selain huruf dan angka dengan regex: Lowercasing and stripping illegal characters via regex:
<?php
function sanitizeUsername(string $input): string {
$clean = strtolower($input);
// Menghapus semua karakter selain a-z dan 0-9
return preg_replace('/[^a-z0-9]/', '', $clean);
}
Langkah & Spesifikasi Tugas Step-by-Step Requirements
1
Ubah semua karakter huruf menjadi huruf kecil (
strtolower).
2
Hapus karakter khusus/simbol selain huruf (
a-z), angka (0-9), dan spasi.
3
Ganti satu atau beberapa spasi berturutan menjadi tanda strip tunggal (
-).
4
Hapus tanda strip yang berada di ujung depan atau belakang string (
trim).
1
Convert string to lowercase (
strtolower).
2
Strip all non-alphanumeric characters except spaces.
3
Replace sequential whitespace with a dash (
-).
4
Trim leading/trailing dashes (
trim).Contoh Kasus & Ketentuan Example Cases & Rules
- Input:
"Belajar PHP & SQL Modern 2026!"→ Output:"belajar-php-sql-modern-2026" - Input:
" Clean URL Generator "→ Output:"clean-url-generator"
- Input:
"Belajar PHP & SQL Modern 2026!"-> Output:"belajar-php-sql-modern-2026" - Input:
" Clean URL Generator "-> Output:"clean-url-generator"
Target Output (Expected) Expected Output
"belajar-php-sql-modern-2026"
Petunjuk Pengerjaan:
- Clue 1: Lowercase dengan `strtolower($title)`.
- Clue 2: Hapus simbol: `preg_replace('/[^a-z0-9\s-]/', '', $slug)`.
- Clue 3: Ganti spasi: `preg_replace('/[\s-]+/', '-', $slug)`.
- Clue 4: Trim ujung: `trim($slug, '-')`.
<?php
function generateSlug(string $title): string {
$slug = strtolower($title);
$slug = preg_replace('/[^a-z0-9\s-]/', '', $slug);
$slug = preg_replace('/[\s-]+/', '-', $slug);
return trim($slug, '-');
}
solution.php
✨ Kode dirapikan!
Test Case #
Target:
Output:
Pesan:
Login Diperlukan
Masuk dengan akun Google untuk mengeksekusi kodingan & query sandbox di server secara interaktif.