Article View: pl.comp.lang.php
Article #219826Re: jak uproscic funkcje
From: Lemat
Date: Wed, 22 Jul 2009 13:54
Date: Wed, 22 Jul 2009 13:54
45 lines
2258 bytes
2258 bytes
albert wrote:
> 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
function przyjazny_string($string){
$string = trim($string);
...
> jak to co powy�ej zapisa� pro�ciej ???
może:
preg_replace('/[^a-zA-Z0-9]/','_',$string);
str_replace('__','_');
--
Pozdrawiam
Lemat
Technical Details
Message-ID:
<h475pr$2qp$1@atlantis.news.neostrada.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!newsfeed.neostrada.pl!atlantis.news.neostrada.pl!news.neostrada.pl!not-for-mailReferences:
<h46fn3$5df$1@news.onet.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!newsfeed.neostrada.pl!atlantis.news.neostrada.pl!news.neostrada.pl!not-for-mail From: Lemat <#@lemat.priv.pl> Newsgroups: pl.comp.lang.php Subject: Re: jak uproscic funkcje Followup-To: pl.comp.lang.php Date: Wed, 22 Jul 2009 15:54:49 +0200 Organization: lemat.priv.pl Lines: 47 Message-ID: <h475pr$2qp$1@atlantis.news.neostrada.pl> References: <h46fn3$5df$1@news.onet.pl> NNTP-Posting-Host: goblin.lemat.priv.pl Mime-Version: 1.0 X-Trace: atlantis.news.neostrada.pl 1248270972 2905 79.190.106.118 (22 Jul 2009 13:56:12 GMT) X-Complaints-To: usenet@news.neostrada.pl NNTP-Posting-Date: Wed, 22 Jul 2009 13:56:12 +0000 (UTC) User-Agent: KNode/0.99.01 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit