zend-pattern / zsf
此包最新版本(dev-master)没有提供许可证信息。
dev-master
2014-10-17 07:17 UTC
Requires
- zendframework/zend-db: =2.3.1
- zendframework/zend-eventmanager: =2.3.0
- zendframework/zend-http: =2.3.0
- zendframework/zend-permissions-acl: =2.3.0
- zendframework/zend-servicemanager: =2.3.1
- zendframework/zend-uri: =2.3.0
This package is auto-updated.
Last update: 2024-09-14 01:02:28 UTC
README
介绍
此框架的主要目标是提供一个简单的方法,通过PHP应用程序管理Zend Server实例。
创建服务器实例
首先,您应该在可通过http连接访问的某个位置安装Zend Server。假设您要在PHP应用程序中实例化的Zend Server位于 http://www.myzendserver.dev:10081。要创建您的PHP Zend Server实例,您只需
$zendServer = new ZendPattern\Zsf\Server\ZendServer();
配置Zend Server实例
使用配置数组
要设置大多数Zend Server参数,请使用配置数组
$configugration = array(
'version' => '7.0.0',
'edition' => 'ENTERPRISE',
'uriPath' => 'http://www.myzendserver.dev:10081/',
'apiPath' => 'ZendServer/Api',
'apiKeys' => array(
'admin' => '123896589...',
'anykey' => '14596875...',
),
);
并使用配置器来设置您的Zend Server
$configurator = new ZendPattern\Zsf\Server\Configurator();
$configurator->configure($server,$configuration);
自动发现
Zend Server可以自动发现自己。您需要知道的是服务器URL和一个API密钥
$zendserver = new ZendPattern\Zsf\Server\ZendServer();
$zendserver->addFeature(new ZendPattern\Zsf\Feature\ZendServer6\AutoDiscover());
$zendserver->setUriPath('http://www.myzendserver.dev:10081/');
$zendserver->autoDiscover('admin','1235974896...');
现在您的Zend Server已经完全设置好了。
关于Zend Server功能
所有Zend Server功能都通过名为"功能"的插件实现。当您创建一个新的Zend Server时,它没有安装任何功能,什么也不能做。要开始添加功能,请简单使用
$feature = new ZendPattern\Zsf\Feature\ZendServer6\AutoDiscover();
$zendserver->addFeature($feature);
Zend Server框架提供了一些内置功能
apiCall ($serviceName, $serviceParams, $apiKeyName, $httpClient)
此功能负责在Zend Server上调用Web API服务。例如,我们可以调用"getSystemInfo"服务
$apiCallFeature = new ZendPattern\Zsf\Api\ApiCall();
$zendserver->addFeature($apiCallFeature);
$systemInfo = $zendserver->apicall('getSystemInfo');
$xmlData = $systemInfo->getXmlContent();
echo (string)$xmlData->responseData->systemInfo->edition;
上面的代码将返回7.0.0
。
功能参数为
- $serviceName : 被调用服务的名称
- $serviceParams : 服务参数数组,对应于运行API调用所需的GET或POST参数。
- $apiKeyName : 要使用的API密钥的名称。如果没有提供,将使用'admin'密钥。
- $httpClient : 自定义HTTP客户端。
另一个使用"deployApplication"服务的示例
$zendServer->apiCall(
'applicationDeploy',
array(
'appPackage' => 'phpMyAdmin-4.0.5.4.zpk',
'baseUrl' => 'http://phpmyadmin.myzendserver.dev',
)
);
自动发现API密钥
自动发现
创建您自己的功能。
功能的最佳用法是您可以在您的Zend Server上添加任何您想要的功能。