README.md

# ephp template

[![License: LGPL 2.1](https://img.shields.io/github/license/bragful/ephp_template.svg)](https://raw.githubusercontent.com/bragful/ephp_template/master/COPYING)
[![Gitter](https://img.shields.io/gitter/room/bragful/ephp.svg)](https://gitter.im/bragful/ephp)
[![Hex](https://img.shields.io/hexpm/v/ephp_template.svg)](https://hex.pm/packages/ephp_template)

This is a template system to let you to use PHP templates inside of [Phoenix Framework](https://phoenixframework.org/).

## Installation

The package can be installed by adding `ephp_template` to your list of dependencies in `mix.exs`:

```elixir
def deps do
  [
    {:ephp_template, "~> 0.1.0"}
  ]
end
```

In addition to this you can add to the configuration file:

```elixir
config :phoenix, :template_engines,
    php: Ephp.Template
```

This way you can create PHP files inside of the template directories and use them in the same way as `.html.eex` files.

## Assigns

Usually from the controllers you can send data to the templates (and views). PHP cannot use the specific functions defined by Phoenix Framework but you can use all of the PHP functions available by default by the [ephp](https://github.com/bragful/ephp) project.

The assigns will be included as normal variables inside of PHP. For example, using this controller:

```elixir
defmodule PhptestWeb.PageController do
  use PhptestWeb, :controller

  def index(conn, _params) do
    render conn, "index.html",
           user: "admin",
           data: [%{"a" => 10, "b" => 20}, %{"a" => 11, "b" => 21}]
  end
end
```

You'll have access to `$user` and `$data` variables in the template. You can create the file `index.html.php` and then do whatever you need.

## Superglobals

Maybe it's not needed but you have populated `$_SERVER` (not completely), `$_REQUEST` (and `$_GET` and `$_POST` as well), `$_ENV` and `$_COOKIE`.

## Donation

If you want to support the project to advance faster with the development you can make a donation. Thanks!

[![paypal](https://www.paypalobjects.com/en_US/GB/i/btn/btn_donateCC_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=CBYJ5V2ZWWZ8G)

Enjoy!