0

Slim PHPで次のようなことを達成しようとしています:

ページ/p1/p2/p3/p4

私が欲しいのは、右からパラメーターを省略した場合(明らかに)、受け取ったパラメーターに基づいて自分のことをしたいということです。

    $app->get('/page(/)(:p1/?)(:p2/?)(:p3/?)(:p4/?)', 
        function ($p1 = null, $p2 = null, $p3 = null, $p4 = null) {
            print empty($p1)? : '' . "p1: $p1/<br/>";
            print empty($p2)? : '' . "p2: $p2/<br/>";
            print empty($p3)? : '' . "p3: $p3/<br/>";
            print empty($p4)? : '' . "id: $p4<br/>";
    });

すべてが期待どおりに機能しますが、問題は、最後から1パラメーターを削除するたびに、削除するすべてのパラメーターに対して出力されることです。なぜそうしているのですか?ここで何が間違っていますか?

4

1 に答える 1