function listeOccurrences($regexp, $texte) { if (preg_match_all($regexp, $texte, $res)) { return tableau_en_table($res[0], "{$regexp} {$texte}"); } return "<div>{$texte} ne correspond pas au motif {$regexp}</div>"; }
function listesOccurrences($regex, $chaineEntree) { if (!preg_match_all($regex, $chaineEntree, $resultTable)) { return "<div>la chaine entree ne correspond pas au motif !!</div>"; } else { return tableau_en_table($resultTable[0], "{$regex} {$chaineEntree}"); } }
function tableau_mail($num, $entetes, $message) { foreach ($entetes as $k => $v) { if (is_array($v)) { $v = "<ul><li>" . join("</li><li>", array_map("htmlspecialchars", $v)) . "</li></ul>"; } $v = htmlspecialchars($v); $entetes[$k] = preg_replace("/\n/s", "<br />\n"); } $message = preg_replace("/\r\n/s", "<br />\n", htmlspecialchars($message)); $message = "<tr><td colspan='2'>{$message}</td></tr>\n</table>"; return preg_replace('@</table>@', $message, tableau_en_table($entetes, "Mail {$num}")); }
function saisies_en_table($t, $legende) { $r = array(); // Le tableau etant des saisies de l'utilisateur // il faut se mefier de ce qu'il a pu ecrire comme "<" etc // y compris pour les index qui peuvent resulter d'une query-string ad hoc foreach ($t as $k => $v) { $r[htmlspecialchars($k)] = htmlspecialchars($v); } // A l'inverse, la legende etant fournie par le programmeur // on fait confiance aux chevrons qui y figurent, on ne transcode pas. // cf exemple ci-dessous return tableau_en_table($r, $legende); }
function message_erreur($s, $adrIP) { $newAdrIP = str_replace('.', '\\.', $adrIP); $mois = date("M"); $errMessFormat = "/\\[{$mois} \\d+ (..:..:..) 2016\\] \\[:error\\] \\[client {$newAdrIP}\\](.+)/"; if (!preg_match_all($errMessFormat, $s, $resultTable, PREG_SET_ORDER)) { return "<div>La chaine entree ne correspond pas au motif !!</div>"; } else { $result = array(); foreach ($variable as $key) { $result[$key[1]] = $key[2]; } return tableau_en_table($result, "{$mois} {$adrIP}, {$errMessFormat} erreurs"); } }
function message_erreur($s, $IP, $mois = '') { $mip = str_replace('.', '\\.', $IP); if (!intval($mois)) { $mois = @date('M'); } $re = "/{$mois} \\d+ (..:..:..) 20..\\] \\[error\\] \\[client {$mip}\\](.+)/"; $n = preg_match_all($re, $s, $m, PREG_SET_ORDER); if (!$n) { return "<div>Rien vu.\n</div>"; } $sol = array(); foreach ($m as $v) { $sol[$v[1]] = $v[2]; } return tableau_en_table($sol, "{$mois} {$IP}", "{$n} erreurs"); }
<?php // 1. 5.5.9-1ubuntu4.14 // 2. Oct 28 2015 01:34:23 // 3. $_SERVER include 'entete.php'; include "array_to.php"; error_reporting(E_ALL); echo entete("ACS - TME2"); echo "<body>"; echo tableau_en_table($_SERVER, "Valeur du variable super global"); echo "</body></html>";