- ベストアンサー
CGIからPHPへの書き換え
すいません、今PHPを勉強中なんですが、 <!--HTML--> if($Slog[2]){ $Slog[2] =~ s/>/>/g; $Slog[2] =~ s/</</g; print<<"<!--HTML-->"; <tr id=log-10> <td><font id=kei>$Slog[2]</font></td> </tr> <!--HTML--> をPHPに書き直すとどうなるんでしょうか? 自分で何度か試したんですが上手くいきません。 宜しくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
PHPでPerlの正規表現を使えます。 $Slog[2] = preg_replace("s/>/>/g", $Slog[2]); $Slog[2] = preg_replace("s/>/</g", $Slog[2]); かな。
- 参考URL:
- http://www.php.gr.jp/
その他の回答 (2)
- GuruGuru22
- ベストアンサー率51% (177/346)
>画面が真っ白になり駄目みたいです。 何も出力していないからでは。 printなりechoなりで、 画面に出力しないと。
補足
書き方が間違っているんですね。 具体的にはどう書けばよいんでしょうか?
- GuruGuru22
- ベストアンサー率51% (177/346)
phpの文として解釈されるのは <?php から ?> の間までの記述です。 よって <?php if($Slog[2]){ ?> $Slog[2] =~ s/>/>/g; $Slog[2] =~ s/</</g; では、最後の文はそのまま出力されます。
補足
レスありがとうございます。 <?php if($Slog[2]){ $Slog[2] =~ s/>/>/g; $Slog[2] =~ s/</</g; ?> や <?php if($Slog[2]){ ?> <?php $Slog[2] =~ s/>/>/g; $Slog[2] =~ s/</</g; ?> ともして見たんですがこれだと、画面が真っ白になり駄目みたいです。何が間違っているんでしょうか?
補足
レスありがとうございます。 難しいですね。 例えば、私が上げたものを単純にphp化した場合はどうなるんでしょうか? <?php if($Slog[2]){ ?> $Slog[2] =~ s/>/>/g; $Slog[2] =~ s/</</g; <tr id=log-10> としてみたんですが、 "$Slog[2] =~ s/>/>/g; $Slog[2] =~ s/</</g;" がページに出てしまい上手くいきません。 記述の方法が間違っているんでしょうか?