Auteur : iubito
| Version : 11/01/2006 | | |
| |
$texte = eregi_replace(
"(^|[ \t\r\n\(:,]+)?".
"((ftp|http|https|gopher|mailto|pop|smtp|news|nntp|telnet|wais|".
"file|imap|prospero|peercast|ed2k|irc|aim|mime|ftam|pnm|rtsp|ldap):".
"[A-Za-z0-9/](([A-Za-z0-9$|.+!*()\.,;/?:@&~=_-])|%[A-Fa-f0-9]{2})+".
"[A-Za-z0-9/&#=_-]+)".
"([\.\),:;? \t\r\n]+([^A-Za-z0-9/&%#=_-]|$))?",
"\\1<a href='\\2' target=\"blank\">\\2</a>\\6", $texte);
$texte = eregi_replace("(^|[ \t\r\n\(,<>:]+)?".
"([_a-z0-9-]+[^:/=](\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)+(\?[&;A-Za-z0-9=_-]+)?)".
"([\.\),:;<>? \t\r\n]+([^A-Za-z0-9/&%#=_-]|$))?",
"\\1<a href=\"mailto:\\2\">\\2</a>\\6", $texte); |
|
Auteur : iubito
| Version : 11/01/2006 | | |
| | /**
* Enlève les accents
*
* Utile pour le tri alphabétique.
* @param string $str
* @author iubito
* @return string
*/
function removeDiacritics($str)
{
return strtr($str,
'àâäåãáÂÄÀÅÃÁæÆçÇéèêëÉÊËÈïîìíÏÎÌÍñÑöôóòõÓÔÖÒÕšùûüúÜÛÙÚýÿž',
'aaaaaaaaaaaaaacceeeeeeeeiiiiiiiinnoooooooooosuuuuuuuuyyz');
} |
|
Auteur : doof
| Version : 11/01/2006 | | |
| |
Il vaut mieux vérifier avant qu'elle ne renvoie pas d'erreur, une parenthèse non fermée ou une division par zéro va entrainer une erreur.
if (preg_match('#(^[\d(]+[ +*()/\d-]*[\d)]+$)#', $txt)) {
...
...
} |
Avec ce masque, on peut même remplacer toutes les opérations par leur resultat dans une chaîne quelconque :
$txt=@preg_replace('#([\d(]+[ +*()/\d-]*[\d)]+)#e', "'<b>'.round($0, 3).'</b>'", $txt); |
|
| | <?
function bb($t)
{
$t = htmlentities($t);
$in = Array("![(barre|hr)]!iU",
"![(barre|hr)s*=?s*([0-9]{1,2}|100)(%?)]!iU",
"![(b|g)](.*)[/\1]!iUs",
"!(.*)!iUs",
"![(u|s)](.*)[/\1]!iUs",
"![(center|centre)](.*)[/\1]!iUs",
"![(right|droite|droit)](.*)[/\1]!iUs",
"![(left|gauche)](.*)[/\1]!iUs",
"![(justify|justifie)](.*)[/\1]!iUs",
"![(color|couleur)s*=?s*(red|gray|blue|lightgrey|green|black|#[[:xdigit:]]{6})](.*)[/\1]!iUs",
"![(size|taille)s*=?s*([0-9]+)](.+)[/\1]!iUs",
"![(h|title|titre)s*=?s*([2-4])](.+)[/\1[2-7]?]!iU",
"![(url|lien)]s*(http://[^[]<>]+)s*[/\1]!iU",
"![(url|lien)]s*([[:alnum:] &;-]+)s*[/\1]!iUe",
"![(url|lien)s*=?s*(http://[^[]<>]+)s*](.*)[/\1]!iUs",
"![(url|lien)s*=?s*([[:alnum:] &;-]+)s*](.*)[/\1]!iUse",
"! !");
$out = Array("<hr />",
"<hr width="$2$3" />",
"<b>$2</b>",
"<i>$1</i>",
"<u>$2</u>",
"<div style="text-align: center;">$2</div>",
"<div style="text-align: right;">$2</div>",
"<div style="text-align: left;">$2</div>",
"<div style="text-align: justify;">$2</div>",
"<span style="color: $2;">$3</span>",
"<span style="font-size: $2px;">$3</span>",
"<h$2>$3</h$2>",
"<a href="$2">$2</a>",
"'<a href="" . FNAME . "' . htmlentities(urlencode(html_entity_decode("$2"))) . '">$2</a>'",
"<a href="$2">$3</a>",
"'<a href="" . FNAME . "' . htmlentities(urlencode(html_entity_decode("$2"))) . '">$3</a>'",
" ");
for($i = 0; $i < count($in) - 1; $i++)
{
$t = preg_replace($in[$i], $out[$i], $t);
}
$t = preg_replace_callback("![(list|liste)s*=?s*([1IaA]?)]s*(:?[*](.*)s*)+[/\1]!iUs",
create_function('$matches',
"switch($matches[2])
{
case '1':
$result = '<ol class="un">';
break;
case 'i':
$result = '<ol class="ii">';
break;
case 'I':
$result = '<ol class="II">';
break;
case 'a':
$result = '<ol class="aa">';
break;
case 'A':
$result = '<ol class="AA">';
break;
case '':
$result = '<ul>';
break;
}
for($i = 3; $i < count($matches) - 1; $i++)
{
$result.= '<li>' . $matches[$i] . '</li>';
}
return $result . '</' . substr($result, 1, 2) . 'l>';"),
$t);
return nl2br($t);
}
?> |
Pour avoir des listes numérotées | <style type="text/css">
.un {
list-style-type: decimal;
}
.aa {
list-style-type: lower-alpha;
}
.AA {
list-style-type: upper-alpha;
}
.ii {
list-style-type: lower-roman;
}
.II {
list-style-type: upper-roman;
}
</style> |
Utilisation | <?
echo bb("[g]Titre en Gras.[/g]\n[barre]\n[droite]Texte séparé par une barre hrizontale aligné à droite.[/droite]");
?> |
|
Auteur : Moloc'h
| Version : 16/01/2006 | | |
| | <?
function str_light ( $chaine , $word )
{
$replacement = '' ;
foreach ( $word as $val )
{
$replacement .= $val . '|' . upper_word ( $val ) . '|' ;
}
$replacement = substr ( $replacement , 0 , strlen ( $replacement ) - 1 ) ;
$chaine = eregi_replace ( $replacement , '<span style="font-weight: bold;background-color: #FF0000;"></span>' , $chaine ) ;
return $chaine ;
}
function upper_word ( $str )
{
$str = strtr ( $str , 'ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ' ,
'aaaaaaaaaaaaooooooooooooeeeeeeeecciiiiiiiiuuuuuuuuynn' ) ;
$str = strtoupper ( $str ) ;
return $str ;
}
?> |
Utilisation | <?
$word = array ( 'de' , 'du' , 'des' , 'le' , 'la' , 'les' , 'un' , 'une' , ',' , 'et' , 'ou' ) ;
$str = "L'édition de cette année du 20 au 27 mars partout en France traitera des dernières tendances en vogue,
comme le phénomène des blogs ou encore l'internet mobile.";
echo str_light ( $str , $word ) ;
?> |
|
|