記事の詳細
JavaScriptとphpの違いって何?どう使い分けるの?ざっくりと違いをご紹介します!
コードを組んでいるうちにいつの間にか違いを理解していたJavaScriptとphpの違いに関して、復習も兼ねて記事にしてみようと思います。
「バックエンド」や「フロントエンド」という難しい言葉は省いて、ざっくりと「どう違うのか?」「何故使い分けるのか?」という部分をご紹介します。
今回のブログの見出しはコチラです!
まず初めに「ブラウザ」と「サーバー」の仕事の違いを理解する
JavaScriptやphpの違いを考える前に、Webサイトを閲覧する際に必要な「ブラウザ」と、データを提供する「サーバー」の仕事を理解しなければなりません。
では、Webサイトを見るために使用している「ブラウザ」と「サーバー」はそれぞれどんな仕事をしているのか。各々の仕事の違いを見てみましょう。
ブラウザの仕事は?
ブラウザの仕事は「サーバーへの要求」と「サーバーから提供された情報に対する処理を行う」ことが主な仕事になります。
サーバーから提供されるデータにはJavascriptの記述もありますので、ブラウザではJavascriptの処理を行います。
サーバーの仕事は?
サーバーの仕事は「ブラウザの要求に対して必要なデータを提供する」ことが主な仕事になります。
ブラウザが要求したデータがphp形式であれば、phpで記述された箇所を処理して、データをブラウザ側へ提供します。
このように、ブラウザとサーバーは「要求」と「提供」をすることによって、様々なWebサイトを表示しています。
JavaScriptとphpの大きな違いは処理を行うタイミングにあります
見出しの通りですが、JavaScriptとphpの大きな違いは処理を行うタイミングにあります。
JavaScriptはブラウザ側で処理が行われて、phpはサーバー側で処理が行われます。
言葉ではなかなかイメージできないと思いますので、下記のようなソースコードを参考にして処理の流れを見てみましょう。
上記のソースコードをサーバーに設置してブラウザからアクセスをすると、phpの部分はサーバー側で処理が行われます。
サーバー側はphpの処理を行い、下記のようなコードに変換してブラウザ側にデータを送信します。
JavaScriptの記述はそのまま残るので、JavaScriptのコードはブラウザ側で処理されます。
phpはサーバー側で処理を行うため、データベースにもアクセスが可能となっています。そのため、記事のデータをデータベースに保管するCMS(WordPress等)ではphpの操作が必須となります。
ちょっとした余談になりますが、以前に私は下記のような記事を書きました。
上記の記事では、JavaScriptを使用して「現在の曜日」を取得していますが、phpでも同様の処理をさせることができます。
しかし、JavaScriptとphpでは処理を行うタイミングが違うため、結果が異なる場合があります。
例えば、パソコンの日付設定が月曜日で、サーバーの日付設定が火曜日だった場合を考えてみましょう。
JavaScriptでプログラムを組んだ場合は、パソコンの設定で処理が行われるため、今回の例であれば月曜日が出力されます。
一方、phpでプログラムを組んだ場合は、サーバーの設定で処理が行われるため、今回の例であれば火曜日が出力されます。
このように、パソコンの設定とサーバーの設定が異なっていると違う結果が出力されます。
そのため、Webサイトで機能を実装する際には、JavaScriptとphpのどちらで組むべきかを事前に決める必要があります。
ささいな疑問でも解消するだけに留めず、しっかりと理解しましょう!
いかがでしたか?
JavaScriptとphpの違いは、プログラムを組んでいる人は何となく理解した気になってしまう部分だと思います。
かく言う私も、半年ほど前までは何となくで組んでいましたが、ふとJavascriptとphpを交互に組んでいるうちに「あれ?どっちが先に処理されるんだっけ?」と初歩的な部分に躓いてようやく理解しました。
こういったささいな躓きで理解していくことが、プログラマーにとっては大事なことなんだと思います。
ではまた!
コメント
この記事へのトラックバックはありません。
この記事へのコメントはありません。