0

CodeIgniter の ACL を作成しようとしていて、ある時点で行き詰まりました。

メソッドに渡されるパラメーターを取得する方法がわかりません。たとえば、URL は次のようになります。 http://ci.dev/controller/action/31

次のように、コントローラーとメソッド/アクションを取得できました。

$class = $CI->router->fetch_class();
$method = $CI->router->fetch_method();

ただし、パラメーターを取得する方法がわかりません (この例では 31)。ユーザーが別のユーザーに属するアイテムを編集できるかどうかを制御したいので、これは私にとって非常に重要です。

ルートが時々異なって見えるかもしれないという理由だけで、私はどんな種類のURIフェッチも使いたくありません。http://ci.dev/controller/31/action

少し追加情報として、私はpost_controller_constructorフックを持っています。

これに備えたいと思います。

どんな助けでも大歓迎です。ありがとうございます。

4

1 に答える 1

2

URI ライブラリには、ルーティング後の詳細を取得するためのメソッドがあります。これらのメソッドには通常、たとえばr次のようにどこかに含まれています。rsegment()

$CI->uri->rsegment_array()おそらく十分でしょう。パラメーターについては特に何もありませんが、最初の 2 つの配列項目を取り除けば、残りはパラメーターになります。

于 2013-05-21T19:10:41.243 に答える