Heim  >  Artikel  >  Backend-Entwicklung  >  Das PHP-Skript wird erfolgreich ausgeführt, es erfolgt jedoch keine Antwort

Das PHP-Skript wird erfolgreich ausgeführt, es erfolgt jedoch keine Antwort

WBOY
WBOYOriginal
2016-08-04 09:20:582075Durchsuche

Es gibt eine Funktion, die mit dem TP3.1-Framework entwickelt wurde. Nach Abschluss der Berechnung muss {"status":0}
Der endgültige Code lautet

<code> ini_set("max_execution_time", "800");
 
  ...

 $data['status'] = 0;
 Log::write(json_encode($data),Log::DEBUG);
 echo json_encode($data);
 Log::write('echo success',Log::DEBUG);</code>

Das laufende Ergebnis ist

<code>[ 2016-07-18T14:50:36+08:00 ] DEBUG: 运行时间:486.8268s
[ 2016-07-18T14:50:36+08:00 ] DEBUG: {"status":0}
[ 2016-07-18T14:50:36+08:00 ] DEBUG: echo success</code>

Aber die Seite wurde nicht echo json_encode($data);
Die HTTP-Anfrage mit F12 wurde nicht zurückgegeben, aber die Berechnung wurde abgeschlossen und der Code wird grundsätzlich veröffentlicht. Solange Sie einen Teil des Codes löschen, dauert es lange Zeit zum Berechnen, Sie können den Rückgabewert erhalten. Aber ich habe max_execution_time festgelegt und die Berechnung hat die Zeit
Das PHP-Skript wird erfolgreich ausgeführt, es erfolgt jedoch keine Antwort
Das PHP-Skript wird erfolgreich ausgeführt, es erfolgt jedoch keine Antwort

nicht überschritten

Antwortinhalt:

Es gibt eine Funktion, die mit dem TP3.1-Framework entwickelt wurde. Nach Abschluss der Berechnung muss {"status":0}
Der endgültige Code lautet

<code> ini_set("max_execution_time", "800");
 
  ...

 $data['status'] = 0;
 Log::write(json_encode($data),Log::DEBUG);
 echo json_encode($data);
 Log::write('echo success',Log::DEBUG);</code>

Das laufende Ergebnis ist

<code>[ 2016-07-18T14:50:36+08:00 ] DEBUG: 运行时间:486.8268s
[ 2016-07-18T14:50:36+08:00 ] DEBUG: {"status":0}
[ 2016-07-18T14:50:36+08:00 ] DEBUG: echo success</code>

Aber die Seite wurde nicht echo json_encode($data);
Die HTTP-Anfrage mit F12 wurde nicht zurückgegeben, aber die Berechnung wurde abgeschlossen und der Code wird grundsätzlich veröffentlicht. Solange Sie einen Teil des Codes löschen, dauert es lange Zeit zum Berechnen, Sie können den Rückgabewert erhalten. Aber ich habe max_execution_time festgelegt und die Berechnung hat die Zeit
Das PHP-Skript wird erfolgreich ausgeführt, es erfolgt jedoch keine Antwort
Das PHP-Skript wird erfolgreich ausgeführt, es erfolgt jedoch keine Antwort

nicht überschritten

<code class="php">
 ini_set("max_execution_time", "800");
 
  ...

 $data['status'] = 0;
 Log::write(json_encode($data),Log::DEBUG);
 echo json_encode($data);
 Log::write('echo success',Log::DEBUG);

 exit;//退出脚本
</code>

$data['status'] = 0;
echo 1;
Log::write(json_encode($data),Log::DEBUG);
echo 2;
echo json_encode ($data);
echo 3;
Log::write('echo success',Log::DEBUG);

Versuchen Sie es so und sehen Sie, ob es hier läuft

Eine Ajax-Anfrage stellen? Browser F12, um zu sehen, ob der angeforderte Link erfolgreich war und ob eine Antwort eingegangen ist. Die bereitgestellten Informationen sind zu dürftig. Bitte geben Sie weitere Details an.


Ich sehe kein offensichtliches Problem. Ist das Zeitlimit für die mit xhr gestellte Anfrage festgelegt? Der Rückgabewert wird ignoriert, wenn die Berechnung zu lange dauert. Übrigens wird empfohlen, header('Content-Type: application/json');

vor echo json hinzuzufügen
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn