髪を引っ張ってハゲになると思います...
CodeIgniterチュートリアルと以前の経験によると、2番目、3番目、または4番目のセグメントが存在するかどうか、またはそれらの値は何かを簡単に判断できます。
if($this->uri->segment(3)) {
//do something
}
また
if($this->uri->segment(3)=="foo") {
//do something
}
FIRST SEGMENTを除く他のすべてのセグメントでは、すべて問題ありません。
FIRST SEGMENTに条件文を使用することはできません!
if($ this-> uri-> segment(1))は機能しません。常にtrueを返すからです。しかし、最初のセグメントが存在するかどうかを確認したいと思います。index.phpを削除したため、自分のサイトを参照すると、www.domain.comのように見えます。他のすべてのコントローラーは、domain.com / firstcontroller、domain.com/secondcontrollerのようになります
しかし、WEBROOTの条件を作成する必要があります。
__construct()関数を試しましたが、どちらも機能しませんでした。
私がやりたいことは、現在のページがWebルートではない場合(最初のセグメントがなくても)、またはメインコントローラーではない場合にHTMLを表示することです。
手伝ってもらえますか?
編集:エラー...ごめんなさい。私は問題を理解しました。それは正しい演算子を使用することについてでした。ORの代わりにXORを使用することになっていた。したがって、$ this-> uri-> segment(1)を決定することに問題はありません...他のセグメントとまったく同じです...