php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 02.06.2006, 10:00  
Benutzer
 
Registriert seit: 27.10.2004
Beiträge: 50
micbur
Standard Ausgaben externer Programme verwerten

Hallo,

ich arbeite meist mit einer Kombination aus PHP & Bash. Um meine Bash-Scripte aufzurufen nehme ich meist system(). Allerdings bekomme ich die Ausgaben von den Befehlen nicht in eine Variable. Ich würde das nämlich noch weiter auswerten wollen und dann das Verhalten vom PHP-Script beeinflussen wollen.

Was müss ich dafür nehmen, dass der Aufruf eines externen Programms in eine Variable kommt? exec() hatte ich auch schon durch.

Ciao, micbur
micbur ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 02.06.2006, 10:21  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

Wieso nicht? Also, laut Manual müsste das gehn
PHP-Code:
$cmd system($program); 
Ich nehme dann mal an, dass es einfach nicht zufriedenstellend arbeitet?
__________________
Nicht jeder Fehler ist ein Bug.
KingCrunch ist offline  
Alt 02.06.2006, 10:48  
Benutzer
 
Registriert seit: 27.10.2004
Beiträge: 50
micbur
Standard

Hallo,

ja genau.
Code:
<?php
  $cmd = system(programm);
?>


 text </p>
<?php
   echo $cmd;
?>
dort kommt die Ausgabe trotzdem vor dem Text. Es sollte aber die Ausgabe nach dem Text kommen.

Ciao, micbur
micbur ist offline  
Alt 02.06.2006, 10:56  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

haha, hehe, Denkfehler
Zitat:
Die Funktion system() ähnelt der C Version der Funktion sehr, indem es einen übergebenen Befehl ausführt und dessen Ausgabe anzeigt. Wir als zweiter Parameter der Funktion eine Variable übergeben, so wird der Rückgabestatus des Befehls in diese geschrieben.
Manual

PHP-Code:
$letzteZeile system($programm,$gesammteAusgabe); 
Try
__________________
Nicht jeder Fehler ist ein Bug.
KingCrunch ist offline  
Alt 02.06.2006, 11:39  
Benutzer
 
Registriert seit: 27.10.2004
Beiträge: 50
micbur
Standard

Also irgendwie zankt der mit mir:

Code:
<?php
  $cmd = system('sh test.sh', $complete);
?>


Text</p>
<?php
  echo $cmd . "
";
  echo $complete . "
";
?>
wobei in der test.sh folgendes steht:
Code:
#!/bin/sh

echo "Hallo"
echo "Welt"
echo "Name"
da kommt dann die Ausgabe (HTML-Quelltext):
Code:
Hallo
Welt
Name


Text</p>
Name
0
Ich nehme mal an, dass das schon was zu bedeuten hat, wenn da steht: string system ( string befehl [, int return_var] ).
der zweite Parameter ist halt nur ein Integer.

Ciao, micbur
micbur ist offline  
Alt 02.06.2006, 14:55  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von micbur
Ich nehme mal an, dass das schon was zu bedeuten hat, wenn da steht: string system ( string befehl [, int return_var] ).
Richtig. KingCrunch hat die Funktion anscheinend mit exec() verwechselt. system() gibt das Ergebnis sofort aus.

Zitat:
Zitat von micbur
dort kommt die Ausgabe trotzdem vor dem Text. Es sollte aber die Ausgabe nach dem Text kommen.
http://php.net/exec

Bedien dich...
 
Alt 02.06.2006, 16:04  
Erfahrener Benutzer
 
Registriert seit: 13.08.2007
Beiträge: 1.976
KingCrunch befindet sich auf einem aufstrebenden Ast
KingCrunch eine Nachricht über ICQ schicken KingCrunch eine Nachricht über AIM schicken KingCrunch eine Nachricht über MSN schicken KingCrunch eine Nachricht über Yahoo! schicken
Standard

Stimmt, und die wiederum habe ich mit passthru verwechselt Deshalb hab ich da auch nich geschaut -.-
__________________
Nicht jeder Fehler ist ein Bug.
KingCrunch ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Einnahmen und Ausgaben monatsweise ausgeben PHP Tipps 2005 1 02.03.2005 20:49
PHP-Datei ausführen und Ausgaben an Var übergeben - wie? zwelch PHP Tipps 2005 2 14.01.2005 18:46
[Erledigt] Programme für Php Off-Topic Diskussionen 2 17.07.2004 18:15

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php exec rückgabestatus auswerten

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:55 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.