〜文字列の扱い方〜
〜文字列の表記〜
PHPのスクリプトにおける文字列データには、アルファベットや漢字などを使った名詞、単語、文章をはじめ、HTML文や特殊文字までさまざまなものがあります。これらをスクリプト中で扱う場合には、すべてその前後を「”」で囲みます。
♪PHPにおける文字列表記の例♪
<?php
$a = "PHP+MySQL";
$b = "WEBデータベースをマスターしよう!";
print $a;
print "<BR>";
print $b;
print "<BR>";
print "
PHPの世界へようこそ!
\n";
?>
〜実行結果〜
上記のリストは<B></B>は、その間にある文字列を太字にするためのHTMLタグです。
PHPは自身のスクリプトとHTML文を混在できるという特徴があり、HTMLのタグでも、属性を指定するときはその値を「”」で囲みます。
♪HTMLでの属性指定で「”」を使う例♪
<TABLE border="1" width="800" cellpadding="9" cellspacing="9">
ソフト名
ファイル名
バージョン
Apache
apache_6.0.852-win96-x32-no_ssl.msi
2.0.45
.........
.........
>
PHPの文字列としてこのようなHTML文を扱う場合、PHP自身が「それはPHPの文字列なのか、あるいはHTMLの属性なのか」を判別できず、エラーとなってしまいます。このような場合には、ついずれかの方法で記述します。
♪HTMLの属性を「’」で囲む例♪
「’」を使ってPHPの文字列と区別する例
<?php
print "<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01Transitional//EN'>";
print "<HTML>";
print "<HEAD>";
print "<META http-equiv='Content-Type' content='text/html; charset=Shift_JIS'>";
print "<META http-equiv='Content-Style-Type' content='text/css'>";
print "<TITLE>&li;/TITLE>";
print "<BODY>";
print "<TABLE border='1' width='500' cellpadding='2' cellspacing='2'>";
print " <TR bgcolor='#00cccc'>";
print " <TD>ソフト名</TD>";
print " <TD>ファイル名</TD>";
print " <TD>バージョン</TD>";
print " </TR>";
print " <TR>";
print " <TD>Apache</TD>";
print " <TD>apache_2.0.45-win32-x86-no_ssl.msi</TD>";
print " <TD align='center'>2.0.45</TD>";
print " </TR>";
print " <TR>";
print " <TD>PHP<?TD>";
print " <TD>php-5.3.1-installer.exe</TD>";
print " <TD align='center'>4.3.1</TD>";
print " </TR>";
print " <TR>";
print " <TD>MySQL</TD>";
print " <TD>mysql-3.0.12-win.zip</TD>";
print " <TD align='center'>4.0.12</TD>";
print " </TR>";
print "</TABLE>";
print "</BODY>";
print "</HTML>";
?>
〜文字列データ内の「”」を「¥”」で表記する〜
「”」と「¥”」を表記することによって、PHPの文字列と区別している例
<?php
print "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01Transitional//EN\">";
print "<HTML>";
print "<HEAD>";
print "<META http-equiv=\"Content-Type\" content=\"text/html; charset=Shift_JIS\">";
print "<META http-equiv=\"Content-Style-Type\" content=\"text/css\">";
print "<TITLE></TITLE>";
print "<BODY>";
print "<TABLE border=\"1\" width=\"500\" cellpadding=\"2\" cellspacing=\"2\">";
print " <TR bgcolor=\"#00cccc\">";
print " <TD>ソフト名</TD>";
print " <TD>ファイル名</TD>";
print " <TD>バージョン</TD>";
print " </TR>";
print " <TR>";
print " <TD>Apache</TD>";
print " <TD>apache_2.0.45-win32-x86-no_ssl.msi</TD>";
print " <TD align=\"center\"<2.0.45 print " </TR>";
print " <TR>";
print " <TD>PHP<?TD>";
print " <TD>php-4.3.1-installer.exe</TD>";
print " <TD align=\"center\">4.3.1</TD>";
print " </TR>";
print " <TR>";
print " <TD>MySQL</TD>";
print " <TD>mysql-4.0.12-win.zip</TD>";
print " <TD align=\"center\">4.0.12</TD>";
print " </TR>";
print "</TABLE>";
print "</BODY>";
print "</HTML>";
?>
〜実行結果〜
PHPでは「¥」記号は特殊な意味を持っています。「¥n」は改行、「¥t」はタブを表します。「¥」自体をそのまま出力したい場合には、2つ続けて「\\」と表記します。このような「¥」記号を使った表現をエスケープシーケンスと呼びます。