Helmertz

webbjunkie

Twitter exceptions

December24

Gårdagens genomgång av exceptions kan kompletteras på många sätt och vis. Nedan beskrivs ett sätt.

Exceptions till Twitter

En tysk galning (Johannes Schlüter) har skrivit en extension för php som sammanbinder exceptions med microblogging-applikationen Twitter. Jag har inte tittat på koden men inläggen på personen i frågas twitter-konto skvallrar om att varje fångad exception tillägnas ett inlägg. Grymt!

Ett varnande finger

Som alltid när något offentliggörs bör man vara extra försiktig så att inte någon sitter och tolkar felen till sin fördel. I sådana fall bör man överväga att logga felen till en databas och därefter hämta dem via RSS istället.

posted under livet | 1 Comment »

Except the unexcepted

December23

Ikväll (och på jobbet) har temat varit — exceptions!

Se några exempel:

posted under livet | No Comments »

Låt dina funktioner svälja allt

November19

När man sitter och använder klasser man själv inte skrivit kan det vara svårt att veta precis vilka anrop (och i vilka format) som behövs. Om man ska mata in ett flertal värden till en array, t.ex. $db->getById($ids), ska man ange ett flertal via $db->getById(1,2) eller $db->getById(array(1, 2)), eller kanske en blandning: $db->getById(1, 2, array(3, 4))? Designen nedan sväljer allt.

function getById() {
    $args = func_get_args();
    $one_dim_array = array();
    foreach(new RecursiveIteratorIterator(new RecursiveArrayIterator($args)) as $value) {
        $one_dim_array[] = $value;
    }
    return $one_dim_array;
}

Nackdelar:

  • Användare tillåts vara lata och undvika konventioner som kan vara effektivare.
  • Om man inte särbehandlar de inmatade arrayernas nycklar mister man dem, skriven som funktionen ovan fungerar den bäst om bara en typ av argument ska matas in.

Mitten hämtades från phppro.org.

posted under livet | No Comments »

Kommentera mera

November4

Detta är riktigt effektivt:

/*
// $var blir bortkommenterad
$var = 'hej hopp';
//*/
$lala = 'poe';

Och för att kommentera bort den första delen:

//*
// $var är inte längre bortkommenterad
$var = 'hej hopp';
//*/
$lala = 'poe';

För att debugga behövs alltså endast ett extra snedstreck innan starttecknet för flerradskommentaren.

posted under livet | No Comments »