Я делаю приборную панель, которая требует Библиотека Teamspeak 3 в CodeIgniter.
Теперь я получаю сообщение об ошибке, что TeamSpeak3_Helper_Uri не был найден в Teamspeak.php. Perhabs это как-то связано с именами, потому что он работает нормально на машине Windows (сейчас работает на Linux).
Ошибка:
Fatal error: Class 'TeamSpeak3_Helper_Uri' not found in /var/www/html/FlightAcademy/application/libraries/Teamspeak3/Teamspeak3.php on line 313
Teamspeak3.php строки 309 до 322:
public static function factory($uri) {
self::init();
$uri = new TeamSpeak3_Helper_Uri($uri); // <-- Line 313
$adapter = self::getAdapterName($uri->getScheme());
$options = array("host" => $uri->getHost(), "port" => $uri->getPort(), "timeout" => intval($uri->getQueryVar("timeout", 10)), "blocking" => intval($uri->getQueryVar("blocking", 1)));
self::loadClass($adapter);
$object = new $adapter($options);
if($object instanceof TeamSpeak3_Adapter_ServerQuery)
Моя файловая структура в CodeIgniter:
libraries
Teamspeak3
Adapter
Helper
Uri.php (TeamSpeak3_Helper_Uri)
...
Node
Transport
Viewer
Exeption.php
Teamspeak3.php
Ошибка возникает, когда я звоню в моей модели:
$ts3 = TeamSpeak3::factory
Я надеюсь, что вы можете помочь, потому что я понятия не имею, что не так.
Итак, я понял эту ошибку. Кажется, что проблема заключается в соглашении об именах между Windows и Linux в CodeIgniter. Я решил проблему, назвав все оригинальные классы «TeamSpeak» «Teamspeak». Кажется, что это была проблема.
Других решений пока нет …