Я сделал sudo apt-get установить curl, sudo apt-get php5-curl, sudo apt-get php-curl, но я получаю неопределенную функцию для curl_init ()
Кто-нибудь знает какие-либо решения для этого?
Вот мой код PHP.
<?php
// create curl resource
$ch = curl_init();
// set url
curl_setopt($ch, CURLOPT_URL, "example.com");
//return the transfer as a string
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// $output contains the output string
$output = curl_exec($ch);
// close curl resource to free up system resources
curl_close($ch);
?>
Проверьте, какая версия PHP используется Apache, используя phpinfo();
функция.
Проверка важна, потому что вы могли перейти на более низкую версию по любой причине (как это было в моем случае).
Теперь из командной строки запустите эту команду для установки curl
*(Don\'t copy this) sudo apt-get install php[version of php]-curl*
Например, если это 5,6 затем используйте
sudo apt-get install php5.6-curl
После этого не забудьте перезапустить apache2
sudo service apache2 restart
Для Ubuntu 16.04 с php7.0 вы должны указать версию следующим образом:
sudo apt-get install php7.0-curl
Затем, как всегда, перезагрузите Apache с
sudo service apache2 reload
Попробуй это: phpenmod curl
и перезапустите Apache. Надеюсь это поможет (;
Для тех, у кого есть похожая проблема при установке расширения php и до сих пор undefined
:
php -i | grep EXT_NAME
чтобы увидеть результат, если регулярное выражение соответствует чему-либо, что имеет EXT_NAME
(в вышеуказанном случае curl
) в вашем phpinfo()
или просто создайте тестовый файл с <?php phpinfo(); ?>
и посмотрим, заметишь ли ты расширение.php -m
увидеть загруженные расширения и проверить, если у вас есть другая установка, которая имеет приоритет через php -v
или более одного файла php.ini, используя find -name 'php.ini'
или же locate php.ini
в корневом каталоге.3 # для apache можно сделать через запуск service apache2 restart
Если вы строите из исходного кода, другой возможной причиной может быть то, что вы забыли перекомпилировать PHP с (опять же, в этом случае curl
) --with-curl[=DIR]
после установки расширения.