javascriptのPHP化について
宜しくお願い致します。
javascriptの外部ファイルをPHP化して、サーバサイドで動的に生成した内容を吐き出し、それをHTML側でjavascriptの外部ファイルとして受け取って処理しております。
この場合のブラウザがアクセスした際に処理される順番は・・・
(1)HTMLの読み込み開始
(2)header内のjavascript外部ファイルの読み込みと実行
(3)HTMLファイルのbody以下を読み込み
(4)結果をブラウザに返して表示
という流れになるはずです。
この場合、(2)のjavascript外部ファイルの方がbodyより先に実行されるはずです。
しかし、javascript外部ファイル内のPHPでセッションデータを扱っている場合、(3)のbody内でPHPでセッションを定義した内容が、なぜか(2)のjavascript外部ファイルで反映されて実行されるのです。
私のイメージでは・・・
(1)HTMLの読み込み開始
(2)header内のjavascript外部ファイルの読み込みと実行
※この時セッションは反映しない
(3)HTMLファイルのbody以下を読み込み
※この時にセッションを入れても(2)が既に実行さられているので反映しない
(4)結果をブラウザに返して表示
※結果、セッションにデータが入っておらず、php側でエラーを吐き出しjavascriptが止まる
という様になるかと思ってましたが、なぜか実行されます。
javascriptはHTMLが全部読み込まれてから実行されるのでしょうか?