URL'den özel karakter kaldır

2 Cevap php

Ben bir ürün veritabanı var ve ben onları temiz olarak URL'leri görüntülemek çalışıyorum göstererek am aşağıda örnek ürün isimleri:

PAUL MITCHELL FOAMING POMADE (150ml)
American Crew Classic Gents Pomade 85g
Tigi Catwalk Texturizing Pomade 50ml

Ne yapmam gerekiyor URL yapısı aşağıdaki gibi ekran:

www.example.com/products/paul-mitchell-foaming-gel(150ml)

Ben sorun ben aşağıdakileri yapmak istiyorum:

1.  Remove anything inside parentheses (and the parentheses)
2.  Remove any numbers next to g or ml e.g. 400ml, 10g etc...

Ben farklı bir dizeyi çalışıyorum başımı beceriyor oylandı değiştirir ama cant sağ olsun, ben gerçekten yardıma seviniriz.

Şerefe

2 Cevap

function makeFriendly($string)
{
    $string = strtolower(trim($string));
    $string = str_replace("'", '', $string);
    $string = preg_replace('#[^a-z\-]+#', '_', $string);
    $string = preg_replace('#_{2,}#', '_', $string);
    $string = preg_replace('#_-_#', '-', $string);
    return preg_replace('#(^_+|_+$)#D', '', $string);
}

Bu fonksiyon url temizliği için size yardımcı olur. (Ayrıca numaralarını temizler)

Bu deneyin:

trim(preg_replace('/\s\s+/', ' ', preg_replace("/(?:\(.*?\)|\d+\s*(?:g|ml))/", "", $input)));

// "abc (def) 50g 500 ml 3m(ghi)" --> "abc 3m"