<?php
function coloriser_php($script) {
$script = htmlentities($script);
$script = str_replace(""", '"', $script);
$script.= "\n";
for ($i = 0, $as = 0, $gs = 0, $gd = 0, $com = 0, $coms = 0, $tmp = '', $tmp2 = '', $tmp_script = '', $tmp2_script = ''; $i <= strlen($script); $i++) {
if ($script[$i] == "\\") {
$as = ($as == 1) ? 0 : 1;
}
if ($gd == 0 && $gs == 0 && $com == 0 && $coms == 0) {
if ($script[$i] == "/" && $script[$i + 1] == "*") {
// Commentaires en /* commentaire */
$tmp2_script = "<font color=#009900>";
$tmp = '';
$com = 1;
}
elseif ($script[$i] == "/" && $script[$i + 1] == "/") {
// Commentaires en // commentaire
$tmp2_script = "<font color=#009900>";
$tmp = '';
$com = 1;
$coms = 1;
}
elseif ($script[$i] == "#") {
// Commentaires en # commentaire
$tmp2_script = "<font color=#009900>";
$tmp = '';
$com = 1;
$coms = 1;
}
}
elseif ($gd == 0 && $gs == 0 && $com == 1) {
if ($script[$i] == "*" && $script[$i + 1] == "/" && $coms == 0) {
// Fin des commentaires en /* commentaire */
$tmp_script.= strip_tags($tmp)."*/</font>";
$i+= 2;
$com = 0;
}
elseif ($script[$i] == "\n" && $coms == 1) {
// Fin des commentaires en // commentaire et # commentaire
$tmp_script.= strip_tags($tmp)."</font>\n";
$i+= 1;
$com = 0;
$coms = 0;
}
}
if ($com == 0 && $as == 0) {
if ($script[$i] == "'" && $gd == 0) {
// Guillements simples '
if ($gs == 0) {
$tmp2_script = "<font color=#808080>";
$tmp = '';
$gs = 1;
} else {
$tmp_script.= strip_tags($tmp)."'</font>";
$tmp = '';
$i+= 1;
$gs = 0;
}
}
if ($script[$i] == '"' && $gs == 0) {
// Guillements doubles "
if ($gd == 0) {
$tmp2_script = "<font color=#808080>";
$tmp = '';
$gd = 1;
} else {
$tmp_script.= strip_tags($tmp).'"</font>';
$tmp = '';
$i+= 1;
$gd = 0;
}
}
}
if ($gd == 0 && $gs == 0 && $com == 0 && $coms == 0 && $i < strlen($script)) {
$tmp2.= $script[$i];
}
elseif ($tmp2 != "" || ($tmp2 != "" && $i >= strlen($script))) {
$tmp2 = preg_replace("/([\(\)\{\}\+\*%\/\=~!\|\?:;\.,\-\[\]]+|&|<|>)/iS", "<font color=#000080>$1</font>", $tmp2);
$tmp2 = preg_replace("/\\\$([[:alnum:]_]+)/iSs", "<font color=#006699>$$1</font>", $tmp2);
/* Mots réservés et fonctions */
$tmp2 = preg_replace("/(([^a-z0-9_\\\$])(array|bool|break|case|char|class|
continue|default|do|double|else|elseif|endfor|endif|endwhile|
extends|float|for|function|global|if|include|int|integer|
long|mixed|new|object|old_function|php|real|require|return|
static|string|switch|var|void|while|__FILE__|__LINE__|E_ERROR|
E_NOTICE|E_PARSE|E_WARNING|FALSE|PHP_OS|PHP_VERSION|TRUE|@)([^a-z0-9_]))/iS", "$2<font color=#000080>$3</font>$4", $tmp2);
$tmp2 = preg_replace("/(([^a-z0-9_\\\$])(Abs|Acos|AddSlashes|apache_lookup_uri|
apache_note|array|array_walk|arsort|Asin|asort|Atan|Atan2|base_convert|
base64_decode|base64_encode|basename|bin2hex|BinDec|Ceil|chdir|checkdate|
checkdnsrr|chgrp|chmod|Chop|chown|Chr|chunk_split|clearstatcache|closedir|
closelog|connection_aborted|connection_status|connection_timeout|
convert_cyr_string|copy|Cos|count|crypt|current|date|dblist|dbmclose|
dbmdelete|dbmexists|dbmfetch|dbmfirstkey|dbminsert|dbmnextkey|dbmopen|
dbmreplace|debugger_off|debugger_on|DecBin|DecHex|DecOct|delete|die|
dir|dirname|diskfreespace|dl|doubleval|each|echo|empty|end|ereg|
ereg_replace|eregi|eregi_replace|error_log|error_reporting|
escapeshellcmd|eval|exec|exit|Exp|explode|extension_loaded|
extract|fclose|feof|fgetc|fgetcsv|fgets|fgetss|file|file_exists|
fileatime|filectime|filegroup|fileinode|filemtime|fileowner|
fileperms|filepro|filesize|filetype|flock|Floor|flush|fopen|
fpassthru|fputs|fread|fseek|fsockopen|ftell|function_exists|
fwrite|get_cfg_var|get_current_user|get_magic_quotes_gpc|
get_magic_quotes_runtime|get_meta_tags|getallheaders|getdate|
getenv|gethostbyaddr|gethostbyname|gethostbynamel|GetImageSize|
getlastmod|getmxrr|getmyinode|getmypid|getmyuid|getrandmax|getrusage|
gettimeofday|gettype|gmdate|gmmktime|gzclose|gzeof|gzfile|gzgetc|gzgets|
gzgetss|gzopen|gzpassthru|gzputs|gzread|gzrewind|gzseek|gztell|gzwrite|
header|HexDec|htmlentities|htmlspecialchars|ignore_user_abort|ImageArc|
ImageChar|ImageCharUp|ImageColorAllocate|ImageColorAt|ImageColorClosest|
ImageColorExact|ImageColorResolve|ImageColorSet|ImageColorsForIndex|
ImageColorsTotal|ImageColorTransparent|ImageCopyResized|ImageCreate|
ImageCreateFromGif|ImageDashedLine|ImageDestroy|ImageFill|ImageFilledPolygon|
ImageFilledRectangle|ImageFillToBorder|ImageFontHeight|ImageFontWidth|
ImageGif|ImageInterlace|ImageLine|ImageLoadFont|ImagePolygon|ImagePSBBox|
ImagePSEncodeFont|ImagePSFreeFont|ImagePSLoadFont|ImagePSText|
ImageRectangle|ImageSetPixel|ImageString|ImageStringUp|ImageSX|
ImageSY|ImageTTFBBox|ImageTTFText|implode|intval|iptcparse|
is_array|is_dir|is_double|is_executable|is_file|is_float|is_int|is_integer|
is_link|is_long|is_object|is_readable|is_real|is_string|is_writeable|isset|
join|key|ksort|leak|link|linkinfo|list|Log|Log10|lstat|ltrim|mail|max|md5|
microtime|min|mkdir|mktime|msql|msql_affected_rows|msql_close|msql_connect|
msql_create_db|msql_createdb|msql_data_seek|msql_dbname|msql_drop_db|
msql_dropdb|msql_error|msql_fetch_array|msql_fetch_field|msql_fetch_object|
msql_fetch_row|msql_field_seek|msql_fieldflags|msql_fieldlen|
msql_fieldname|msql_fieldtable|msql_fieldtype|msql_free_result|
msql_freeresult|msql_list_dbs|msql_list_fields|msql_list_tables|
msql_listdbs|msql_listfields|msql_listtables|msql_num_fields|
msql_num_rows|msql_numfields|msql_numrows|msql_pconnect|
msql_query|msql_regcase|msql_result|msql_select_db|msql_selectdb|
msql_tablename|mt_getrandmax|mt_rand|mt_srand|mysql|
mysql_affected_rows|mysql_close|mysql_connect|mysql_create_db|mysql_data_seek|
mysql_db_query|mysql_drop_db|mysql_errno|mysql_error|mysql_fetch_array|
mysql_fetch_field|mysql_fetch_lengths|mysql_fetch_object|mysql_fetch_row|
mysql_field_flags|mysql_field_len|mysql_field_name|mysql_field_seek|
mysql_field_table|mysql_field_type|mysql_free_result|mysql_insert_id|
mysql_list_dbs|mysql_list_fields|mysql_list_tables|mysql_num_fields|
mysql_num_rows|mysql_pconnect|mysql_query|mysql_result|mysql_select_db|
mysql_tablename|next|nl2br|number_format|OctDec|odbc_autocommit|
odbc_binmode|odbc_close|odbc_close_all|odbc_commit|odbc_connect|
odbc_cursor|odbc_do|odbc_exec|odbc_execute|odbc_fetch_into|odbc_fetch_row|
odbc_field_len|odbc_field_name|odbc_field_type|odbc_free_result|odbc_longreadlen|
odbc_num_fields|odbc_num_rows|odbc_pconnect|odbc_prepare|odbc_result|
odbc_result_all|odbc_rollback|odbc_setoption|opendir|openlog|Ora_Bind|
Ora_Close|Ora_ColumnName|Ora_ColumnType|Ora_Commit|Ora_CommitOff|Ora_CommitOn|
Ora_Error|Ora_ErrorCode|Ora_Exec|Ora_Fetch|Ora_GetColumn|Ora_Logoff|Ora_Logon|
Ora_Open|Ora_Parse|Ora_Rollback|Ord|pack|parse_str|parse_url|passthru|pclose|
pfsockopen|pg_Close|pg_cmdTuples|pg_Connect|pg_DBname|pg_ErrorMessage|pg_Exec|
pg_Fetch_Array|pg_Fetch_Object|pg_Fetch_Row|pg_FieldIsNull|pg_FieldName|
pg_FieldNum|pg_FieldPrtLen|pg_FieldSize|pg_FieldType|pg_FreeResult|pg_GetLastOid|
pg_Host|pg_loclose|pg_locreate|pg_loopen|pg_loread|pg_loreadall|pg_lounlink|
pg_lowrite|pg_NumFields|pg_NumRows|pg_Options|pg_pConnect|pg_Port|pg_Result|
pg_tty|phpinfo|phpversion|pi|popen|pos|pow|preg_match|preg_match_all|preg_replace|
preg_split|prev|print|printf|putenv|quoted_printable_decode|QuoteMeta|rand|range|
rawurldecode|rawurlencode|readdir|readfile|readgzfile|readlink|
register_shutdown_function|rename|reset|rewind|rewinddir|rmdir|round|rsort|
sem_acquire|sem_get|sem_release|serialize|set_file_buffer|set_magic_quotes_runtime|
set_socket_blocking|set_time_limit|setcookie|setlocale|settype|shm_attach|
shm_detach|shm_get_var|shm_put_var|shm_remove|shm_remove_var|shuffle|
similar_text|Sin|sizeof|sleep|sort|soundex|split|sprintf|sql_regcase|Sqrt|
srand|stat|str_replace|strchr|strcmp|strcspn|strftime|strip_tags|
StripSlashes|strlen|strpos|strrchr|strrev|strrpos|strspn|strstr|strtok|
strtolower|strtoupper|strtr|strval|substr|symlink|syslog|system|Tan|
tempnam|time|touch|trim|uasort|ucfirst|ucwords|uksort|umask|uniqid|unlink|
unpack|unserialize|unset|urldecode|urlencode|usleep|usort|virtual|substr_count|
array_flip|get_html_translation_table|imagegammacorrect)([^a-z0-9_]))/iS", "$2<font color=#800000>$3</font>$4", $tmp2);
$tmp_script.= $tmp2;
$tmp2 = '';
$tmp.= $script[$i];
} else {
$tmp.= $script[$i];
}
$tmp_script.= $tmp2_script;
$tmp2_script = '';
if ($script[$i] != "\\") {
$as = 0;
}
}
$tmp_script = substr($tmp_script, 0, -1);
/* Lignes à rajouer si vous ne passez pas par la fonction coloriser_html() :
$tmp_script = nl2br($tmp_script);
$tmp_script = str_replace("\t", " ", $tmp_script);
$tmp_script = str_replace(" ", " ", $tmp_script);
*/
return $tmp_script;
}
?>
<?php
$i=0;
$texte="je test le [ code]texte colorie[ /code] et [ code]texte colorie2[ /code] fois";
preg_match_all('`\[ code](.+?)\[ /code]`si', $texte , $Result);
$nbr=count($Result);
$ik=count($Result[1]);
echo 'ik : '.$ik.'<br>';
echo 'nbr : '.$nbr;
while($i<$ik){
echo '<br> result[0]['.$i.'] : '.$Result[1][$i];
$i++;
}
?> 
<?php
echo 'comment ca va';
while ($i<$o){
elextrise($o);
echo '$test';
}?>
<?php
echo '<a href="http://www.graphiks.net">Test</a>';
?>


<html>
<head>test</head>
<body bgstyle="color: grey">
Comment va le monde ?<br>
Cool, moi aussi<br>
<?php
$moi=25;
while($toi<$moi){
$lui[$i]=$toi-moi;
echo $lui.'<br>';
$toi++;
}
?>
</body>
</html>

<?php
$i=0;
$texte="je test le [ code]texte colorie[ /code] et [ code]texte colorie2[ /code] fois";
preg_match_all('`\[ code](.+?)\[ /code]`si', $texte , $Result);
$nbr=count($Result);
$ik=count($Result[1]);
echo 'ik : '.$ik.'<br>';
echo 'nbr : '.$nbr;
while($i<$ik){
echo '<br> result[0]['.$i.'] : '.$Result[1][$i];
$i++;
}
?> 
<?php
$i = 0;
$Result ='';
preg_match_all('`\[ code](.+?)\[ /code]`si', $row['texte'] , $Result);
$nbr=count($Result);
$ik=count($Result[1]);
echo 'ik : '.$ik.'<br>';
echo 'nbr : '.$nbr;
while($i<$ik){
echo '<br> result[0]['.$i.'] : '.$Result[1][$i];
$i++;
}
?> 
Salut, sérieux la j'ai rien piger ! je vais t'expliquer comment j'suis organiser !
j'ai une fonction pour transformer le bbcode qui est comme sa :
<?PHP
function bb_msg($message)
{
$message = str_replace("[br/]","<br/>",$message); // REPLACE <br/>
$message = preg_replace('`\[u\](.*?)\[/u\]`', '<u>$1</u>', $message); // REPLACE <u>
$message = preg_replace('`\[i\](.*?)\[/i\]`', '<i>$1</i>', $message); // REPLACE <u>
$message = preg_replace('`\[b\](.*?)\[/b\]`', '<strong>$1</strong>', $message); // REPLACE <u>
$message = preg_replace('`\[s\](.*?)\[/s\]`', '<s>$1</s>', $message); // REPLACE <u>
$message = preg_replace('`\[center\](.*?)\[/center\]`', '<center>$1</center>', $message); // REPLACE <u>
$message = preg_replace('`\[code\](.*?)\[/code\]`', '<code>$1</code>', $message); // REPLACE <u>
$message = preg_replace('`\[lien=(.*?)\](.*?)\[/lien\]`', '<a href="$1" target="_blank">$2</a>', $message);
## LES COULEURS ######
$message = preg_replace('`\[blanc\](.*?)\[/blanc\]`', '<font style="color: #FFFFFF">$1</font>', $message);
$message = preg_replace('`\[rouge\](.*?)\[/rouge\]`', '<font style="color: #FF0000">$1</font>', $message);
$message = preg_replace('`\[vert_fluo\](.*?)\[/vert_fluo\]`', '<font style="color: #00FF00">$1</font>', $message);
$message = preg_replace('`\[jaune\](.*?)\[/jaune\]`', '<font style="color: #FFFF00">$1</font>', $message);
$message = preg_replace('`\[bleu\](.*?)\[/bleu\]`', '<font style="color: #0000FF">$1</font>', $message);
$message = preg_replace('`\[fuchsia\](.*?)\[/fuchsia\]`', '<font style="color: #FF00FF">$1</font>', $message);
$message = preg_replace('`\[aqua\](.*?)\[/aqua\]`', '<font style="color: #00FFFF">$1</font>', $message);
$message = preg_replace('`\[argent\](.*?)\[/argent\]`', '<font style="color: #C0C0C0">$1</font>', $message);
//=================
$message = preg_replace('`\[noir\](.*?)\[/noir\]`', '<font style="color: #000000">$1</font>', $message);
$message = preg_replace('`\[bordeaux\](.*?)\[/bordeaux\]`', '<font style="color: #800000">$1</font>', $message);
$message = preg_replace('`\[vert\](.*?)\[/vert\]`', '<font style="color: #008000">$1</font>', $message);
$message = preg_replace('`\[olive\](.*?)\[/olive\]`', '<font style="color: #808000">$1</font>', $message);
$message = preg_replace('`\[marine\](.*?)\[/marine\]`', '<font style="color: #000080">$1</font>', $message);
$message = preg_replace('`\[violet\](.*?)\[/violet\]`', '<font style="color: #800080">$1</font>', $message);
$message = preg_replace('`\[teal\](.*?)\[/teal\]`', '<font style="color: #008080">$1</font>', $message);
$message = preg_replace('`\[gris\](.*?)\[/gris\]`', '<font style="color: #808080">$1</font>', $message);
## ######################## ######
return $message;
}
?>
!
Nous - Plan du site - Informations légale - Contact - © Graphiks.net