[PHP-users 5035] Re: PHPにおけるダブルコーテーション”

Shigeki Mimura php-users@php.gr.jp
Mon, 28 Jan 2002 14:38:09 +0900 (JST)


三村です。
 
nakajima> <INPUT type="button" name="selbase" value="基本情報" onclick="parent.shita.location.href='user_baseset.php'">
nakajima> 上記の文法で、値を渡したいのですが、
nakajima> PHPで書くと
nakajima> 
nakajima> print("<INPUT type='button' name='selbase' value='基本情報' onclick='parent.shita.location.href='user_baseset.php?id=" . $id . "''>");
nakajima> 
nakajima> にしてるのですが、上手にリンクがはれません(機能が働かないのです)
nakajima> 
nakajima> 私が思うのはonclick=の次は"でなければ?と推測してるのですが、
nakajima> 
nakajima> PHPの中で"を記述できますか?
nakajima> 
nakajima> ためしにprint(""");
nakajima> と明記してもエラーになってしまします。

他のほとんどのプログラミング言語でそうなのですが、特別な意味を持つ文字はそのままでは
出力できません。
ほとんどの言語ではバックスラッシュ(\)でエスケープします。
PHPも例に洩れません。
print "\"文字列\"";
とやればダブルクォートも出力できます。
あとPHPなら
<input type="button" name="selbase" value="基本情報" onclick="parent.shita.location.href='<? print $id; ?>'""
といったような書き方もあります。