phpbar.de logo

Mailinglisten-Archive

[php] passthru() gibt Leerzeile aus?

[php] passthru() gibt Leerzeile aus?

Philipp Bosch pb_(at)_webfactory.de
Sun, 13 Jun 1999 17:35:59 +0200


Alex Killing wrote:
> 
> hallo philipp,
> 
> Philipp Bosch schrieb:
> > Das stimmt nicht ganz. Die Variablenzuordnung klappt einwandfrei, ich
> > kann später auf die Variable zugreifen, ohne daß vorher der Output von
> > passthru() bereits ausgegeben wurde.
> 
> also, die Zeile
> 
> $str = passthru("pwd");
> 
> erzeugt bei mir bereits einen Output (Linux), bei Dir nicht ???

Doch. Aber trotzdem funktioniert das in meinem Skript irgendwie. Kann
mir das jetzt auch nicht ganz erklären. Sieht folgendermaßen aus:

Ich habe eine Klasse, die die Funktion show_image() beinhaltet.

01	function show_image() {
02		$cmd = "/home/pb/bla ".$this->params;
03		$this->imgdata = passthru($cmd);
04		[...]
05		if (empty($this->error)) {
06			print $this->imgdata;
07		} else {
08			print $this->error;
09		}
10	}

Wenn ich jetzt Zeile 06 rauskommentiere, bekomme ich ein "Document
contains no data". Daraus schließe ich, daß die passthru()-Anweisung
noch nicht den Output von $cmd zurückliefert. Ich hatte zeitweise
zwischen Zeile 05 und 06 die Header("Content-Type:
image/bla");-Anweisung drin. Das funktionierte aber nicht - ich bekam
immer ein text/html-Dokument. Jetzt rufe ich Header() vor Ausführen von
passthru() auf und es klappt...

Ich werde jetzt mal den Tip mit popen() versuchen, könnte mir aber
vorstellen, daß das Probleme mit den Binary-Daten gibt...

Gruß,
Philipp.

-- 

 w e b f a c t o r y
  Philipp Bosch <pb_(at)_webfactory.de> - Geschaeftsfuehrer
  Im Uckerfeld 19 - 53127 Bonn - http://www.webfactory.de/
  Fon: 0228-9195200 - Fax: 0228-9195202 - ICQ: 6907593


php::bar PHP Wiki   -   Listenarchive