PHPackages                             zend-pattern/zsf - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. zend-pattern/zsf

ActiveLibrary

zend-pattern/zsf
================

04PHP

Since Oct 17Pushed 11y ago6 watchersCompare

[ Source](https://github.com/zend-patterns/zend-server-framework)[ Packagist](https://packagist.org/packages/zend-pattern/zsf)[ RSS](/packages/zend-pattern-zsf/feed)WikiDiscussions master Synced 4d ago

READMEChangelogDependenciesVersions (1)Used By (0)

Zend Server Framework
=====================

[](#zend-server-framework)

Introduction
------------

[](#introduction)

The main goal of this framework is to provide a simple way to manage Zend Server instances through PHP applications.

Create a Server Instance
------------------------

[](#create-a-server-instance)

At first you should have install a Zend Server somewhere in a place available through http connections. Lets say that the Zend Server you want to instanciate in your PHP application is setted on . To create your PHP Zend Server instance you just have to :

```
$zendServer = new ZendPattern\Zsf\Server\ZendServer();

```

### Configure Zend Server instance

[](#configure-zend-server-instance)

#### Use configuration array

[](#use-configuration-array)

To set most of Zend Server parameters use a configuration array

```
$configugration =  array(
	'version' => '7.0.0',
	'edition' => 'ENTERPRISE',
	'uriPath' => 'http://www.myzendserver.dev:10081/',
	'apiPath' => 'ZendServer/Api',
	'apiKeys' => array(
		'admin' => '123896589...',
		'anykey' => '14596875...',
	),
);

```

And use a configurator to set your Zend Server up :

```
$configurator = new ZendPattern\Zsf\Server\Configurator();
$configurator->configure($server,$configuration);

```

#### use auto-discovering

[](#use-auto-discovering)

Zend Server is capabale of autodiscovering itself. All what you need to know is server URL and an API key :

```
$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...');

```

Now your Zend Server is completly setted up.

About Zend Server features
--------------------------

[](#about-zend-server-features)

All Zend Server functionallities are implented has plugins called "features". When you create a new Zend Server it has no feature installed and cannot do anything. To start adding feature simply use :

```
$feature = new ZendPattern\Zsf\Feature\ZendServer6\AutoDiscover();
$zendserver->addFeature($feature);

```

Zend Server framework is provided with some build-in features :

### apiCall ($serviceName, $serviceParams, $apiKeyName, $httpClient)

[](#apicall-servicename-serviceparams-apikeyname-httpclient)

This feature is the one responsible of calling a web API service on Zend Server. By example we can call "getSystemInfo" service :

```
$apiCallFeature = new ZendPattern\Zsf\Api\ApiCall();
$zendserver->addFeature($apiCallFeature);
$systemInfo = $zendserver->apicall('getSystemInfo');
$xmlData = $systemInfo->getXmlContent();
echo (string)$xmlData->responseData->systemInfo->edition;

```

The code above will result in `7.0.0`.

The feature parameters are :

- $serviceName : name of called service
- $serviceParams : array of service parameter corresponding to GET or POST parameters you need to run the API call.
- $apiKeyName : name of the API key to use.If none provides, will use 'admin' key.
- $httpClient : a custom HTTP client.

Another example with "deployApplication" service :

```
$zendServer->apiCall(
	'applicationDeploy',
	array(
		'appPackage' => 'phpMyAdmin-4.0.5.4.zpk',
		'baseUrl' => 'http://phpmyadmin.myzendserver.dev',
	)
);

```

### AutoDiscoverApiKeys

[](#autodiscoverapikeys)

### AutoDiscover

[](#autodiscover)

### Create you own features.

[](#create-you-own-features)

The best usage of feature is that you can add any feature you want on your Zend Server.

###  Health Score

19

—

LowBetter than 10% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/485961688a67e0665c736ef09df029cc42b775958f2920c4344b8808ef227336?d=identicon)[slaff](/maintainers/slaff)

### Embed Badge

![Health badge](/badges/zend-pattern-zsf/health.svg)

```
[![Health](https://phpackages.com/badges/zend-pattern-zsf/health.svg)](https://phpackages.com/packages/zend-pattern-zsf)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
