Exemplo Simples
Retornando uma String
Criando um Controlador
Crie o arquivo app/controller/UserController.php
como abaixo
<?php
namespace app\controller;
use support\Request;
class UserController
{
public function hello(Request $request)
{
$default_name = 'webman';
// Obter o parâmetro 'name' da solicitação GET. Se nenhum parâmetro 'name' for passado, retornar $default_name.
$name = $request->get('name', $default_name);
// Retornar uma string para o navegador
return response('hello ' . $name);
}
}
Acessando
Acesse no navegador http://127.0.0.1:8787/user/hello?name=tom
O navegador retornará hello tom
Retornando JSON
Altere o arquivo app/controller/UserController.php
como abaixo
<?php
namespace app\controller;
use support\Request;
class UserController
{
public function hello(Request $request)
{
$default_name = 'webman';
$name = $request->get('name', $default_name);
return json([
'code' => 0,
'msg' => 'ok',
'data' => $name
]);
}
}
Acessando
Acesse no navegador http://127.0.0.1:8787/user/hello?name=tom
O navegador retornará {"code":0,"msg":"ok","data":"tom"}
Usando a função auxiliar json para retornar dados, automaticamente é adicionado o cabeçalho Content-Type: application/json
Retornando XML
Da mesma forma, utilizar a função auxiliar xml($xml)
retornará uma resposta XML com cabeçalho Content-Type: text/xml
.
O parâmetro $xml
pode ser uma string XML ou um objeto SimpleXMLElement
.
Retornando JSONP
Da mesma forma, utilizar a função auxiliar jsonp($data, $callback_name = 'callback')
retornará uma resposta JSONP.
Retornando uma Visão
Altere o arquivo app/controller/UserController.php
como abaixo
<?php
namespace app\controller;
use support\Request;
class UserController
{
public function hello(Request $request)
{
$default_name = 'webman';
$name = $request->get('name', $default_name);
return view('user/hello', ['name' => $name]);
}
}
Crie o arquivo app/view/user/hello.html
como abaixo
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>webman</title>
</head>
<body>
hello <?=htmlspecialchars($name)?>
</body>
</html>
Acesse no navegador http://127.0.0.1:8787/user/hello?name=tom
será retornado uma página HTML com o conteúdo hello tom
.
Nota: Por padrão, o webman utiliza a sintaxe nativa do PHP como modelo. Se desejar usar outras visualizações, consulte View.