Php 致命错误:类';OAuth';在中找不到

Php 致命错误:类';OAuth';在中找不到,php,Php,我正在尝试连接到LinkedIn API,但每次尝试访问它时,都会出现以下错误: 致命错误:在上的/home/vhosts/*/test.php中找不到类“OAuth” 第8行 我在000WebHost上使用免费服务器,我读到免费服务器有时不支持OAuth。我已经在另一个免费服务器上尝试过了,我收到了相同的错误消息,所以我的问题是如何检查服务器是否支持使用OAuth 这是我的密码: // Fill the keys and secrets you retrieved after register

我正在尝试连接到LinkedIn API,但每次尝试访问它时,都会出现以下错误:

致命错误:在上的/home/vhosts/*/test.php中找不到类“OAuth” 第8行

我在000WebHost上使用免费服务器,我读到免费服务器有时不支持OAuth。我已经在另一个免费服务器上尝试过了,我收到了相同的错误消息,所以我的问题是如何检查服务器是否支持使用OAuth

这是我的密码:

// Fill the keys and secrets you retrieved after registering your app
$oauth = new OAuth("abcd123456", "efgh987654");
$oauth->setToken("abcd1234-efgh987-9988", "9876abcd-123asdf-1122");

$params = array();
$headers = array();
$method = OAUTH_HTTP_METHOD_GET;

// Specify LinkedIn API endpoint to retrieve your own profile
$url = "http://api.linkedin.com/v1/people/~";

// By default, the LinkedIn API responses are in XML format. If you prefer JSON, simply       specify the format in your call
// $url = "http://api.linkedin.com/v1/people/~?format=json";

// Make call to LinkedIn to retrieve your own profile
$oauth->fetch($url, $params, $method, $headers);

echo $oauth->getLastResponse();
这些键被替换为《开发者入门指南》中类似的键


提前感谢您的帮助。

OAuth是一个PECL扩展,必须编译成PHP或编译为扩展

大多数服务器在默认情况下都不会使用它,因为它并不是每个人都会使用的。您可以要求您的主机安装它,或者如果像我一样使用CGI,您是否有能力在服务器上编译它。如果运行phpinfo();寻找OAuth这个词,如果你有它就会出现,否则你就没有了



更新:使用而不是PECL。

我使用hostgator进行托管,并且出现了此问题,因此如果您的主机也使用cpanel,您应该能够执行我所做的操作

从文件管理器中的live目录向上移动1个目录,在那里可以看到“public_html,www,tmp”。(或者单击左侧的主文件夹图标),您应该会在其中找到一个php.ini文件。编辑文件,将
extension=oauth.so
添加到最末尾并保存它


检查phpinfo()之后,您应该会找到一个名为“OAuth”的部分,一切都应该正常工作。

对于PHP5.6。。。首先是免责声明:您需要尽快迁移到最新的稳定PHP7,而不是运行PHP5.6!但如果这还不太可能,这可能会帮助Ubuntu 16.04的用户。这假设您拥有ondrej/php ppa

sudo apt-get update
sudo apt-get install libpcre3-dev
sudo apt-get install php-pear            # * see note below 
sudo apt-get install php5.6-dev          # for phpize
sudo pecl install oauth-1.2.3

# now add "extension=oauth.so" (sans quotes) to the 
# "Dynamic Extensions" area in /etc/php/5.6/apache2/php.ini
*根据这篇文章
“php pear pull[s]只是CLI php7.0(php7.0-CLI),这是无害的”该评论是在2016年发表的,可能不再真实。我还没有发现任何问题。

重要的是,您将其添加到末尾,这是我的问题。我们可以在没有主机提供商帮助的情况下启用此oauth扩展吗?@sagarpanchal有无数的用户区库提供oauth支持。最好使用它们,因为上面的包不再维护。使用我文章底部提供的链接。我认为免费服务器不允许您运行这些命令并重新启动服务器。虽然这段代码可能会回答这个问题,但提供有关这段代码为什么和/或如何回答这个问题的附加上下文可以提高其长期价值。
sudo apt-get update
sudo apt-get install php-oauth
sudo service apache2 restart