8

コントローラー引数を使用する必要があります

function view($post_id) {
    ...
}

またはuri->セグメント

function view() {
    ...
    $post_id = $this->uri->segment(3);
    ...
}

単純なブログ投稿 ID のみ。違いはありますか?

4

2 に答える 2

7

コントローラー引数を使用します。

次に、コードを移動してサブディレクトリに配置する必要があった場合でも、セグメントメソッドは機能しませんが、機能します。

于 2013-01-31T12:14:56.843 に答える
0

いいえ、この場合違いはありません。可能な場合は制御引数を使用してください。これにより、ルートをさらに混乱させ、コントローラーファイルを移動できます。

uri を使用する場合$this->uri->rsegment(3);は、rsegment に影響を与えずにルートをバインドできるため、代わりに使用することを検討してください。

CodeIgniter の最も優れた点は、どのソリューションを好むかはあなた次第だということです。関数を調べなくても、URL の値が関数にどのように影響するかをすばやく理解できるため、引数を使用することを好みます。上部に値が表示されます。

エラー メッセージを作成するのが怖い場合は、次のように設定することを検討してください。

function view($post_id = NULL) {
    ...
}

代わりは。.なしで URL にアクセスすると、エラーが防止されますpost_id

于 2013-01-31T12:18:15.637 に答える