Wie streame ich die Java-Programmausgabe in Echtzeit von PHP auf einer Website mit Exec() und AJAX?

DDD
Freigeben: 2024-10-22 19:09:03
Original
935 Leute haben es durchsucht

How to Stream Java Program Output in Real Time from PHP on a Website Using Exec() and AJAX?

Java-Programme von PHP auf einer Website ausführen

Viele Websites ermöglichen Benutzern die Interaktion mit Java-Programmen, beispielsweise das Ausführen von Simulationen oder das Bearbeiten von Daten. Um dies zu erreichen, bietet PHP die Funktion exec(), mit der Sie Java-Befehle aufrufen und Standardausgaben zurück an die Website weiterleiten können.

Java von PHP aus ausführen

Utilizing exec() können Sie Java-Anwendungen einfach aufrufen. Zum Beispiel:

<code class="php"><?php exec("java -jar file.jar arguments", $output); ?></code>
Nach dem Login kopieren

Dieser Befehl startet die Java-Anwendung file.jar mit den angegebenen Argumenten.

Echtzeit-Ausgabe-Streaming

Zu Um die Ausgabe von Java-Programmen auf der Website anzuzeigen, können Sie AJAX oder JavaScript nutzen. Eine Methode besteht darin, die Funktion setTimeout() zu verwenden, um den Server regelmäßig nach Updates abzufragen:

<code class="javascript">function checkOutput() {
  $.ajax({
    url: "server_script.php",
    success: function(data) {
      $("#output").html(data);
      setTimeout(checkOutput, 1000);  // Check every second
    }
  });
}</code>
Nach dem Login kopieren

Im PHP-Skript können Sie die Java-Programmausgabe kontinuierlich mit tail() abrufen:

<code class="php"><?php
  $filename = "tmp/output.txt";
  $lines = tail($filename, 10);  // Retrieve the last 10 lines of output
  
  // Update the client with the new lines
  echo json_encode($lines);
?></code>
Nach dem Login kopieren

Dieser Ansatz ermöglicht es Ihnen, den Fortschritt des Java-Programms in Echtzeit im Browser des Benutzers anzuzeigen. Es ist jedoch wichtig, Sicherheitsbedenken sorgfältig zu behandeln, um die Ausführung von Schadcode zu verhindern.

Das obige ist der detaillierte Inhalt vonWie streame ich die Java-Programmausgabe in Echtzeit von PHP auf einer Website mit Exec() und AJAX?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage