phpの参考書で勉強中です。
windows10、XAMPP for windows 7.3.12を使っています。
以下のphpのプログラムを実行するとご覧の通りになります。
php2では途中に改行タグ<br>を入れて改行はできるようになりました。
しかし、悪い箇所を特定するためにecho $html;を入れて見ました。
$html自体がうまく表示されていません。ここを直せば期待通りの表示に
なると思うのですが、どこが間違っているかわかりません。
それともecho $html;では$html全体
「<span class = "{class}">Fried Bean Curd<span>
<span class = "{class}">Oil-Soaked Fish</span>」
は表示されないのでしょうか。
よろしくお願いいたします。
// oreilly例2-14の内容 $html = '<span class = "{class}">Fried Bean Curd<span> <span class = "{class}">Oil-Soaked Fish</span>'; print str_replace('{class}',$my_class,$html); //説明は次のようになっています。 $my_classがlunchに設定されている場合、例2-14の出力は次の通りです。 <span class = "lunch">Fried Bean Curd<span> <span class = "lunch">Oil-Soaked Fish</span> str_replace()への3番目の引数として渡された文字列の{class}(str_replace()の最初の引数) の部分が、lunch($my_classの値)に置き換えられます。
php1
1 2<?php 3 $my_class = 'lunch'; 4 5 $html = '<span class = "{class}">Fried Bean Curd<span> 6 <span class = "{class}">Oil-Soaked Fish</span>'; 7 8 print str_replace('{class}',$my_class,$html); 9 10 /* 期待される実行結果 11 <span class = "lunch">Fried Bean Curd<span> 12 <span class = "lunch">Oil-Soaked Fish</span> 13 */ 14 /* 実際の実行結果 15 Fried Bean Curd Oil-Soaked Fish 16 */ 17 18?> 19
php2
1 2<?php 3 $my_class = 'lunch'; 4 5 /*$html = '<span class = "{class}">Fried Bean Curd<span><br> 6 <span class = "{class}">Oil-Soaked Fish</span>'; 7 8 echo $html; 9 10 print str_replace('{class}',$my_class,$html); 11 12 /* 実際の実行結果 13 Fried Bean Curd 14 Oil-Soaked Fish 15 Fried Bean Curd 16 Oil-Soaked Fish 17 */ 18
回答1件
あなたの回答
tips
プレビュー