- ベストアンサー
PHPで任意のページの場合にソースを記述
自作でテンプレートを作成してみています。 現在、index.phpの場合にのみ表示させたいCSSリンクがあり、 このおかげで、ヘッダーテンプレートを2つ作成しなければならない状態です。 そこで、質問ですが、 任意のファイル名(index.phpやcontent.phpなどの場合)にのみ表示させるには どうすればいいでしょうか? 例えば、index.phpの場合にのみ、 <link rel="stylesheet" type="text/css" href="css/index.css"> を追記したいなどです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
テンプレートはphpスクリプトにincludeで読込んでいるんですよね(readfileなら何もやりようがないので)。 $_SERVER['SCRIPT_NAME'] をチェックすればいいのでは? <?php if ($_SERVER['SCRIPT_NAME'] === '/index.php') { print '<link rel="stylesheet" type="text/css" href="css/index.css">' . PHP_EOL; } ?>
その他の回答 (1)
- yambejp
- ベストアンサー率51% (3827/7415)
回答No.1
<?PHP if(basename($_SERVER["SCRIPT_NAME"])=="index.php"){ print '<link rel="stylesheet" type="text/css" href="css/index.css">'.PHP_EOL; } ?>
お礼
if ($_SERVER['SCRIPT_NAME'] === '/index.php') { このままだとディレクトリパスが入ってしまうので、下記で行けました。 if(basename($_SERVER["SCRIPT_NAME"]) == "index.php") $_SERVER["SCRIPT_NAME"]の存在を忘れていました。 ずっと悩んでいたので、助かりました。 ありがとうございました。