PHP try-catch: get-variable definiert, die in versuchen

Ich versuche zum Debuggen von code. Ich möchte zeigen können Variablen definiert, die in try im catch. Zum Beispiel die variable $siteId.

<?php
try {
    $siteId = 3;
    if(1 !== 2) {
        throw new Exception('1 does not equal 2!');
    }
} catch(Exception $e) {
    $moreInfo = '';
    if(isset($siteId)) {
        $moreInfo .= ' SiteId»' . $siteId;
    }
    echo 'Error' . $moreInfo . ':' . $e->getMessage();
}
?>

Die Antwort, die ich bekommen, ist Error: 1 does not equal 2! statt Error SiteId»3: 1 does not equal 2!. Was mache ich falsch?

  • Für mich funktioniert...
  • Jup, ich habe keine Probleme, dass der gewünschte output (" Fehler SiteId»3:1 ist nicht gleich 2!")
  • Oh. Sie Jungs sind richtig! Es funktioniert: ideone.com/ctbe8q ich denke, es ist etwas anderes in meinem code das Problem verursacht. Danke!
  • Funktioniert wie erwartet mit allen PHP-5-Versionen - 3v4l.org/IKODl#tabs
  • "zu lokalisierten, vermutlich einige syntax-Fehler anderswo" (Grund für die enge Abstimmung)
  • Tut mir Leid, Sie zu stören Jungs... Es muss etwas sein, irgendwo in meinem code. Wie kann ich "Abbrechen" in dieser Frage?
  • Gibt es einen link "löschen", direkt unter Ihrer Frage.
  • Sie sollten sich wirklich überlegen, markieren Sie die Antwort durch Naib als die richtige. Die anderen beiden (die haben mehr Stimmen derzeit) falsch sind.

InformationsquelleAutor iDev247 | 2013-07-26
Schreibe einen Kommentar