スタートページJavascriptReact
PHPの概要 ←PHP文法の基本(1) →文法の基本(2)文法の基本(3)

PHP文法の基本(1)paiza.io での入力コードの形式


PHPの概要で設定した動作環境 paiza.io での入力コードの形式を列挙します。


JavaScriptのないHTML (HTML only)

<p> や <h1> などの表示タグだけなら、<html> や <body> なしに、直接に記述できます。

<p>直接にタグを記述できます。</p>

HTML + JavaScript (通常のHTML)

JavaScript の記述は、
  <script type="text/javascript>
    :
   console.log(…);
    :
</select>
とすることができます。

しかし、paiza.io の環境では、JavaScript での alert や cnsole.log には注意が必要です。alert は反応しないし、 console.log はコンソールを開くと多様なメッセージが表示されて期待する値を探すのが面倒です。

console.log を回避するとなると、script部で作成した文字列変数「出力」の内容を、bidy部の &li;div id="出力表示場所"> に表示することにします。
赤字の部分は、// 他言語のscriptとの区別のため、あったほうがよいでしょう。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>テスト</title>
 
<script type="text/javascript">
function テスト() {
    var 表示場所 = "出力表示場所";
    var 出力 = "";
    出力 += "HTMLプログラムからの出力";
    document.getElementById(表示場所).innerHTML = 出力;
}
</script>

</head>

<body onLoad="テスト()">
<div id="出力表示場所"></div>
</body>
</html>

PHP だけ (PHP only)

非常に簡単です。<?php ~ ?> の間に、PHPプログラムを書くだけです。

<?php
  $出力 = "PHPプログラムからの出力";  // PHPの変数には $ を付ける
  echo $出力;                         // echo は「表示」の機能
?>

$出力 = "<p>PHPプログラムからの出力<p>"; のようにタグを付けることもできます。

HTML内にPHPを組み込む (HTML + PHP)
 PHPの値をHTMLに渡す

以下のケースはすべて次の出力になります。
  HTMLからの出力(前)
  PHPからの出力
  HTMLからの出力(後)

<p>HTMLからの出力(前)</p>
<?php echo "PHPからの出力" ?>
<p>HTMLからの出力(後)</p>

次のような記述もできます。PHPで定義した変数「$文字列」を HTML では <?php echo $文字列 ?> で受け取っています。

<?php
  $文字列 = "PHPからの出力";
?>
<p>HTMLからの出力(前)</p>
<p><?php echo $文字列 ?></p>
<p>HTMLからの出力(後)</p>

上述の(JS only)の形式に PHP を組み込むと次のようになります。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>テスト</title>
<?php
    $文字列 = "PHPからの出力";
?>
<script type="text/javascript">
function テスト() {
    var 表示場所 = "出力表示場所";
    var 出力 = "";
    出力 += "<p>HTMLからの出力(前)</p>";
    出力 += "<p><?php echo $文字列 ?></p>";
    出力 += "<p>HTMLからの出力(後)</p>";
    document.getElementById(表示場所).innerHTML = 出力;
}
</script>
</head>

<body onLoad="テスト()">
<div id="出力表示場所"></div>
</body>
</html>

PHPの中にHTMLを埋め込む(PHP + HTML)
 ヒアドキュメントを使う方法

ヒアドキュメントは、改行やスペースなどを含めた文字列をそのままの状態でソースコードの中に埋め込むために使われる手法です。
<<<範囲 ~ 範囲; とは、囲まれた内部をヒアドキュメントとするという意味です。(「範囲」ぬは EOF, EOM などを使うのが一般的です。

ヒアドキュメントをそのまま表示する例

<?php
  echo "PHPからの出力";
  echo <<<範囲
    <p>範囲からの出力</p>
  範囲;
?>

ヒアドキュメントを変数「$文字列」とする例

<?php
  echo "PHPからの出力";
  $文字列 = <<<範囲
    <p>範囲からの出力</p>
  範囲;
  echo $文字列
?>