需要凭据 php twilio

Credentials are required php twilio

我正在尝试使用 Twilio 的 API 发送带有 PHP 的短信。 我按照他们网站上介绍的教程进行操作,但它不起作用。我正确地替换了 $sid、$token、“from number”和“to number”变量。我还使用 Phyton 对其进行了测试并且它工作正常,但是使用 PHP 我得到以下错误:

Fatal error: Uncaught Twilio\Exceptions\ConfigurationException: Credentials are required to create a Client in C:\xampp\htdocs\Php\Twilio\vendor\twilio\sdk\src\Twilio\Rest\Client.php:172 Stack trace: #0 C:\xampp\htdocs\Php\Twilio\index.php(13): Twilio\Rest\Client->__construct('', '') #1

我正在使用 PHP 7.3.21 和 xampp。我在使用 laravel 和更复杂代码的人身上看到了同样的错误,但我使用的是“纯”PHP。 我使用的代码:

<?php

// Update the path below to your autoload.php,
// see https://getcomposer.org/doc/01-basic-usage.md
require_once 'vendor/autoload.php';

use Twilio\Rest\Client;

// Find your Account SID and Auth Token at twilio.com/console
// and set the environment variables. See http://twil.io/secure
$sid = getenv("TWILIO_ACCOUNT_SID");
$token = getenv("TWILIO_AUTH_TOKEN");
$twilio = new Client($sid, $token);

$message = $twilio->messages
                  ->create("+15558675310", // to
                           [
                               "body" => "This is the ship that made the Kessel Run in fourteen parsecs?",
                               "from" => "+15017122661"
                           ]
                  );

print($message->sid);

你可以在这里找到我遵循的教程:https://www.twilio.com/docs/sms/tutorials/how-to-send-sms-messages-php

是环境变量的问题。我对它们进行了硬编码,但 getenv() 返回了一个空字符串,我不知道为什么会这样。因此,为了修复它,我按照本教程(对于 windows)设置了它们:pho​​enixnap.com/kb/windows-set-environment-variable。对于 linux,您可以尝试使用这些命令:

export ACCOUNT_SID="YOUR_ACCOUNT_SID"
export AUTH_TOKEN="YOUR_AUTH_TOKEN"

然后,在您的代码中,对于 windows 和 linux:

$sid = getenv('ACCOUNT_SID');
$token = getenv('AUTH_TOKEN');

确保在设置变量后重新启动 xampp(如果您正在使用它)和您的计算机。