$value) { if (isset($GLOBALS[$key])) unset($GLOBALS[$key]); } } function debug($text) { $f = fopen("/tmp/modelbahn-php.log",'a+'); fwrite($f, $text.PHP_EOL); fclose($f); }; function readsend_data() { $data = ""; $input = ""; debug ("opening connection"); $fp = stream_socket_client("unix:///tmp/modelbahn.socket", $errno, $errstr, 30); if (stream_set_blocking ($fp, FALSE) == FALSE) debug ("stream_set_blocking error"); else debug ("stream_set_blocking ok"); if (!$fp) { debug ($errstr . " " . $errno); } else { $json = file_get_contents("php://input"); debug("Send to Server :".$json); fwrite($fp, $json); $timestart = gettimeofday(); $deltatime = 0; while (!feof($fp) && $deltatime < 1000) { $input = fgets($fp, 1024); $data = $data.$input; $timeend = gettimeofday(); if ($timeend["usec"] < $timestart["usec"]) $deltatime = 1000 + ($timeend["usec"] - $timestart["usec"])/1000; else $deltatime = ($timeend["usec"] - $timestart["usec"])/1000; $deltatime = $deltatime + ($timeend["sec"] - $timestart["sec"]) * 1000; } fclose($fp); debug ("got: $data"); debug ("connection closed"); return $data; } return $data; }; $timerstart = microtime(true); debug("*** php script called"); $request = 0; $resultdata = array(); echo readsend_data(); $timeused = microtime(true) - $timerstart; debug ("*** php script finished ********************************* ".$timeused."ms");