'''' '''PHPの利用''' ''''>>
!!PHPのプログラムに必要な環境((br))
:: なぜPHPと呼ばれているのだろうか、Hypertext Preprocessorというこの言語は、HyperText Markup Languageの補助的な役割を担うものとして開発された。C言語を手本の一つにしているらしく、文法がよく似ている。((br))((br))
PHPファイルの感覚的な位置づけはHTMLファイルと変わらない。PHP in HTML, HTML in PHP のように
片方のファイルの中にもう一方を組み込む形で使うことができる。(HTMLファイル内でJavaScriptを記述する際に使った""のように、""というタグが存在する。)((br))((br))
よって、作るのは簡単だと意気込んで作るが、うまくいかない点が出てくる。実行できないのである。世の中の動的なwebサイトのほとんどすべてにはPHPのプログラムが組み込まれており、頭のいいChromeやEdge、FireFox、safari等のウェブブラウザは、たとえローカル環境にPHPの環境がなかったとしても何ら問題なくwebページの表示をしてくれる。しかし、自身でプログラムしたPHPファイルの出力はしてくれない。これは、PHPが動作する仕組みに理由がある。
!!PHPの仕組み
:: PHPを動かすには2つの方法がある。((br))((br))
・ローカルにPHPの環境を設定する。((br))
・PHPを動かせるサーバーにPHPファイルを置く。((br))((br))
:: ひとつめは、当たり前に動作するのが分かるだろう。((br))
ふたつめについてだが、サーバーにファイルを置くことで、サーバーがPHPの処理をしてくれるため、PHPの実行環境がないローカルなブラウザでの表示(実行)が可能になる。
!!PHP、サーバー、ブラウザの関係性
*ブラウザ:読み込んだファイルの形式を判断して、HTMLファイルを処理し出力する。PHPにリクエスト。
*PHP:動作としては文字列を格納し、文字列の吐き出しを行っているらしい。ブラウザにレスポンス。
*サーバー:PHPの処理。PHPとブラウザのリクエストとレスポンスの動作を命令する。
::基本的にブラウザはHTMLファイルしか処理しないため、PHPが組み込まれている場合はサーバーに送る。受け取ったサーバーはPHPをHTMLとしてつくりなおしブラウザへ返す。ブラウザは受け取ったHTMLファイルをもとに出力する。((br))((br))
おそらく以下のようなことが行われていると自分は理解している。
<<{スクリーンショット 2022-07-09 013012.png}
!!実行方法(コマンド)
:: 最後に実行方法について。((br))
HTMLファイルの実行のようにプログラムファイルのパスをURL欄にペーストしてもPHPファイルは実行されない。先ほど述べたように環境の整っていないローカルでは処理できないからだ。しかし、PHPの環境が整っているサーバーにファイルを置くことで、ブラウザ出力の時点ではHTMLファイルに置き換わってくれる。((br))((br))
今年度は、張先生による4年生のデータベースの講義でmysqlとPHPを使うため、環境が整ったサーバーがあるとのことで、そのサーバーをお借りし、mysqlとPHPによるソフトウェア設計が可能となった。((br))
実行する手順は次の通り。((br))((br))
:1.esdbサーバーに入る。
*使用するサーバーは、学内のesdbサーバー。
*端末を起動((br))
→コマンド"ssh esdb.cis.iwate-u.local"を入力。((br))
→パスワードを入力すればアクセス完了。
:2.自分のホームディレクトリの下に、"public_html"というディレクトリを作る。
:3.public_htmlディレクトリの中に、実行ファイルを入れる。
:: public_htmlディレクトリは、ホームページ用のファイルをアップロードするディレクトリ。このディレクトリ内に転送されているホームページ(ファイル)や画像のみが、ブラウザでアクセスした際に表示される。public_htmlディレクトリ以外にファイルをアップロードしても、ホームページ用のファイルとしては認識されず、表示(閲覧)することはできない。逆にブラウザーから表示(閲覧)されたくないファイルやディレクトリは、public_htmlディレクトリ以外に転送することで、隠しファイル、隠しディレクトリを設けることが可能。
:4.webブラウザを立ち上げ、URL欄にファイルの絶対パスを入力する。
>>"http://esdb.cis.iwate-u.local/~s062..(学籍番号)/ファイル名"<<