从https://github.com/Garethp/php-ews下载了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 :(得分:3)
好吧,我建议您尝试使用Composer安装我的库。你可以download it here。然后,安装后,您可以使用它安装我的库。只需使用以下
创建composer.json
文件即可
{
"require": {
"garethp/php-ews": "0.8.*"
}
}
然后在目录中运行composer install
。这应该创建一个vendor/
文件夹,其中包含vendor/autoload.php
文件。包含此文件,其余类应自动加载
答案 1 :(得分:1)
如果交换选项有效,请删除我的支票。
删除
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