Alex: set_time_limit wird ignoriert bei shell aufruf/Script läuft ewig

Hallo,

ich habe ein Script das als Server dient und sich und unter Debian an einen Socket bindet ( per inetd.conf ).
Das Script selbst ist ausführbar ( 755 ). Teste es direkt über die Shell ( ./script.php ) aber auch mit php -e script.php macht es keine Unterschied.

Es frägt eigentlich nur die Eingaben ab nach folgendem Schema:

Auszug:

  
PHP-Code:  
#!/usr/bin/php  
<?php  
// Zeitlimit setzen  
set_time_limit(4);  
...  
$input = fgets(STDIN);  
echo $ausgabe;  
...  
...

Leider ignoriert es ein set_time_limit komplett und läuft endlos weiter was so nicht tragbar ist.

Irgendeiner eine Idee oder Lösungvorschlag?

  1. Hi,

    Irgendeiner eine Idee oder Lösungvorschlag?

    Ja :)

    Gruß,
    Felix

    --
    Given a choice between dancing pigs
    and security, users will pick dancing pigs every time.
  2. Auszug:

    PHP-Code:
    #!/usr/bin/php
    <?php
    // Zeitlimit setzen
    set_time_limit(4);
    ...
    $input = fgets(STDIN);
    echo $ausgabe;
    ...
    ...

      
    Ich habe jetzt keinen direkten Lösungsvorschlag aber ich würde mal folgendes probieren.  
      
    Lege eine Datei an. Beispiel: test.php  
    Funktioniert in der SHELL meist mit touch test.php  
      
    Öffne die angelegte Datei und schreibe folgendes rein:  
      
    <?php  
      
    set\_time\_limit(4);  
    $input = fgets(STDIN);  
    echo $ausgabe; <-- wobei ich nicht verstehe was bei $ausgabe raus kommen soll, wenn du diese Variable vorher nirgendwo beschrieben hast aber ich gehe mal davon aus das, dass nur ein Beispiel sein soll.  
      
    ?>  
      
    Führe die die Datei nun mit folgendem Befehl aus:  
    php test.php  
      
    Hinweis: Um php Datein auf diese Weise ausführen zu können benötigst du das Programm php-cli.  
      
    Melde dich noch einmal falls auch das nicht funktionieren sollte.  
      
    gruß Stefan