【问题标题】:How to do a catch all in Slim framework?如何在 Slim 框架中捕获所有内容?
【发布时间】:2015-06-06 15:06:03
【问题描述】:

我正在使用 Slimphp 制作一个短 URL 服务来处理我的路由。我可以定义任何路线就好了,但如果我想对/<code here> 做出反应,而不是把我带到项目的索引页面。

这是我的代码:

<?php
require 'vendor/autoload.php';
use ShortUrls\ShortUrls;


error_reporting(E_ALL);
ini_set('display_errors', true);

$app = new \Slim\Slim();(array(
    "view" => new \Slim\Views\Smarty()
));


$view = $app->view();
$view->parserDirectory        = dirname(__FILE__) . 'vendor/smarty/smarty/libs';
$view->parserCompileDirectory = dirname(__FILE__) . '/compiled';
$view->parserCacheDirectory   = dirname(__FILE__) . '/cache';
$view->setTemplatesDirectory(dirname(__FILE__) . '/lib/templates/');

\ShortUrls\Config::init_config();

$app->get('/', function ($hash) {
    try {

    } catch (ResourceNotFoundException $e) {
        echo '404';
    }
    $short = new ShortUrls();
    if ($hash) {
        if ($short_url = $short->get_url_by_hash(($hash))) {
            print '<pre>';
            print_r($short_url);
            print '</prE>';
        }
    } else {

        $short->create_short_url("http://www.locovsworld.com");
        // $app->render('layout.tpl', array('test' => 'Hello'));
    }
    global $app;
    print_r( $app->request()->params() );
    echo 'done';
});

$app->run();

请记住,/ == index /9082ABC 可能是我必须从数据库中查询并将客户端重定向到的短 URL。

【问题讨论】:

    标签: php frameworks slim


    【解决方案1】:

    我已经得到以下答案...

    $app->get('/(:hash)', function ($hash) {
    
    };

    很抱歉打扰你们:(

    【讨论】:

      猜你喜欢
      • 2015-02-14
      • 2020-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-23
      • 1970-01-01
      相关资源
      最近更新 更多