PHPackages                             magicianred/xnowi - 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. [Templating &amp; Views](/categories/templating)
4. /
5. magicianred/xnowi

ActiveLibrary[Templating &amp; Views](/categories/templating)

magicianred/xnowi
=================

Project xnowi is based on a simple concept, the separation of content from presentation through XML and XSLT. A single XML and many XSL to get many different results, not all visual.

21PHP

Since Feb 29Pushed 6y ago1 watchersCompare

[ Source](https://github.com/Magicianred/Xnowi_PHP)[ Packagist](https://packagist.org/packages/magicianred/xnowi)[ RSS](/packages/magicianred-xnowi/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependenciesVersions (1)Used By (0)

Xnowi\_PHP
==========

[](#xnowi_php)

Project xnowi is based on a simple concept, the separation of content from presentation through XML and XSLT. A single XML and many XSL to get many different results, not all visual.

Xnowi is a library, you can include it in your project and call the method for transform XML through XSL for generate a new version of source.

You can show a [Demo site with Xnowi](http://simone.paolucci.name/xnowi/home.php).

Examples
--------

[](#examples)

You can show an example of use at this repository [Xnowi\_PHP\_Example](https://github.com/Magicianred/Xnowi_PHP_Example)

Install
-------

[](#install)

Install xnowi with composer ()

`composer require magicianred/xnowi`

Basic use
---------

[](#basic-use)

### Example of XML data file

[](#example-of-xml-data-file)

```

  Xs.WebUI
  xnowi not only web interface
  free software per realizzare siti con output multipli

```

### Example of XSLT file

[](#example-of-xslt-file)

```

  0
  Ospite
  it
  cookie
  web

  themes/web/
  .php
  index
  .php
  http://simone.paolucci.name/xnowi/

             ()

       -

```

### Your file PHP (base for all the follow example)

[](#your-file-php-base-for-all-the-follow-example)

```
require_once __DIR__ . '/vendor/autoload.php'; // Autoload files using Composer autoload

use Xnowi\Engine as xnowiEngine;

$engine = new xnowiEngine();

$xmlPath = "/path/file.xml";
$xslPath = "/path/file.xsl";
```

#### Make a simple transformation XML -&gt; XSL

[](#make-a-simple-transformation-xml---xsl)

```
echo $engine->xTransformSimple( $xmlPath, $xslPath );
```

#### Make a transformation with params (of xsl stylesheet)

[](#make-a-transformation-with-params-of-xsl-stylesheet)

```
$params = array(
    'isLoggin' => $isLoggin,
    'username' => $username,
    'language' => $engine->get_Lang()
    );

echo $engine->xTransformSimpleWithParams( $xmlPath, $xslPath, $Params );
```

#### Make a transformation with internalization

[](#make-a-transformation-with-internalization)

```
$xmlLangPath = "/path/langs/file.xml";

echo $engine->xTransformIntlSimple( $xmlPath, $xslPath, $xmlLangPath);
```

#### Make a transformation with params (of xsl stylesheet) and internalization

[](#make-a-transformation-with-params-of-xsl-stylesheet-and-internalization)

```
$xmlLangPath = "/path/langs/file.xml";

$params = array(
    'isLoggin' => $isLoggin,
    'username' => $username,
    'language' => $engine->get_Lang()
    );

echo $engine->xTransformIntlWithParams( $xmlPath, $xslPath, $xmlLangPath, $Params);
```

#### Static site generator

[](#static-site-generator)

##### Make a simple transformation with output

[](#make-a-simple-transformation-with-output)

```
$fileOutput = "/html/index.htm";

echo $engine->xTransformOtpSimple( $xmlPath, $xslPath, $fileOutput);
```

##### Make a simple transformation with params (of xsl stylesheet) and output

[](#make-a-simple-transformation-with-params-of-xsl-stylesheet-and-output)

```
$fileOutput = "/html/index.htm";

$params = array(
    'isLoggin' => $isLoggin,
    'username' => $username,
    'language' => $engine->get_Lang()
    );

echo $engine->xTransformOptSimpleWithParamsSimple( $xmlPath, $xslPath, $Params, $fileOutput);
```

##### Make a transformation with params (of xsl stylesheet) and internalization

[](#make-a-transformation-with-params-of-xsl-stylesheet-and-internalization-1)

```
$fileOutput = "/html/index.htm";

$xmlLangPath = "/path/langs/file.xml";

$params = array(
    'isLoggin' => $isLoggin,
    'username' => $username,
    'language' => $engine->get_Lang()
    );

echo $engine->xTransformOptIntlWithParams( $xmlPath, $xslPath, $xmlLangPath, $Params, $fileOutput);
```

Required
--------

[](#required)

- PHP &gt; 5.6
- XSL ext by php.ini

About Version 0.2
-----------------

[](#about-version-02)

This is the version 0.2 of the project (the v.1 is still downloadable from [SourceForge](https://sourceforge.net/projects/xnowi/)) in this there is the introduction of Namespace.

###  Health Score

17

—

LowBetter than 6% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity34

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

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/0f3b4472d31ca81c838a559bab9563b651306284b438894aec8397a1c32ef924?d=identicon)[Magicianred](/maintainers/Magicianred)

---

Top Contributors

[![Magicianred](https://avatars.githubusercontent.com/u/4624113?v=4)](https://github.com/Magicianred "Magicianred (10 commits)")

### Embed Badge

![Health badge](/badges/magicianred-xnowi/health.svg)

```
[![Health](https://phpackages.com/badges/magicianred-xnowi/health.svg)](https://phpackages.com/packages/magicianred-xnowi)
```

###  Alternatives

[mustache/mustache

A Mustache implementation in PHP.

3.3k44.6M291](/packages/mustache-mustache)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9682.1M97](/packages/roots-acorn)[whitecube/nova-flexible-content

Flexible Content &amp; Repeater Fields for Laravel Nova.

8053.0M25](/packages/whitecube-nova-flexible-content)[mopa/bootstrap-bundle

Easy integration of twitters bootstrap into symfony2

7042.9M33](/packages/mopa-bootstrap-bundle)[limenius/react-bundle

Client and Server-side react rendering in a Symfony Bundle

3871.2M](/packages/limenius-react-bundle)[nicmart/string-template

StringTemplate is a very simple string template engine for php. I've written it to have a thing like sprintf, but with named and nested substutions.

2101.7M30](/packages/nicmart-string-template)

PHPackages © 2026

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