ID: 38826 Updated by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] -Status: Open +Status: Feedback Bug Type: Streams related Operating System: WinXP PHP Version: 5.1.6 New Comment:
And the URL "http://localhost/256as.file" does work for you in a browser and using telnet, right? Previous Comments: ------------------------------------------------------------------------ [2006-09-14 21:53:53] [EMAIL PROTECTED] Yes, the var_dump going to your file remotely does: string(256) "aaaaaaaaaaaaa...... It is your fle that I copied to make my 256as.file. But when I copy your file under my Apache and do file_get_contents to it I get the empty string. So I can only suppose that it is somehow something to do with my local 5.1.6. PHP CLI talking to my local Apache with 5.1.6 underneath, on WinXP. ------------------------------------------------------------------------ [2006-09-14 17:37:41] [EMAIL PROTECTED] Does this work for you: var_dump(file_get_contents("http://tony2001.phpclub.net/dev/tmp/info.xsd")); ? ------------------------------------------------------------------------ [2006-09-14 17:02:02] [EMAIL PROTECTED] Sorry, I didn't mean to be rude with "not sure how seriously" - it looked like a boilerplate text and I thought it might be an automated response. And because it was just the size of the file that mattered I didn't think to put a copy of it in the defect; but I should have made that clearer. Anyway, I am baffled. When I use file_get_contents to go for your file remotely it works fine, but if I put your file on my machine and go for it with localhost it goes wrong. I am running Apache/2.0.59 (Win32) PHP/5.1.6, by the way. I have got two files, one with 255 a's and one with 256 - which is the file that you put up. CURL gets correct contents and byte counts, file_get_contents does not. The Apache access log claims it is returning 255 and 256 bytes each time, though. I am running it with CLI. Here is my test now, comparing CURL with file_get_contents: <?php $buf = file_get_contents('http://localhost/255as.file'); echo strlen($buf) . "\n"; $buf = file_get_contents('http://localhost/256as.file'); echo strlen($buf) . "\n"; $curl_handle=curl_init(); curl_setopt($curl_handle,CURLOPT_URL,'http://localhost/255as.file'); curl_setopt($curl_handle,CURLOPT_RETURNTRANSFER,true); $buf = curl_exec($curl_handle); curl_close($curl_handle); echo strlen($buf) . "\n"; $curl_handle=curl_init(); curl_setopt($curl_handle,CURLOPT_URL,'http://localhost/256as.file'); curl_setopt($curl_handle,CURLOPT_RETURNTRANSFER,true); $buf = curl_exec($curl_handle); curl_close($curl_handle); echo strlen($buf) . "\n"; ?> It relies on the two files 255as.file and 256as.file being in the local server's docroot. The output I get is: 255 0 255 256 The Apache access log says: 127.0.0.1 - - [14/Sep/2006:17:43:31 +0100] "GET /MyService/AddressBook/255as.file HTTP/1.0" 200 255 127.0.0.1 - - [14/Sep/2006:17:43:31 +0100] "GET /MyService/AddressBook/256as.file HTTP/1.0" 200 256 127.0.0.1 - - [14/Sep/2006:17:43:32 +0100] "GET /MyService/AddressBook/255as.file HTTP/1.1" 200 255 127.0.0.1 - - [14/Sep/2006:17:43:32 +0100] "GET /MyService/AddressBook/256as.file HTTP/1.1" 200 256 If you were able to point me to the right routine in PHP I could add a bit of diagnostic code and rebuild...or if I can help in any other way. My colleague, who has a very similar set up (but running 5.1.4) sees the same thing on her machine, completely independent of mine, by the way. ------------------------------------------------------------------------ [2006-09-14 12:49:15] [EMAIL PROTECTED] >I am not sure how seriously to take the response Well, I'm not sure either how to take a report with "http://localhost" as a test data. ------------------------------------------------------------------------ [2006-09-14 12:48:19] [EMAIL PROTECTED] Please upload the file somewhere and put the link here. Make sure you're looking into the source of the page or even better try it with CLI. I cannot reproduce anything like that: var_dump(file_get_contents("http://tony2001.phpclub.net/dev/tmp/info.xsd")); works like a charm with any PHP version I have here (and I have a lot of them). ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/38826 -- Edit this bug report at http://bugs.php.net/?id=38826&edit=1