• ベストアンサー

PHPで任意のページの場合にソースを記述

自作でテンプレートを作成してみています。 現在、index.phpの場合にのみ表示させたいCSSリンクがあり、 このおかげで、ヘッダーテンプレートを2つ作成しなければならない状態です。 そこで、質問ですが、 任意のファイル名(index.phpやcontent.phpなどの場合)にのみ表示させるには どうすればいいでしょうか? 例えば、index.phpの場合にのみ、 <link rel="stylesheet" type="text/css" href="css/index.css"> を追記したいなどです。

質問者が選んだベストアンサー

  • ベストアンサー
  • agunuz
  • ベストアンサー率65% (288/438)
回答No.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; } ?>

egtomo
質問者

お礼

if ($_SERVER['SCRIPT_NAME'] === '/index.php') { このままだとディレクトリパスが入ってしまうので、下記で行けました。 if(basename($_SERVER["SCRIPT_NAME"]) == "index.php") $_SERVER["SCRIPT_NAME"]の存在を忘れていました。 ずっと悩んでいたので、助かりました。 ありがとうございました。

その他の回答 (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; } ?>

関連するQ&A

専門家に質問してみよう