2016-06-27 6 views
1

Ich habe diese Anweisung, die in einer PHP-Datei enthält. Und damit stürzt die Ausführung ab. Nichts wird vor und nach der Aussage ausgeführt.PHP | Switch-Anweisung stürzt Ausführung

switch ($type) { 
    case "contact_page" : 
     $subject = "Вопрос со страницы Контакты"; 
     $user_email = filter_var($_POST["email"], FILTER_SANITIZE_EMAIL); 
     break; 
    case "call_ask" : 
     $subject = "Просьба позвонить"; 
     break; 
    case "calculator" : 
     $subject = "Калькулятор"; 
     $user_email = filter_var($_POST["email"], FILTER_SANITIZE_EMAIL); 
     break; 
    default : 
     $output = json_encode(['type' => 'error', 'text' => 'Запрос из неверного типа формы.']); 
     die($output); 
} 

Wenn ich dies durch if...else Anweisung ersetzen, führt alles gut aus. Kann keinen Fehler finden.

+4

so beginnen jeweils Auskommen dieser Linien und Figuren aus welchem ​​der Absturz verursacht wird. es gibt nichts, was falsch aussieht. –

+0

@KA_lin: sinnlos + nutzlos. Der Standardwert ist der letzte in diesem Schalter, es besteht also keine Notwendigkeit für eine Pause, und eine Pause ist nirgends erforderlich, daher kann die Anwesenheit/Abwesenheit einer Unterbrechung nicht zum Absturz führen. –

+0

Wie rufen Sie diese Funktion auf? und was ist die Ausgabe von 'var_dump ($ type);'? –

Antwort

2

Die PHP-Version unterstützt nicht die neue Array-Notation (5.4+ von dem, was ich weiß).

Einsatz im default Fall:

$output = json_encode(array('type' => 'error', 'text' => 'Запрос из неверного типа формы.')); 
+2

Ja, es ist das Problem. Vielen Dank für Ihre Aufmerksamkeit. Wirklich, ich vergesse das. –

+0

Das ist lustig, dass Leute immer noch in alten Versionen von PHP sind. Zum Beispiel verwende ich immer die neueste Version von PHP (jetzt v. 7) und es ist mir egal, ob es Ausnahmen gibt, ich werde es beheben. – num8er

0

Upgrade-PHP> 5.4

oder Update-Code ab:

json_encode(['type' => 'error', 'text' => 'Запрос из неверного типа формы.']); 

zu

json_encode(array('type' => 'error', 'text' => 'Запрос из неверного типа формы.')); 
+0

Leider kann ich PHP nicht upgraden und habe keine Erlaubnis. Und, ja, das ist das Problem. –

+0

oh ... diese Admins ... (: – num8er