Suite à :[Prog] Le défi geek #2, ou comment faire pour recréer l’alphabet ! (ou de l'incrémentation de chaine)
Voici ma modeste contribution...
[PasteBin]
Eh oui, le PHP recèle des petits joyaux de simplification...
--
Kane Thornwyrd
4 juin 2009
1 juin 2009
Phatso, un Tweeto utilisable ?
tags :
developpement,
framework,
php,
script
0
commentaires
Dans mes recherches j'ai découvert Phatso, un framework PHP en une page, rien de très excitant si ce n'est sa taille et que je le trouve pas trop mal foutu...
[PasteBin]
Je vais détailler le code ici bientôt...
[PasteBin]
Je vais détailler le code ici bientôt...
31 mai 2009
Au-delà du Framework PHP en 1 Tweet !
tags :
framework,
fun,
php,
point de vue,
programmation,
script
0
commentaires
C'est le bon vieux Tweeto, mais je souhaite pousser la réflexion plus loin...
Bon c'est du PHP5.3, mais OMG ! Mais ça fait quoi ?
Détaillons ce script:
C'est juste un "proof of concept" en bonne et due forme.
Perso j'aurai écris:
Ça fait 16 caractères de moins et ça marche sous php 5+.
Et vous, vous avez des p'tit morceaux de code tout mimi comme ça ?
<?php
require __DIR__.'/c.php';
if (!is_callable($c = @$_GET['c'] ?: function() { echo 'Salut !'; }))
throw new Exception('Error');
$c();[PasteBin]Bon c'est du PHP5.3, mais OMG ! Mais ça fait quoi ?
Détaillons ce script:
require __DIR__.'/c.php';- D'abord un "require" qui simplement importe le fichier demandé, en l'occurrence le fichier "c.php" qui se trouve dans le même répertoire. à noter la présence de "__DIR__" qui et une nouveauté qui, comme on peut s'en douter, est une constante renvoyant le répertoire d'exécution du script.
if (!is_callable($c = @$_GET['c'] ?: function() { echo 'Salut !'; }))- En meta code compréhensible: si la variable $_GET['c'] n'est pas une fonction appelable, on continue, sinon on affiche "Salut !" grâce à la fonction anonyme (nouveauté aussi, existait en Java).
throw new Exception('Error');- Si on a continué, c'est à dire que $_GET['c'] n'est pas une fonction, on renvoi une erreur "Error".
$c();- Si on est là c'est que nous n'avons pas envoyé d'erreur, donc on execute la fonction qui se nomme du contenu de $_GET['c']
C'est juste un "proof of concept" en bonne et due forme.
Perso j'aurai écris:
<?php
require 'c.php';
$a = $_GET['a'];
ob_start();
if(!is_callable($a))
header('Location:404.html');
@$a();
ob_end_flush();[PasteBin]Ça fait 16 caractères de moins et ça marche sous php 5+.
Et vous, vous avez des p'tit morceaux de code tout mimi comme ça ?
Inscription à :
Articles (Atom)
