PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : kann man das irgendwie vereinfachen? switch it zwei variablen!?


MadMan2k
2004-08-12, 11:37:58
$_POST['symbolic'] ist die Usereingabe
$symbolic ist der aktuelle Status des Links


if(!(isset($_POST['symbolic']) OR $symbolic))//NOR
// keine Änderung > zum Editor

elseif(isset($_POST['symbolic']) AND $symbolic)
// keine Änderung > zur Überischt

elseif(!isset($_POST['symbolic']) AND $symbolic)
// Änderung auf hardlink > eintrag erstellen

elseif(isset($_POST['symbolic']) AND !$symbolic)
// Änderung auf Symbolisch > eintrag löschen


kann man das noch irgendwie vereinfachen/ eleganter Lösen?
der Wahrscheinlichkeit nach sind sie schon sortiert...

DocEW
2004-08-12, 18:03:55
Ich kenne mich kein Stück mit PHP aus, daher habe ich nur versucht, die Syntax nachzuahmen, aber so müßte es auch gehen:

if(isset($_POST['symbolic']))
if($symbolic)
// keine Änderung > zur Überischt
else
// Änderung auf Symbolisch > eintrag löschen
else
if($symbolic)
// Änderung auf hardlink > eintrag erstellen
else
// keine Änderung > zum Editor

MadMan2k
2004-08-13, 01:24:06
Ich kenne mich kein Stück mit PHP aus, daher habe ich nur versucht, die Syntax nachzuahmen, aber so müßte es auch gehen:

if(isset($_POST['symbolic']))
if($symbolic)
// keine Änderung > zur Überischt
else
// Änderung auf Symbolisch > eintrag löschen
else
if($symbolic)
// Änderung auf hardlink > eintrag erstellen
else
// keine Änderung > zum Editor



in die Richtung das zu verschachteln habe ich gar nicht gedacht - thx

peanball
2004-08-13, 10:06:01
kannst aber auch was sinnloseres und kompakteres machen:


switch (true)
{
case !(isset($_POST['symbolic']) OR $symbolic):
// blubb...
case isset($_POST['symbolic']) AND $symbolic:
// etc... du verstehst das Prinzip
}
Leichter lesbar wirds dadurch aber nicht. Ich führe das nur mal der Vollständigkeit halber auf.
Die Lösung mit dem "Gruppieren" gefällt mir da weit besser, weil se auch logischer strukturiert ist.