我一直在尝试在Codeigniter中加载OpenTok PHP SDK。在OpenTok中没有任何实际的Codeigniter存储库。
我试图将OpenTok文件夹直接添加到库文件夹中并调用$this->load->library('OpenTok');
但它没有帮助。
目前,我在核心PHP中使用这样的东西。
require "vendor/autoload.php";
use OpenTok\OpenTok;
use OpenTok\MediaMode;
use OpenTok\ArchiveMode;
use OpenTok\Session;
use OpenTok\Role;
我们从OpenTok获得的库是composer包。我的问题是如何调用Codeigniter中的那些。在Codeigniter中使用OpenTok的任何OpenTok开发人员?
感谢您的帮助。谢谢
答案 0 :(得分:1)
在config / config.php中:
$config['composer_autoload'] = TRUE;
您的composer.json文件需要位于应用程序目录中。它可能看起来像这样:
{
"name": "nsqdev/project",
"description": "NSQ DEV PROJECT",
"type": "application",
"license": "Proprietary",
"authors": [
{
"name": "NSQ DEV",
"email": "nsqdev@nsqdev.com"
}
],
"minimum-stability": "dev",
"require": {
"opentok/opentok": "3.0.*"
}
}
使用该位置(/ application)的composer命令,例如" composer install"。
现在,在您的控制器,型号或您想要运行opentok的任何地方:
use OpenTok\OpenTok;
$opentok = new OpenTok($apiKey, $apiSecret);
希望这会有所帮助。 composer.json文件可能不完美,因为您可能需要或需要更改opentok的版本。否则,CodeIgniter中的编写器使用非常简单,并且可以访问许多包。
更多信息:
正如@tpojka所述,您可以从命令行使用require。作曲家文档中提供的使用详情:https://getcomposer.org/doc/03-cli.md#require
有关作曲家的一般基本用法,请从此处开始:https://getcomposer.org/doc/01-basic-usage.md
答案 1 :(得分:0)
不幸的是,您无法将OpenTok文件作为库加载到CodeIgniter中,因为加载器类最初是在名称空间不存在时构建的。 CodeIgniter在v4阶段1中添加了名称空间支持:
https://bcit-ci.github.io/CodeIgniter4/general/modules.html#namespaces
我推荐使用OpenTok PHP SDK作为@ brian-gottier提到的!您还可以在此处找到有关在PHP中设置OpenTok的更多信息:https://github.com/opentok/OpenTok-PHP-SDK
他们有几个示例应用程序可以帮助您入门!