exchangewebservices — заставить php-ews работать

Скачанные php-ews из https://github.com/Garethp/php-ews и сделал

            require_once ($server_path."/scripts/ews/API.php");

который, кажется, работает (журнал не дает ошибок).

Но делать это:

            $ews = ExchangeWebServices::fromUsernameAndPassword($exchange_host, $_SESSION["user_data"]["u_email"], $_SESSION["user_data"]["u_pwd"], $options = array());

дает

PHP Fatal error:  Class 'ExchangeWebServices' not found

У кого-нибудь есть идея?

0

Решение

Ну, я хотел бы предложить вам попробовать установить мою библиотеку с помощью Composer. Вы можете скачать здесь. Затем, после установки, вы можете установить мою библиотеку, используя ее. Просто создайте composer.json файл со следующим

{
"require": {
"garethp/php-ews": "0.8.*"}
}

Затем запустите composer install в каталоге. Это должно создать vendor/ папка с vendor/autoload.php файл. Включите этот файл, и остальные классы должны быть автоматически загружены

2

Другие решения

Сделал это, убрав мой чек, если опция обмена действительна.

Удалены

if ($core_row["exchange_active"] == 1) {

которые окружали вызов API.

require 'scripts/ews/vendor/autoload.php';

$exchange_host = $core_row["exchange_host"].":".$core_row["exchange_port"];
$version = "Exchange2013"; // to be optional in core_data
//Create and build the client
use garethp\ews\API;
$ews = API::withUsernameAndPassword($exchange_host, $_SESSION["user_data"]["u_email"], $_SESSION["user_data"]["u_pwd"], $version);

Безумный мой день немного ярче ..

Результат

echo "<pre>"; print_r(get_declared_classes()); echo "</pre>";
......

[358] => ComposerAutoloaderInitbc25b4c7c627f48ed3a0f739e38bad53
[359] => Composer\Autoload\ClassLoader
[360] => Composer\Autoload\ComposerStaticInitbc25b4c7c627f48ed3a0f739e38bad53
[361] => garethp\ews\API
[362] => garethp\ews\API\ExchangeWebServices
[363] => garethp\ews\API\ExchangeWebServicesAuth
[364] => garethp\ews\API\ClassMap
[365] => garethp\ews\API\NTLMSoapClient
[366] => garethp\ews\HttpPlayback\HttpPlayback
1

По вопросам рекламы [email protected]