
No.3ベストアンサー
- 回答日時:
No.5
- 回答日時:
eval()を使うのでちょっと危険ですが、信頼できるデータを元にしている
のであれば@{}をまねて、以下のようなやり方はいかがでしょうか?
<?php
$a = 3;
$b = 4;
$str= <<<EOF
{$a} と {$b} で大きいのは @[max($a,$b)]です。<br>
和は@[$a+$b]です。<br>
積は@[$a*$b]です。
EOF;
$pattern="/@\[(.*?)\]/";
preg_match_all($pattern,$str,$matches);
$array = array_map( create_function('$arg', 'return eval("return ".$arg.";");'), $matches[1] );
$str=str_replace($matches[0],$array,$str);
print $str;
?>
No.4
- 回答日時:
ヒアドキュメント内で関数が使えるかどうかが重要ということでしょうか。
たとえば、if文などで代用する場合です。<?php
$a = 1;
$b = 2;
if($a > $b){
print <<<EOF
大きいのは{$a}です。
EOF;
}
elseif($a < $b){
print <<<EOF
大きいのは{$b}です。
EOF;
}
elseif($a = $b){
print <<<EOF
同じです。
EOF;
}
else{
print <<<EOF
わかりません。
EOF;
}
?>
実際にはDBから取得したレコードを出力するというものなのですが
print '<h1>SQLの実行結果</h1>';
foreach($dataset as $record){
print<<<EOF
<h2>{$record[1]}</h2>
<h2>{$record[2]}</h2>
<h2>{$record[3]}</h2>
<h2>{$record[4]}</h2>
<hr>
EOF;
}
このうち$record[4]だけをnl2br($record[4])で出力したいのです。
なので、あくまでもヒアドキュメント内で関数実行ができればというのが目的です。。
たくさんコードを記述していただきありがとうございます♪
No.1
- 回答日時:
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PLY yacc での IF 文実装
-
「取得先」という表現について
-
開始と終了を指定して、その間...
-
DTOとEntityの差は何ですか。
-
Dosブロンプトでtabを出力したい
-
WordでExcelデータを差込...
-
VBA内でのGetPixelを使用した時...
-
完全なセッション破棄をしたい
-
PHP4からPHP5へ移行した際、セ...
-
VB.NETからVBAマクロ(引数)を呼...
-
INIファイル
-
PHPでの画像の形式の変換
-
Worksheet_Changeについて
-
ps3で久しぶりにCDの音楽情報取...
-
C言語で地図を描きたい
-
ローカルのコンピュータ名を取...
-
ミュージックのアートワークを...
-
C#で特定LANアダプタの状態を取...
-
過去にVBAでの「シフト表の何日...
-
classの再定義エラーについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<A href ~で複数の値を渡したい
-
parse_ini_fileでダブルクォー...
-
「次の10件を表示する」のよ...
-
テーブルに送信ボタンをつける
-
!==について
-
ヒアドキュメントの中で関数の実行
-
PHPでwait処理ってできます?
-
$_SERVER["QUERY_STRING"]の仕...
-
初歩的な質問だと思います。IF...
-
phpからoracle関数を使ってコミ...
-
PHP declare文について、ticks...
-
null代入とunset()の違いについて
-
PHP ハイパーリンク
-
PHPの質問です : -> 等
-
重い処理の最中の経過を出力したい
-
書籍とその書籍が提供している...
-
printの出力結果を変数に代入す...
-
ヒアドキュメントでstaticメン...
-
CakePHP リッチテキストエディ...
-
ランダム文字について
おすすめ情報