banniere
<=
<?php
 
@INCLUDED OR die();
 if (
$kernel->getQueryVar('dir') === false) die();
 
$dir $kernel->makeSecureUrl($kernel->getQueryVar('dir'));
 if (!
file_exists(DEFAULT_DIR.'/'.$dir)) echo 'Impossible d'ouvrir le fichier.';
 else {
  
$kernel->setQueryVar('page''list');
  
$kernel->setQueryVar('dir'dirname($dir));
  echo 
'<a href="?'.$kernel->getQuery().'"><=</a><br />';
  
$kernel->setQueryVar('page''displaysynt');
  
$kernel->setQueryVar('dir'$dir);
?><pre class="synthighlight_default">
<?php
 $u 
create_function('$s,$n''if ((!is_numeric($n)) || (!isset($s{$n})) || (!isset($s{$n-1})) || ($s{$n-1} != \'\\\\\')) return false; for ($u = 0, $i = $n-1; $i >= 0; $i--, $u++) { if ($s{$i} != \'\\\\\') break; } return (bool) ($u % 2);'); // fonction pour savoir si un backslash interfere avec le caractere suivant
 
$f file_get_contents(DEFAULT_DIR.'/'.$dir);
 
$g strlen($f);
 
$e '';
 for (
$i 0$i $g$i++) {
  switch (
$f{$i}) {
   case 
'\'':
    
$e .= '<span class="synthighlight_quotes">\'';
    while ((isset(
$f{++$i})) && (($f{$i} != '\'') || ($u($f$i)))) $e .= htmlentities($f{$i});
    if (isset(
$f{$i}) && $f{$i} == '\''$e .= '\'';
    else if (isset(
$f{$i})) $i--;
    
$e .= '</span>';
   break;
   case 
'"':
    
$e .= '<span class="synthighlight_quotes">"';
    while ((isset(
$f{++$i})) && (($f{$i} != '"') || ($u($f$i)))) $e .= htmlentities($f{$i});
    if (isset(
$f{$i}) && $f{$i} == '"'$e .= '"';
    else if (isset(
$f{$i})) $i--;
    
$e .= '</span>';
   break;
   case 
'{':
   case 
'}':
    
$e .= '<span class="synthighlight_acoll">'.htmlentities($f{$i}).'</span>';
   break;
   case 
'(':
   case 
')':
   case 
'[':
   case 
']':
   case 
'<':
   case 
'>':
    
$e .= '<span class="synthighlight_parenth">'.htmlentities($f{$i}).'</span>';
   break;
   case 
'/':
    if (!isset(
$f{$i+1}) || $f{$i+1} != '/'$e .= '<span class="synthighlight_operators">'.htmlentities($f{$i}).'</span>';
    else {
     
$e .= '<span class="synthighlight_comments">/';
     while ((isset(
$f{++$i})) && (!in_array($f{$i}, Array("\r""\n")))) $e .= htmlentities($f{$i});
     
$e .= '</span>';
    }
   break;
   case 
'+':
   case 
'-':
   case 
'*':
   case 
'>':
   case 
'<':
   case 
'=':
   case 
'^':
   case 
'&':
   case 
'|':
   case 
'~':
   case 
'.':
   case 
';':
   case 
':':
   case 
'%':
    
$e .= '<span class="synthighlight_operators">'.htmlentities($f{$i}).'</span>';
   break;
   default:
    
$e .= htmlentities($f{$i});
  }
 }
 echo 
$e;
?></pre><?php ?>