SLIM框架如何为路由回调函数分配条件

时间:2014-07-31 12:16:20

标签: callback routes conditional-statements slim

我在Slim应用程序中定义了一条路线,如下所示:

$app->get('/marcas/:id', 'getMarcas');

我的回调函数定义为:

function getMarcas($id) {
$sql = "SELECT * FROM marcas WHERE id=:id";
try {
    $db = getConnection();
    $stmt = $db->prepare($sql);  
    $stmt->bindParam("id", $id);
    $stmt->execute();
    $marcas = $stmt->fetchObject();  
    $db = null;
    echo json_encode($mrcas); 
} catch(PDOException $e) {
    echo '{"error":{"text":'. $e->getMessage() .'}}'; 
}

}

如何应用路线条件,如:

->conditions(array('id' => '[0-9]{2,}'));

由于

2 个答案:

答案 0 :(得分:1)

您可以完全按照您猜测的方式指定条件。有关详细信息,请参阅路线条件文档:http://docs.slimframework.com/#Route-Conditions

答案 1 :(得分:0)

你可以使用

$app = new \Slim\Slim();
$app->get('/hello/:firstName/:lastName', $callable)
->conditions(array('lastName' => '[0-9]{2,}'));

调用get / post