MudGuard: include() in switch()

Beitrag lesen

Hi,

<?php
$site = $_GET[site];
switch($site) {
include("/sites/includes.php");
}

?>


> nun zeigt der mir aber folgendes an:  
> Parse error: syntax error, unexpected T\_INCLUDE, expecting T\_CASE or T\_DEFAULT or '}' in C:\\*.... on line 163  
  
natürlich.  
In einem Switch müssen immer case und max. ein default sein.  
Erst nach einem case- oder default-Label kann sonstiger Code kommen.  
  

> Mir ist jetzt also klar, dass man DIREKT in ein switch() nichts includen kann. Man muss dass include() wenn dann in ein CASE schreiben.  
  
nach einem case, nicht in.  
Die einzelnen cases (inkl. defaults) sind Labels - je nach Wert im Switch wird eines der Label angesprungen.  
  
Selbst wenn der Code vor dem ersten case stehen dürfte:  
er würde ja gar nicht ausgeführt, da zum ersten case gesprungen wird, der zur Bedingung paßt.  
  

> Kann man dass irgendwie machen, dass man dass include() direkt in dass switch() (erstes) reinschreiben kann?  
  
Nein. Das geht nicht.  
  
Was wäre der Sinn?  
Wenn der include auf jeden Fall ausgeführt werden soll, dann schreib ihn VOR den switch.  
  
cu,  
Andreas

-- 
[Warum nennt sich Andreas hier MudGuard?](http://MudGuard.de/)  
[O o ostern ...](http://ostereier.andreas-waechter.de/)  
  
Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.