Exemplo Simples de Introdução Rápida ao Webman

Retornar String

Criar Controlador

Crie o arquivo app/controller/UserController.php conforme abaixo

<?php
namespace app\controller;

use support\Request;

class UserController
{
    public function hello(Request $request)
    {
        $default_name = 'webman';
        // Obtém o parâmetro name da requisição GET; se não for passado, retorna $default_name
        $name = $request->get('name', $default_name);
        // Retorna uma string ao navegador
        return response('hello ' . $name);
    }
}

Acessar

Acesse no navegador http://127.0.0.1:8787/user/hello?name=tom

O navegador retornará hello tom

Retornar JSON

Altere o arquivo app/controller/UserController.php conforme 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
        ]);
    }
}

Acessar

Acesse no navegador http://127.0.0.1:8787/user/hello?name=tom

O navegador retornará {"code":0,"msg":"ok","data":"tom"}

Usar a função auxiliar json para retornar dados automaticamente adicionará um cabeçalho Content-Type: application/json

Retornar XML

Da mesma forma, usar a função auxiliar xml($xml) retornará uma resposta xml com o cabeçalho Content-Type: text/xml.

O parâmetro $xml pode ser uma string xml ou um objeto SimpleXMLElement

Retornar JSONP

Da mesma forma, usar a função auxiliar jsonp($data, $callback_name = 'callback') retornará uma resposta jsonp.

Retornar Visualização

Altere o arquivo app/controller/UserController.php conforme 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 conforme 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
retornará uma página HTML com o conteúdo hello tom.

Nota: O Webman usa por padrão a sintaxe PHP nativa como template. Se desejar usar outras visualizações, consulte Visualização.