CODE/
FRAMEWORK
60
ElaégeradapeloComposer
epermiteque carregue classes
automaticamente, apartir do
arquivoautoload.PHP. Éuma
prática comumaprogramadores,
PHPounão, criar umarquivode
classes separadopara facilitar a
manutençãodelas. OComposer
agilizaesseprocesso. A segunda
linhaéesta:
$app = require_once __
DIR__.'/../bootstrap/
start.PHP';
A variável $app recebeo
endereçodoarquivodepartida
do sistemaparaesteprojeto.
$ WHUFHLUD OLQKDíQDOPHQWH ID]
algo: rodaoarquivo informadona
variável $app:
$app->run();
Assimháumarquivo
index.PHPquenão receberá
códigos, imagens, textoouhtml.
Eleapenas iniciaráaaplicaçãoe
rodaráoarquivodepartida. Então,
comoévistaa telageradapelo
arquivohello.PHP? Issoé feito
por umarquivochamado routes.
3+3 TXHSHUPLWHGHíQLU DVYLHZV
que serãoexibidasconformeo
endereçoque foi determinadopara
oaplicativo. Pode-secontrolar
qual viewéexibida, por exemplo,
quando seacessaodiretório raiz,
sem informar nenhumarquivo,
como foi feitoem localhos/
laravel/public/. Vejaocódigoque
contémoarquivo routes.PHP (que
íFDQRGLUHWµULR ODUDYHO DSS
Route::get('/', function()
{
return View::make('hello');
});
É simplesdeentender o
códigoacima, que retornauma
viewchamada “hello” sempreque
odiretórioéacessadona raiz (/).
Altereessearquivopara fazer
um teste. Primeiro, crieoutroview
e salvenomesmodiretóriodo
arquivohello.PHP. Por exemplo,
façaumarquivochamado
teste.PHPecoloqueo seguinte
códigodentrodele:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Laravel PHP
Framework</title>
</head>
<body><center><p>
<div class="welcome">
<img src="http://
css.locaweb.com.br/
images/lw2013/logo-
lw160x36.20140227140345.
png"><br>
<h1>Olá mundo, este
é um teste de view
para o Laravel!</h1>
</div></p>
</center>
</body>
</html>
Em seguida, altereoarquivo
routes.PHPparaacessar onovo
view teste.PHP:
Route::get('/', function()
{
return View::make('teste');
});
Oquedevever, aoacessar
localhost/laravel/public/é:
Criar novosviews seriao
equivalenteacriar novaspáginas
deumwebsite,mascommaior
controlee facilidadedeajustes,
PRGLíFD©·HVHPDQXWHQ©¥R
Nãoépossível apresentar todos
os recursos, potencialidadese
característicasdeumambiente
comooLaravel emapenasum
artigo, para issoexistemmuitos
sites, textose livros sobreesse
framework.Maspodemos
começar aentender suaestrutura
comacriaçãodeumapágina
decontato, queprecisadeum
vieweumcontroller básico. Para
começar, crieaentradano routes.
PHPparaanovapágina (contato).
Abraoarquivoemumprocessador
de texto (por exemplo, oblocode
notas) e insiraas seguintes linhas:
Route::get('contato',
array('as' => 'contato',
'uses' => 'HomeController@
contato'));
Route::post('contato',
'HomeController@
postContato');
Aprimeira linha tratado “get”
ea segunda, do “post”. Ou seja, a
chamadanonavegador eoenvio
pelométodo “post”. Agora, crie
apáginaque seráacessadaao
sedigitar nabarradeendereço
donavegador
laraveltest/public/contato. Para
isso, abraumnovoarquivono
blocodenotase salvecomeste
nome: contato.blade.PHP.Mas
oqueeste “blade” está fazendo
nonomedoarquivo?Bladeé
um “template” queacompanha
oLaravel e facilitaacriação
de formulários, entreoutras
funcionalidades. Parausar, basta
utilizar o termo “blade” nonome
doarquivodessa forma: nome_
pagina.blade.PHP. Vejaocódigo
que será inseridoparagerar o
formuláriona telaeentendacomo
funcionao template:
{{ Form::open(array('action'
=> 'HomeController@contato',
'role' => 'form')) }}
{{ Form::label('nome',
'Nome', array('class'=>'
control-label')) }}
{{
Form::text('nome', null,
array('placeholder'=>'Seu
nome...', 'class'=>'form-
control')) }}<br>
{{ Form::label('email',
'E-mail', array('class'=>'
control-label')) }}
{{
Form::text('email', null,
array('placeholder'=>'Seu
e-mail...', 'class'=>'form-
control')) }}<br>
{{ Form::label('texto',
'Texto', array('class'=>
'control-label')) }}
{{
Form::textarea('texto',
null, array('class'=>'form-
control')) }}<br>
{{ Form::submit('Enviar
Mensagem', array('class' =>
'btn btn-default')) }}
{{ Form::close() }}
Essescomandosvãogerar
esta telanonavegador:
Documentação do Laravel é fácil de entender
REVISTA LOCAWEB