PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Eine Funktion stoned erklärt


αζρλα zΞя0
15.10.2009, 12:53
Voll die lustige Geschichte... :D

Ich hatte diesen Tag viel zu viel gesmoked und da sah ich die Funktion und wollte einen Gag in die Source einbauen.

Will ich euch ja nicht vorenthalten.

Ich war hammer stoned... :D :D

function get_ranking_g_name($id)
{
// Wenn die ID eines Users vorhanden ist. Sinnloser Kontrollzweck xD
if($id != "")
{
// SQL-Query Erklärung im Sinne von Lesen bildet
// Was brauchen wir denn?
// Natürlich den Rang des Users damit wir ihm
// seine Penisverlängerung schriftlich präsentieren
// können.
// Und der Rang ist in der Datenbank unter ranking_g
// gespeichert.
$sql = "SELECT ranking_g FROM users WHERE id = $id";
// Sinnlose Aufsplittung der Datenbankoperation.
// Mal ehrlich. Man muss doch ohnehin jedes mal
// alles neu schreiben. Warum auch noch Zeit damit
// verschwenden, alles zu trennen.
$sqlquery = mysql_query($sql);
// Das heißt soviel wie: Daten als ein Array ausgeben.
// Wobei mir der Sinn von Arrays, ausser eben diesem
// MySQL-Array, schleierhaft ist. Ich habe noch NIE
// eins gebraucht.
$fassc = mysql_fetch_assoc($sqlquery);
// Nun aus dem Array das wir haben wollen unter $rang speichern.
$rang = $fassc["ranking_g"];

// Nun kommt das verhasste *switch*. Also ich persöhnlich mag es garnicht,
// aber in wenigen Situationen ist es echt besser weil schneller. Der
// Nachteil meiner Meinung nach ist das man keine Sonderfälle behandeln
// kann. Mit einer *if Abfrage* kann man Bedingungen setzen oder auch
// Rangabfragen. Aber da der Rang als Zahl zwischen 1 und 14 gespeichert
// ist und sich das auf absehbare Zeit nicht ändern wird kann man die
// Stärke von *switch* ausnutzen. Klare Bedingungen, einfache Ausgabe.
// Spart Zeit. Das sagt einem der Verstand. Zu kosten der Dynamik.
switch($rang)
{
// Fall *0*. Wird nie passieren. Man sollte mal über eine errorlose
// Source nachdenken.
case "0" : // Fall *0* (Das heißt sollte in der DB *0* stehen
return "Fehlerhafter Rang"; // Das ausgeben
break; // kA was es bedeutet. Ich denke mal, dass das so
// eine Art Stop ist. Fall *0* beendet, oder so.

case "1" : // Fall *1*; Der Standartfall
return "Kein Rang"; // Kein Rang ausgeben.
break; // Runterscrollen! Ich werd nich jeden Fall erklären.

case "2" :
return "Basic Leecher";
break;

case "3" :
return "Leecher";
break;

case "4" :
return "Chief Leecher";
break;

case "5" :
return "Basic Seeder";
break;

case "6" :
return "Seeder";
break;

case "7" :
return "Chief Seeder";
break;

case "8" :
return "Basic Uploader";
break;

case "9" :
return "Uploader";
break;

case "10" :
return "Chief Uploader";
break;

case "11" :
return "Basic Releaser";
break;

case "12" :
return "Releaser";
break;

case "13" :
return "Chief Releaser";
break;

case "14" :
return "Master of the Torrents";
break;

case "15" : // Siehe Fall *0*
return "Fehlerhafter Rang"; // Wird auch NIE passierten..
break;
// *switch* beendet
}
}
// ODER, also wenn keine ID angegeben wurde.
// Was übrigens auch nie der Fall ist..
else
{
// wird statt des Rangnamens ein
// Fehler ausgegeben.
$output = "Keine ID angegeben";
}

// Ausgeben!
return $output;
}

Feudas
15.10.2009, 13:18
der handle für Sonderfälle in switch anweisungen heist default ;)
nur mal so beiläufig.

if ($blub == 0) {
echo "blub ist 0";
} elseif ($blub == 1) {
echo "blub ist 1";
} else {
echo "sondefall";
}


switsch ($blub) {
case 0:
echo "blub ist 0";
break;
case 1:
echo "blub ist 1";
break;
default:
echo "sondefall";
}

nur um mal wieder den besser wisser raushängen zu lassen :P

αζρλα zΞя0
15.10.2009, 13:27
if ($blub == 0)
{
echo "blub ist 0";
}
elseif ($blub == 1)
{
echo "blub ist 1";
}
elseif ($blub == 1 && $sonderregel)
{
echo "blub ist 1 + Sonderregel"
}
else
{
echo "standart";
}

und du machst "swits(c)h" ^^

Feudas
15.10.2009, 20:00
case ($blub == 1 && $sonderregel >= 10):
echo "blub ist 1 + sonderregel";
break;
das macht switch :P
sehr zu empfehlen um switch zu verstehen: PHP: switch - Manual (http://php.net/manual/de/control-structures.switch.php) ;)