Boşluklar değiştirme -

2 Cevap php

I am inserting Alias field for my db called $alias how do I code (I am using php for mysql insert) to remove all spaces and replace space with "-" (trying to change it to "weburl format" ie removing spaces)

Teşekkürler

2 Cevap

İşte SEF URL'ler için dizeleri santize için kullandığınız yöntem:

    $slug = trim(strtolower($value));
    $slug = preg_replace('/[^a-z0-9 _-]/', '', $slug);
    return preg_replace('/\s+/', '-', $slug);

İlk regex ek izin karakterler eklemek için çekinmeyin.

Bu Unicode veya hatta tam DEĞİLDİR unutmayınız ISO-8891 güvenli, iyi, bu, ama değil bir şey bırakacağım a-z. Bu (yani, onların kapanır ASCII eşdeğeri ile aksanlı karakterleri değiştirmek.) Ben daha önce görmüştüm SO sorular ve bu ile ilgili cevaplar bir dizi var önceden dize normalleştirmek için gerekebilir, ama ben onları bulamıyorum, bir an. Ben herhangi bir takılmaları varsa ben burada bunları düzenlemek edeceğiz.

Sadece boşlukları kaldırarak için, str_replace method istiyorum. URL'ler ile çalışırken Ancak, siz de urlencode ve rawurlencode yöntemleri düşünebilirsiniz.