2012-01-21 2 views
1

컬 세션을 디버그하려하지만 작성된 파일에서 데이터를 읽을 수 없습니다. 아래의 코드에서 file_get_contents는 false를 반환하고 빈 페이지가 보여줍니다curl을 사용한 후 텍스트 파일에서 읽기

<?php 

$curl = curl_init(); 
curl_setopt ($curl, CURLOPT_URL, "http://www.php.net"); 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($curl, CURLOPT_VERBOSE, 1); 
$fh= fopen('test.txt', 'w+'); 
curl_setopt($curl, CURLOPT_STDERR, $fh); 
curl_exec($curl); 
fclose($fh); 
curl_close($curl); 
echo file_get_contents("test.txt"); 
?> 

을하지만 내가 코드를 사용할 때 :

<?php 
echo file_get_contents("test.txt"); 
?> 

텍스트 파일 표시의 내용은 잘합니다.

+0

이것은 이상합니다 ... 파일을 닫은 직후 파일을 읽을 수 없지만 나중에 수정되지 않은 동일한 파일을 읽을 수 있다는 의미입니까? –

+0

PHP 변수에 직접 가져 오는 코드를 사용해보십시오 (시도하는 파일이 아닌). 여기에 하나의 예제 http://davidwalsh.name/download-urls-content-php-curl이 있습니다. – aitchnyu

답변

1

TRUE으로 설정하면 curl은 출력을 문자열로 반환하지만 사용자 코드는 해당 변수를 변수에 저장하지 않습니다. 이런 식으로 뭔가를 시도 :

$content = curl_exec($curl); 
print_r($content); 

다른 문제가 CURLOPT_STDERR 출력 오류가 아닌 실제 전송에 대한 위치를 설정한다는 것이다.

0

현재 디렉토리에 대한 쓰기 권한이 없을 가능성이 높습니다. PHP에 이름이 무엇이든 안전하지 않은 경우 /tmp/test.txt을 사용해보십시오.