Article View: pl.comp.lang.php
Article #219823jak uproscic funkcje
From: albert
Date: Wed, 22 Jul 2009 07:39
Date: Wed, 22 Jul 2009 07:39
28 lines
1994 bytes
1994 bytes
witam, znalazem w necie funkcje do "czyszczenia" tytulu, ktory bedzie
wyswietlany w pasku adresu. z przyczyn oczywistych tytul musi byc a-z, 0-9 a
spacje zamieniam na _
ponizsza funkcja prawie spelnia te oczekiwania, ale prawie czyni duza
roznice :) jest troche rozpasana, a po drugie jak na koncu stringa jest
jakis znak spoza a-z wowczas robi na koncu _ a tego chcialbym uniknac. jak
mozna ponizsza funkcje uproscic,poprawic ?
$string = "śżźćĄŚŻŹĆ sdfsd !!!! - - - __ __ asdffdfdś ";
function przyjazny_string($string){
$string = strtr($string, 'ĘęÓ󥹌śŁłŹźŻżĆćŃń', 'EeOoAaSsLlZzZzCcNn');
$string = strtr($string, 'ˇ|???Ľ','ASZasz');
$string = preg_replace("'[[:punct:][:space:]]'",'_',$string);
$string = strtolower($string);
$znaki = '_';
$powtorzen = 1;
$string = preg_replace_callback('#(['.$znaki.'])\1{'.$powtorzen.',}#',
create_function('$a', 'return substr($a[0], 0,'.$powtorzen.');'), $string);
return $string;
}
echo przyjazny_string($string)
efekt:
szzcaszzc_sdfsd_asdffdfds_
jak usunąć to _ na końcu jak to co powyżej zapisać prościej ???
Technical Details
Message-ID:
<h46fn3$5df$1@news.onet.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!not-for-mailShow Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!not-for-mail From: "albert" <qwerty1231@vp.pl> Newsgroups: pl.comp.lang.php Subject: jak uproscic funkcje Date: Wed, 22 Jul 2009 09:39:15 +0200 Organization: http://onet.pl Lines: 30 Message-ID: <h46fn3$5df$1@news.onet.pl> Reply-To: "albert" <qwerty1231@vp.pl> NNTP-Posting-Host: 78-131-216-98.tktelekom.pl X-Trace: news.onet.pl 1248248355 5551 78.131.216.98 (22 Jul 2009 07:39:15 GMT) X-Complaints-To: niusy@onet.pl NNTP-Posting-Date: Wed, 22 Jul 2009 07:39:15 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.5512 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579 X-RFC2646: Format=Flowed; Original MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit