- ベストアンサー
要素の抽出と埋め込み
PHP初心者です。 同一のファイル内で、特定のタグに囲われた箇所に、別のタグ内の要素を埋め込みたいと思っています。 具体的には、 <title>hoge ホゲ</title>のhogeの部分が、同ファイル内の <body id="hoge">のhogeの部分から持ってくるようにしたいのです。 なぜなら、複数のページで<head>内の記述をincludeで使いまわしていますが、<title>には、各ページで違う表記をしたいのです。 ここで、タイトルとして使えるユニークなIDは<body id="hoge">の部分となります。 http://oshiete1.goo.ne.jp/qa2481220.html に、似たような質問がありましたが、わたしには応用ができませんでした。 すいませんが分かる方、ヘルプよろしくお願い致します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
$titleが書かれている場所がPHP処理の外だからです。 ----------------------- head.php ----------------------- <html> <head> <title><?php echo $title; ?>のホームページ</title> </head> ----------------------- hoge.php ----------------------- <html> <?php $title = "ほげ"; ?> <?php include( "head.php" ); ?> <body id="<?php echo $title; ?>">
その他の回答 (2)
- oka5130
- ベストアンサー率66% (35/53)
#1です。 すみません…、うっかりしてました。 #2の方の回答の通りです。
お礼
いえいえ、ありがとうございます!
- oka5130
- ベストアンサー率66% (35/53)
idを使ってタイトルを書き換えるならJavaScriptになるんでしょうが、 ページを読み込んでからタイトルを書き換えるって微妙な感じになってしまいますね。 次のやり方の方が素直かなぁと思うのですが、idを指定しなければならない理由はありますか? ----------------------- header.php ----------------------- <html> <head> <title>$title</title> </head> ----------------------- hoge.php ----------------------- <?php $title = "ほげ"; include( "header.php" ); <body> ----------------------- fuga.php ----------------------- <?php $title = "ふが"; include( "header.php" ); <body> ...
補足
回答ありがとうございます。 まず、JavaScriptについてですが、モバイルサイトでの利用も考えていますので、使用できないんです。 IDの指定ですが、CSSを使ってIDの判別し、今どこのページに居るかをナビゲーションに表示しているので必須となります。 さっそく、やってみました。 ----------------------- head.php ----------------------- <html> <head> <title>$titleのホームページ</title> </head> ----------------------- hoge.php ----------------------- <html> <?php $title = "ほげ"; ?> <?php include( "head.php" ); ?> <body id="$title"> しかし、残念ながらタイトルは「$titleのホームページ」、IDも「$title」のまま表示されてしまいました。 何がいけないのでしょうか。。。
お礼
おお、できました! ありがとうございます。