$var1 = $_REQUEST['id'];
$var2 = file_get_contents('http://example.com/script.php?z=$var1');
echo $var2;
file_get_contents가 비활성화 된 것으로 보입니다.이 PHP 코드는 무엇이 잘못 되었습니까? file_get_contents replacement
나는이 일을하기 위해 file_get_contents를 대체 할 수 있습니까?
$var1 = $_REQUEST['id'];
$var2 = file_get_contents('http://example.com/script.php?z=$var1');
echo $var2;
file_get_contents가 비활성화 된 것으로 보입니다.이 PHP 코드는 무엇이 잘못 되었습니까? file_get_contents replacement
나는이 일을하기 위해 file_get_contents를 대체 할 수 있습니까?
작은 따옴표를 사용하고 있습니다. 즉, $var1
은 문자열로 대체되지 않습니다. 그러나 큰 따옴표를 사용하더라도 쿼리 문자열은 여전히 올바르게 이스케이프되지 않을 수 있습니다.
당신은 유효한 URL을 구축하도록 http_build_query
를 사용한다 : file_get_contents가 비활성화되고 경고를 발행하는 경우 패트릭의 대답은, 지적
$url = 'http://example.com/script.php?' . http_build_query(array(
'z' => $_REQUEST['id']
));
, 당신은 그것을 가능하게 할 수 있습니다. 그렇지 않은 경우 cURL을 사용하여 다음과 같이 요청할 수 있습니다.
$url = 'http://example.com/script.php?' . http_build_query(array(
'z' => $_REQUEST['id']
));
$ch = curl_init();
curl_setopt_array($ch, array(
CURLOPT_URL => $url,
CURLOPT_HEADER => 0,
CURLOPT_RETURNTRANSFER => true
));
$result = curl_exec($ch);
if ($result === false) {
trigger_error(curl_error($ch));
} else {
// do something with $result
}
curl_close($ch);
이것이 효과가 있습니다. 고맙습니다 – m3tsys
작동해야하지만 작은 따옴표를 사용할 때 문자열 (PHP 이름)에서 변수 대체를 수행 할 수 없다고 확신합니다. 큰 따옴표를 사용하거나 'http://example.com/script.php?z=' . $var1
과 같은 방법으로 시도하십시오. 그게 너 한테 도움이되는지 알려줘.
@ Nathan Ostgard가 나에게 추천 한 것을 사용 했어 – m3tsys
과 유사한 오류 메시지가 받고있는 경우 :
경고 : file_get_contents를() [function.file--내용을 얻을] : URL 파일 액세스가에 ...
서버 구성에서 사용할 수 없습니다
만 라인으로의 php.ini 파일을 확인하십시오
allow_url_fopen = On
이렇게 할 수있는 권한이 없으면 컬을 활용해야 할 수도있다 – dialer
그리고 PHP 설정을 수정할 수 없다면 curl http://php.net/manual/en/ref.curl.php –
큰 따옴표를 사용해야합니다
0123을$var2 = file_get_contents("http://example.com/script.php?z=$var1");
정확히 어떤 오류 메시지가 나타 납니까? –
메시지가 없습니다. 콘텐츠가 단순히로드되지 않습니다. – m3tsys
오류보고 기능이 켜져 있습니까? –