mirror of
https://github.com/yiisoft/yii2.git
synced 2025-11-23 10:09:40 +08:00
Merge pull request #5643 from alanwillms/pt-br-guide-structure-entry-scripts
[skip ci] structure-entry-scripts and structure-overview PT-BR translation
This commit is contained in:
125
docs/guide-pt-BR/structure-entry-scripts.md
Normal file
125
docs/guide-pt-BR/structure-entry-scripts.md
Normal file
@@ -0,0 +1,125 @@
|
|||||||
|
Scripts de Entrada
|
||||||
|
==================
|
||||||
|
|
||||||
|
Scripts de entrada são o primeiro passo no processo de inicialização da aplicação.
|
||||||
|
Uma aplicação (seja uma aplicação Web ou do console) possui um único script de
|
||||||
|
entrada. Os usuários finais fazem requisições a scripts de entrada que criam
|
||||||
|
as instâncias da aplicação e redirecionam as requisições para elas.
|
||||||
|
|
||||||
|
Os scripts de entrada para aplicações Web devem estar armazenados em diretórios
|
||||||
|
acessíveis pela Web, de modo que eles possam ser acessados pelos usuários finais.
|
||||||
|
Frequentemente são chamados de `index.php`, mas também podem usar outros nomes,
|
||||||
|
desde que os servidores Web consigam localizá-los.
|
||||||
|
|
||||||
|
Os scripts de entrada para aplicações do console são geralmente armazenados no
|
||||||
|
[caminho base](structure-applications.md) das aplicações e são chamados de `yii`
|
||||||
|
(com o sufixo `.php`). Eles devem ser tornados executáveis para que os usuários
|
||||||
|
possam executar aplicações do console através do comando
|
||||||
|
`./yii <rota> [argumentos] [opções]`.
|
||||||
|
|
||||||
|
O trabalho principal dos scripts de entrada é o seguinte:
|
||||||
|
|
||||||
|
* Definir constantes globais;
|
||||||
|
* Registrar o [autoloader do Composer](http://getcomposer.org/doc/01-basic-usage.md#autoloading);
|
||||||
|
* Incluir o arquivo da classe [[Yii]];
|
||||||
|
* Carregar a configuração da aplicação;
|
||||||
|
* Criar e configurar uma instância da [aplicação](structure-applications.md);
|
||||||
|
* Chamar [[yii\base\Application::run()]] para processar as requisições que chegam.
|
||||||
|
|
||||||
|
|
||||||
|
## Aplicações da Web <a name="web-applications"></a>
|
||||||
|
|
||||||
|
Este é o código no script de entrada para o [Modelo Básico de Aplicação Web](start-installation.md).
|
||||||
|
|
||||||
|
```php
|
||||||
|
<?php
|
||||||
|
|
||||||
|
defined('YII_DEBUG') or define('YII_DEBUG', true);
|
||||||
|
defined('YII_ENV') or define('YII_ENV', 'dev');
|
||||||
|
|
||||||
|
// registra o autoloader do Composer
|
||||||
|
require(__DIR__ . '/../vendor/autoload.php');
|
||||||
|
|
||||||
|
// inclui o arquivo da classe Yii
|
||||||
|
require(__DIR__ . '/../vendor/yiisoft/yii2/Yii.php');
|
||||||
|
|
||||||
|
// carrega a configuração da aplicação
|
||||||
|
$config = require(__DIR__ . '/../config/web.php');
|
||||||
|
|
||||||
|
// cria, configura e executa a aplicação
|
||||||
|
(new yii\web\Application($config))->run();
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## Aplicações do Console <a name="console-applications"></a>
|
||||||
|
|
||||||
|
De forma semelhante, o seguinte é o código do script de entrada de uma aplicação
|
||||||
|
do console:
|
||||||
|
|
||||||
|
```php
|
||||||
|
#!/usr/bin/env php
|
||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* Yii console bootstrap file.
|
||||||
|
*
|
||||||
|
* @link http://www.yiiframework.com/
|
||||||
|
* @copyright Copyright (c) 2008 Yii Software LLC
|
||||||
|
* @license http://www.yiiframework.com/license/
|
||||||
|
*/
|
||||||
|
|
||||||
|
defined('YII_DEBUG') or define('YII_DEBUG', true);
|
||||||
|
|
||||||
|
// o fcgi não tem STDIN e STDOUT definidos por padrão
|
||||||
|
defined('STDIN') or define('STDIN', fopen('php://stdin', 'r'));
|
||||||
|
defined('STDOUT') or define('STDOUT', fopen('php://stdout', 'w'));
|
||||||
|
|
||||||
|
// registra o autoloader do Composer
|
||||||
|
require(__DIR__ . '/vendor/autoload.php');
|
||||||
|
|
||||||
|
// inclui o arquivo da classe Yii
|
||||||
|
require(__DIR__ . '/vendor/yiisoft/yii2/Yii.php');
|
||||||
|
|
||||||
|
// carrega a configuração da aplicação
|
||||||
|
$config = require(__DIR__ . '/config/console.php');
|
||||||
|
|
||||||
|
$application = new yii\console\Application($config);
|
||||||
|
$exitCode = $application->run();
|
||||||
|
exit($exitCode);
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## Definindo Constantes <a name="defining-constants"></a>
|
||||||
|
|
||||||
|
Os scrips de entrada são o melhor lugar para definir as constantes globais. O
|
||||||
|
Yii suporta as seguintes três constantes:
|
||||||
|
|
||||||
|
* `YII_DEBUG`: especifica se a aplicação está rodando no modo de depuração. No
|
||||||
|
modo de depuração, uma aplicação manterá mais informações de log, e revelará
|
||||||
|
stacks de chamadas de erros detalhadas se forem lançadas exceções. Por este
|
||||||
|
motivo, o modo de depuração deveria ser usado principalmente durante o
|
||||||
|
desenvolvimento. O valor padrão de `YII_DEBUG` é `false`.
|
||||||
|
* `YII_ENV`: especifica em qual ambiente a aplicação está rodando. Isso foi
|
||||||
|
descrito em maiores detalhes na seção [Configurações](concept-configurations.md#environment-constants).
|
||||||
|
O valor padrão de `YII_ENV` é `'prod'`, significando que a aplicação está
|
||||||
|
executando em ambiente de produção.
|
||||||
|
* `YII_ENABLE_ERROR_HANDLER`: especifica se deve ativar o manipulador de erros
|
||||||
|
fornecido pelo Yii. O valor padrão desta constante é `true`.
|
||||||
|
|
||||||
|
Ao definir uma constante, frequentemente usamos código como o a seguir:
|
||||||
|
|
||||||
|
```php
|
||||||
|
defined('YII_DEBUG') or define('YII_DEBUG', true);
|
||||||
|
```
|
||||||
|
|
||||||
|
que é equivalente ao seguinte código:
|
||||||
|
|
||||||
|
```php
|
||||||
|
if (!defined('YII_DEBUG')) {
|
||||||
|
define('YII_DEBUG', true);
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Claramente o primeiro é mais sucinto e fácil de entender.
|
||||||
|
|
||||||
|
A definição de constantes deveria ser feita logo no início de um script de entrada,
|
||||||
|
de modo que obtenha efeito quando outros arquivos PHP estiverem sendo inclusos.
|
||||||
33
docs/guide-pt-BR/structure-overview.md
Normal file
33
docs/guide-pt-BR/structure-overview.md
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
Visão Geral
|
||||||
|
===========
|
||||||
|
|
||||||
|
As aplicações do Yii são organizadas de acordo com o padrão de projeto
|
||||||
|
[model-view-controller (MVC)](http://pt.wikipedia.org/wiki/MVC)
|
||||||
|
(modelo-visão-controlador). Os [models](structure-models.md) representam dados,
|
||||||
|
lógica e regras de negócio; as [views](structure-views.md) são a representação
|
||||||
|
da saída dos modelos; e os [controllers](structure-controllers.md) recebem entradas
|
||||||
|
e as convertem em comandos para os [models](structure-models.md) e as [views](structure-views.md).
|
||||||
|
|
||||||
|
Além do MVC, as aplicações do Yii também possuem as seguintes entidades:
|
||||||
|
|
||||||
|
* [scripts de entrada](structure-entry-scripts.md): são scripts PHP que são
|
||||||
|
diretamente acessíveis aos usuários finais. São responsáveis por iniciar o
|
||||||
|
ciclo de tratamento de uma requisição.
|
||||||
|
* [aplicações](structure-applications.md): são objetos globalmente acessíveis que
|
||||||
|
gerenciam os componentes da aplicação e os coordenam para atender às requisições.
|
||||||
|
* [componentes de aplicação](structure-application-components.md): são objetos
|
||||||
|
registrados com as aplicações e fornecem vários serviços para atender às
|
||||||
|
requisições.
|
||||||
|
* [módulos](structure-modules.md): são pacotes auto-contidos que contém um MVC
|
||||||
|
completo por si sós. Uma aplicação pode ser organizada em termos de múltiplos
|
||||||
|
módulos.
|
||||||
|
* [filtros](structure-filters.md): representam código que precisa ser chamado
|
||||||
|
pelos controllers antes e depois do tratamento propriamente dito de cada
|
||||||
|
requisição.
|
||||||
|
* [widgets](structure-widgets.md): são objetos que podem ser embutidos em
|
||||||
|
[views](structure-views.md). Podem conter lógica de controller e podem ser
|
||||||
|
reutilizados em diferentes views.
|
||||||
|
|
||||||
|
O diagrama a seguir demonstra a estrutura estática de uma aplicação:
|
||||||
|
|
||||||
|

|
||||||
Reference in New Issue
Block a user