この問題を解決するために多くの方法を試しましたが、どれもうまくいきません。
クラスがあるとします:
class MyTestClass{
function testPrint($a = '', $b = '', $c = '')
{
echo '1: ' . $a . ', 2: ' . $b . ', 3: ' . $c;
}
}
この URL を使用してこの関数にアクセスする
と、出力としてhttp://localhost/ci/index.php/myTestClass/testPrint/a/b/c
表示されますが、問題ありません。1: a, 2: b, 3: c
しかし、$b を空の文字列に割り当てると、URL は次のように変わりますhttp://localhost/ci/index.php/myTestClass/testPrint/a//c
出力1: a, 2: c, 3:
は、不足しているパラメーターを CI が無視しているようです。
質問は、URI の途中で欠落しているパラメーターを CI が無視するのを防ぐ方法ですか?
URLが今のところ私の予想される出力は1: a, 2: , 3: c
ところで、$this->uri->segment(n)
パラメータの位置を確保するために使用しようとしましたが、うまくいきません。
以下を追加して、routes.php を更新しようとしました。
$route['myTestClass/(:any)/(:any)/(:any)/(:any)'] = "myTestClass/$1/$2/$3/$4";
しかし、これは何も変わりません。
何か案が?