jorisros/nginxparser
Composer 安装命令:
composer require jorisros/nginxparser
包简介
A class for parsing nginx config files in PHP
README 文档
README
NginxParser
Read and create Nginx config files in php Requirements
- PHP >= 7.4
- Nginx installed (for the validate function)
Composer
Use composer to to add the classes to your project
composer require jorisros/nginxparser
Run tests
Run in the main directory the following command
./vendor/bin/phpunit tests
Examples
Examples to use the class
Simple config file
<?php require __DIR__ . '/vendor/autoload.php'; use JorisRos\NginxParser\NginxParser; use JorisRos\NginxParser\NginxElement; $config = new NginxParser('server'); $location = new NginxParser('location','/'); $location->setRoot('/usr/share/nginx/html') ->setIndex(array('index.html', 'index.htm')); $config ->setPort(80) ->setServerName(array('localhost','local','serveralias')) ->setAccessLog('/var/log/nginx/log/host.access.log') ->setLocation($location); if($config->validate()) { $strFile = $config->build(); file_put_contents('server.conf', $strFile); }else{ foreach ($config->getValidatorErrors() as $error) { # code... } }
It will result in
server {
port 80;
server_name localhost;
server_alias local serveralias;
access_log /var/log/nginx/log/host.access.log;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
}
Read existing config file
<?php
require __DIR__ . '/vendor/autoload.php';
use JorisRos\NginxParser\NginxParser;
use JorisRos\NginxParser\NginxElement;
$d = new NginxParser();
$objects = $d->readFromFile('Resources/nginx-config/nginx.conf');
//var_dump($objects);
foreach($objects as $object)
{
print($object->build());
}
统计信息
- 总下载量: 583
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 5
- 点击次数: 2
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2016-09-25