치명적 오류 : 정의되지 않은 함수 curl_init () 호출…
<?php
$filename = "xx.gif";
$handle = fopen($filename, "r");
$data = fread($handle, filesize($filename));
// $data is file data
$pvars = array('image' => base64_encode($data), 'key' => IMGUR_API_KEY);
$timeout = 30;
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://api.imgur.com/2/upload.xml');
curl_setopt($curl, CURLOPT_TIMEOUT, $timeout);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $pvars);
$xml = curl_exec($curl);
curl_close ($curl);
var_dump($xml);
?>
Imgur API를 사용하고 있지만 작동하지 않는 것 같습니다. PHP.net은 그것이 curl_init()
PHP5에 있다고 말하지만 내 호스트는 그렇지 않다고 말합니다. 이 작업을 어떻게 할 수 있습니까?
curl은 설치해야하는 확장 기능이며 PHP 버전과는 관련이 없습니다.
http://www.php.net/manual/en/curl.setup.php
이전 버전의 Debian 및 Ubuntu에서는 PHP 용 Curl 확장을 설치하고 웹 서버를 다시 시작하여이 문제를 해결했습니다. 웹 서버가 Apache 2라고 가정합니다.
sudo apt-get install php5-curl
sudo service apache2 restart
최신 버전에서 패키지 이름이 변경되었습니다.
sudo apt install php-curl
추가 설치가 필요할 수 있습니다.
sudo apt-get install curl libcurl3 libcurl3-dev;
아직 논평 할만한 평판이 충분하지 않습니다. Ubuntu 및 간단한 사용 :
sudo apt-get install php5-curl
sudo /etc/init.d/apache2 restart
나를 위해 일하지 않았습니다.
어떤 이유로 curl.so
기본적으로 선택되지 않은 위치에 설치되었습니다. extension_dir
내 php.ini에서 확인하고 curl.so
내extension_dir
cp /usr/lib/php5/20090626/curl.so /usr/local/lib/php/extensions/no-debug-non-zts-20090626
이것이 누군가에게 도움이되기를 바라며 그에 따라 경로 위치를 조정하십시오.
Ubuntu의 경우
PHP 용 Curl 확장을 설치하고 아파치 서버를 다시 시작하십시오.
sudo apt-get install php5-curl
sudo service apache2 restart
Windows의 경우
PHP에 lib_curl.dll을 포함하지 않기 때문에 문제가 발생합니다. 또한 작동하지 않는 경우 다음 확장자를로드하므로 해당 확장자 php.ini
가 php.ini
파일에 이미있는 경우 주석을 제거하거나 주석 을 제거하십시오.
extension=php_bz2.dll
extension=php_curl.dll
extension=php_dba.dll
이제 아파치 서버를 다시 시작하십시오. "Unable to Load php_curl.dll"오류가 발생하면 SSLEAY32.PHP, libEAY32.dll (OpenSSL) 라이브러리를 System32 폴더에 복사합니다.
우분투 사용의 PHP 7.0
sudo apt-get install php7.0-curl
그리고 마지막으로,
sudo service apache2 restart
또는
sudo service nginx restart
Windows 7 x64에 필요한 모든 세부 정보가 포함 된 솔루션이 있습니다.
http://www.youtube.com/watch?v=7qNTi1sEfE8
It is in French, but you can understand everything! I solved same problem, even don't speak French. :-)
Many answers forget to mention that you need to add new version of php_curl.dll file from this location: http://www.anindya.com/php-5-4-3-and-php-5-3-13-x64-64-bit-for-windows/
I added new version of php_curl.dll from archive php_curl-5.4.3-VC9-x64.zip to folders: C:\wamp\bin\php\php5.4.3\ext and C:\Windows\System32 and everything was fine!
do this
sudo apt-get install php-curl
and restart server
sudo service apache2 restart
Experienced this on ubuntu 16.04 running PHP 7.1.14. To resolve,first put this in a script and execute. It will return true if curl is installed and enabled,otherwise, it will return false.
<?php
var_dump(extension_loaded('curl'));
?>
If it returns false, run
sudo apt-get install php7.1-curl
And finally,
sudo service apache2 restart
After the restart, the script will return true and hopefully, your error should be resolved.
This is from the official website. php.net
After installation of PHP.
Windows
Move to Windows\system32 folder: libssh2.dll, php_curl.dll, ssleay32.dll, libeay32.dll
Linux
Move to Apache24\bin folder libssh2.dll
Then uncomment extension=php_curl.dll in php.ini
$ch = curl_init('http://api.imgur.com/2/upload.xml'); //initialising our url
curl_setopt($ch, CURLOPT_MUTE, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); //used for https headers
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); //used for https headers
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, urlencode($pvars));
//the value we post
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //waiting for reponse, default value in php is zero ie, curls normally do not wait for a response
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.5) Gecko/20041107 Firefox/1.0');
$output = curl_exec($ch); //the real execution
curl_close($ch);
echo $output;
Try this code. I am not sure about it. But i used it to send xml data to a remote url.
'Programing' 카테고리의 다른 글
TypeScript에서 문자열 유형의 배열 테스트 (0) | 2020.11.26 |
---|---|
Android Studio DexIndexOverflowException : 메서드 ID가 (0) | 2020.11.26 |
Haskell에서 ()는 정확히 무엇입니까? (0) | 2020.11.26 |
MS-Build 2017“Microsoft.WebApplication.targets”가 없습니다. (0) | 2020.11.26 |
두 날짜 사이의 개월 수 (0) | 2020.11.26 |