PHPackages                             cortezvini97/orion - 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. cortezvini97/orion

ActiveLibrary

cortezvini97/orion
==================

Orion é uma engine de templates moderna e rápida para PHP.

v1.1.0(11mo ago)0541MITPHP

Since May 15Pushed 11mo ago1 watchersCompare

[ Source](https://github.com/cortezvini97/orion)[ Packagist](https://packagist.org/packages/cortezvini97/orion)[ RSS](/packages/cortezvini97-orion/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (12)Used By (1)

Orion Template Engine
=====================

[](#orion-template-engine)

Orion é uma biblioteca PHP leve e eficiente para renderização de templates e visualizações, projetada para ser flexível e fácil de usar em seus projetos.

[![Orion Template Engine](img/orion.svg?text=Orion+Template+Engine)](img/orion.svg?text=Orion+Template+Engine)

Índice
------

[](#índice)

- [Instalação](#instala%C3%A7%C3%A3o)
- [Configuração](#configura%C3%A7%C3%A3o)
- [Uso Básico](#uso-b%C3%A1sico)
- [Trabalhando com Templates](#trabalhando-com-templates)
- [Diretivas Personalizadas](#diretivas-personalizadas)
- [Modo Debug](#modo-debug)
- [Exemplos](#exemplos)
- [API de Referência](#api-de-refer%C3%AAncia)
- [Contribuição](#contribui%C3%A7%C3%A3o)
- [Licença](#licen%C3%A7a)

Instalação
----------

[](#instalação)

```
composer require cortezvini97/orion
```

Configuração
------------

[](#configuração)

Para começar a usar o Orion, você precisa criar uma instância da classe principal e configurá-la de acordo com suas necessidades:

```
use Orion\Orion;

// Configuração básica
$orion = new Orion([
    'viewsPath' => 'caminho/para/templates',
    'functionsPath' => 'caminho/para/cache',
    // outras configurações
]);
```

### Opções de Configuração

[](#opções-de-configuração)

OpçãoTipoDescriçãoPadrãotemplate\_pathstringCaminho para o diretório de templates./viewsfunctionsPathstringCaminho para armazenar arquivos de funções./functionscompiledPathstringCaminho para armazenar arquivos compilados./compileddeleteFilebooldeletar arquivo após compilação.falsedebugboolativar mode depuração.falseUso Básico
----------

[](#uso-básico)

O Orion permite renderizar templates de forma simples e rápida:

```
// Renderizar um template com dados
$orion->render('home', [
    'title' => 'Página Inicial',
    'user' => $user,
    'items' => $items
]);
```

Um template básico poderia ser assim:

```

    {{$title}}>

    Bem-vindo,  {{$user->name }}!

    @foreach($items as $item)
        {{$item->getName()}}
    @endforeach

```

Trabalhando com Templates
-------------------------

[](#trabalhando-com-templates)

O Orion oferece um sistema de templates poderoso e flexível. Você pode incluir outros templates, herdar layouts e muito mais.

### Incluir Templates

[](#incluir-templates)

```
@include('components.header')
@include('components.footer', ['year' => 2025])
```

### Herança de Templates

[](#herança-de-templates)

```

@extends('layouts.master')

@section('title', 'Página de Exemplo')

@section('content')
    Este é o conteúdo da página
@endsection
```

```

DOCTYPE html>

    @yield('title')

        @include('components.navbar')

        @yield('content')

        @include('components.footer')

```

Diretivas Personalizadas
------------------------

[](#diretivas-personalizadas)

O Orion permite que você crie suas próprias diretivas para estender a funcionalidade do sistema de templates:

```
use Orion\Orion;

// Registrar uma diretiva personalizada
Orion::directive('uppercase', function ($expression) {
    return "";
});

Orion::directive('datetime', function ($expression) {
    return "";
});
```

Uso no template:

```
@uppercase($name)
Data: @datetime(time())
```

### Diretivas Integradas

[](#diretivas-integradas)

O Orion vem com algumas diretivas úteis pré-integradas:

DiretivaDescriçãoExemplo@ifEstrutura condicional@if($condition) ... @endif@foreachLoop foreach@foreach($items as $item) ... @endforeach@includeIncluir outro template@include('path.to.template')@extendsHerdar de um layout@extends('layouts.master')@sectionDefinir uma seção@section('name') ... @endsection@yieldRenderizar uma seção@yield('name', 'default')Modo Debug
----------

[](#modo-debug)

O Orion inclui um modo de depuração que pode ser útil durante o desenvolvimento:

```
$orion = new Orion([
    'debug' => true
]);
```

No modo de depuração, o Orion:

- Exibe informações detalhadas sobre o processo de renderização
- Mostra erros de compilação e execução de forma mais clara
- Não utiliza cache para os templates
- Registra informações sobre o desempenho

Exemplos
--------

[](#exemplos)

### Exemplo de Aplicação Completa

[](#exemplo-de-aplicação-completa)

```
