複数のPHPブロックがある場合のスコープ範囲と実行順 - PHP

複数のPHPブロックがある場合は、ページの先頭から実行されます。また、PHPブロック間で変数は参照できます。

コード例1

最初のPHPブロックで$textvに代入した値は、後ろのPHPブロックでも値が保持されたまま参照できます。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title></title>
  </head>
  <body>
    <?php
    $textv = 'Penguin';
    ?>

    <form action="POST">
      <input type="text" value="<?php echo($textv); ?>"/>
      <input type="button" value="送信"/>
    </form>
  </body>
</html>

実行結果1


コード例2

PHPブロックは先頭から実行されるため、テキストボックスには何も値が入りません。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title></title>
  </head>
  <body>
    <form action="POST">
      <input type="text" value="<?php echo($textv); ?>"/>
      <input type="button" value="送信"/>
    </form>
    <?php
    $textv = 'Penguin';
    ?>
  </body>
</html>

実行結果2


著者
iPentecのプログラマー、最近はAIの積極的な活用にも取り組み中。
とっても恥ずかしがり。
最終更新日: 2024-01-06
作成日: 2011-01-28
iPentec all rights reserverd.