PHPを本格的に始め思った事
グローバル変数利用の違いを見極める必要性
基本的にPHPとJavaScriptで決定的に違う内容として
コンテンツの書き込みがあります。JavaScriptはセキュリティのためにCookie以外での直接的なデータの保存や書き込みはできないものです。
PHPはJavaScriptに比べて予め用意された関数が多いように感じました。結果的にPHPにはDOMやイベント関係の要素が抜けるので大半は必要に応じて関数を調べるといった感じになると思います。(触りを見ての意見)
PHPで今回扱ったグローバル変数で$_FILES,$_POST,$_GET,$SESSION,$COOKIE,$REQUEST
基本的にどのグローバル変数でも常にセキュリティの意識と向かい合わせになっています。
各グローバル変数の注意についてまとめてみました。
$_GET
フォームのメソッドをgetにすることで得られるグローバル変数。送信時に?(プロパティ)の後ろにvalue値が追加される仕組みとなっている。
良点としては結果がURLに現れるのでブックマークしておける
欠点としては暗号等重要な送信内容の時はデータが筒抜けになるので適応してはいけない、また短いデータしか活用できない。
$_POST
フォームのメソッドをpostにすることで得られるグローバル変数、特に変化は見られない。
良点として比較的長い文章でも送信が可能になる。
$_SESSION
$_GET及び$_POSTの値を代入する事で一時的にデータを保存する事ができるグローバル変数。効果はWebページが閉じられるまで続く。
良点として、ログイン関係等、うっかりログアウトすることを忘れてしまってもWebページを閉じると同時に自動的にsessionデータも消えるのでセキュリティの面で良い
欠点としてWebを閉じる事でデータが消えてしまうため長期に渡るデータの保管ができない。
$_COOKIE
setcookie("Cookie名" , "保存するCookieの変数や値" , "保存期間") により設定してデータを補完するグローバル変数。
良点として自由自在に値の保管を決められるため自由性が高い。
欠点として一定期間保存するため、ログイン関係での日付調整が必要となる。
$_FILES
フォームのメソッド値をpostにしてグローバル変数が得られる(連想配列式)
良点としてファイルを受信できるので需要度が比較的高まる。
欠点として得られるファイルの情報がわからないので厳密に分岐して安全なファイルを得られるようにソースを記述しなければならない(ファイルのサイズに拡張子等)
ざっと見た感じ、PHPはデータ処理系が多くそれで一塊な感じがしました。
関数もJavaScriptと類似するものとして(rand , substr , math系)関数に関しては多量にあるので必要な情報だけ調べて得るのが正解かなと思いました。