Archiv der Kategorie: PHP-WTF

PHP WTF #1

Ohne viel Worte: was kommt bei dem Code raus?

class çåèäßäöü
{
	public static function weird()
	{
		function stuff()
		{
			return 123;
		}
	}
}

echo çåèäßäöü::wEiRd().sTuFf();
echo çåèäßäöü::weird().stuff();

Geballte „weirdness“. Wenn man jemandem so einen Schnippsel vorlegt und ihn laut nachdenken lässt (Bewerbungsgespräch), stellen sich folgende Fragen

  1. Unicode in Klassennamen? Kann das gehen?
  2. Sind Funktionsnamen case sensitive?
  3. Nested Functions?
  4. Warum sind es 2 Calls?

Und nun zu Auflösung:

  1. Das geht! Klassen, Funktionen und Variablen dürfen unicode-Zeichen beinhalten. (Richtigstellung: Wie Fabian per Kommentar angemerkt hat, ist es kein „wirklicher“ unicode, denn die verwendbaren Zeichen beschränken sich auf den regulären Ausdruck
    [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*

    Natürlich ist das nicht empfehlenswert, aber prinzipiell möglich)

  2. Auch das haut hin.
Den ganzen Post lesen
Veröffentlicht unter php, PHP-WTF, webdev | 8 Kommentare