24/03/2009

Un interprète PHP, en PHP

Pour l'instant je pars à la découverte du PHP. Découvrir un nouveau langage implique de beaucoup "jouer" avec, de tester des petites choses, d'exécuter pas mal de "one-liners". Oui mais quand ces "one-liners", pour bien faire, doivent être dans du markup correct et être exécutés par un serveur, on se retrouve vite à faire beaucoup d'aller-retours entre l'éditeur et le navigateur.

Donc j'ai fait un interprète PHP, en PHP, qui se présente sous la forme d'un textarea dans lequel entrer son code source, et d'un bouton exécutant le code entré. Le résultat de l'exécution est affiché au-dessus du textarea qui reprend le code exécuté, ce qui permet de s'amuser sans devoir taper à nouveau tout le code.

Disons que ça peut servir...

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Interprete PHP</title>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
</head>
<body>
<?php
if (!isset($_POST["submit"])) {
    // COMMANDE
    $code = "Entrez du code PHP ici";
    }
else {
    // RESULTAT
    $code = $_POST["code"];
    $code = ereg_replace('[\]["]','"',$code);
    $code = ereg_replace("[\][']","'",$code);
    echo eval($code);
    }
print '<form action="./interprete.php" method="post">';
print '<p>';
print '<textarea name="code" rows="25" cols="80">' . $code . '</textarea><br />';
print '<input type="submit" name="submit" value="Executer" />';
print '</p>';
print '</form>';
?>
</body>
</html>
<!-- 2009-03-24 Jean Karim Bockstael - license CC-BY-SA --> 

Dans une page XHTML valide, parce que c'est quand même plus sympa :)


Tags:

cc-by-sa | code (php) | hack | outil


Project Euler : solution au problème 20, en Python (25/03/2009)Les messages des poubelles (17/03/2009)