実はワテの場合には、PHPはあまり詳しくない。
サーバーサイドで良く使われるスクリプト言語であると言うのは良く知っているのだが、ワテが使っているVisual Studio 2015 Community ではPHPが標準では装備されていないのだ。
PHP Tools for Visual Studio
と言う拡張機能はあるのだが、それは有料製品。
一ケ月の無料期間中はデバッガーなども利用出来てPHPのデバッグも可能だ。
でも無料期間が過ぎるとデバッガが使えない。
確か年間1万円弱のライセンス料で販売されているのだが、1年でその価格はちょっと高いかなあと言う感じ(ワテの感想です)。
と言う事で、ワテの場合には、滅多にPHPは使わない。
デバッガが利用出来ない状態でプログラム開発をするのはとって効率が悪い。
そう言う場合は仕方ないので、変数の内容を表示しながらデバッグを行う。
PHPの場合なら、変数の中身を表示する関数は以下のものがある。
echo $hensu; // これと print $hensu; // これはよく似ている。 var_dump($hensuArr); // この関数で、配列変数の中身を表示する。 print_r($hensuArr); // これもよく似ているのでどっちでも良いかな。
これら以外にもあるのかな?
ちなみに、
Python Tools for Visual Studio
と言うのもあり、こちらは上記のPHPツールの会社とは無関係でOpenソースで無償公開されいるのでPythonが好きな人にはお勧めだ。
さて、そんなワテであるが、PHPを使う必要が生じた。
WordPressのカスタマイズでPHPを利用する
オープンソースなCMS(Contents Management System)であるWordPressであるが、それがPHPで書かれれいる。
CMSと言うのは、まあワテ流に平たく言えば、WEBサイト上で個人ブログサイトや会社のホームページなどを作成して公開出来るツールだ。
コンテンツと言うのは、容器の中身とか文章の内容などの意味がある。まあ、それはつまりWEBサイトに表示される文章データとか写真などの画像データの総称だな。
WordPressは各種のデータをMySQLデータベースに保管する。設定をうまくやればSQL Serverなどの他のデータベースでも利用できるようだが詳細は未確認。
そんなWordPressをカスタマイズする為にはPHPのプログラミングが必須となる。
JavaScriptを使ってクライアントサイドでのプログラミングのみだと出来る事に限界がある。
例えば何らかの情報をWEBページに埋め込みたい場合には、サーバー側でHTMLデータを準備する段階で埋め込むのが最も簡単だし分かり易い。
それをクライアントサイドのJavaScriptで実行しようとすると、出来なくは無い。
例えば、jQueryを使って以下のようなJavaScriptプログラムをそのページのhtmlファイルに記述すれば可能である。
$(document).ready(function(){ $('body').append('<div>BODYにDIVを埋め込む</div>'); });
例えばこんなふうにすれば、bodyの中に新しいdiv要素を追加出来る。
append()だと末尾に追加されるので、もしbody内の特定の位置に追加したい場合には、’body’ で指定しているセレクターの部分を変更すれば良い。
でも、まあ、こんな事をしなくても事前にサーバーサイドでPHPを使って、divを追加したい場所で、
<?php echo '<div>BODYにDIVを埋め込む</div>'; ?>
とする方が分かり易いしシンプルである事は言うまでも無い。
さて、今日、プログラムを書いていてPHPの変数の中身をJavaScriptの変数で利用したい状況が発生した。
PHPの変数をJavaScriptの変数にセットする
それはどんな状況かと言うと、いろんな状況が考えられるがワテの場合にはPHPでデータベースからデータを読んで来て、利用するプログラムを書いていてそんな状況になった。
まあ、それは皆さんも色んな状況があると思うので、兎に角PHPの変数の値をJavaScriptの変数にセットしてみよう。
サーバーサイドで実行されるPHPファイルの中に以下のような記述をしておけば良い。
<?php $hensuPHP = "このPHP変数の値をJavaScriptの変数にセットしたい。"; ?> <script> var hensuJS = '<?php echo $hensuPHP ;?>'; alert(hensuJS); </script>
このようにしておくと、<script>…</script>の部分もHTMLファイルに埋め込まれるので、その中で定義している変数 hensuJS も無事にJavaScript変数として利用出来る訳だ。
まとめ
まあ、PHPを使っている人にはごく当たり前の手法かも知れないが、PHP初心者のワテにはなかなか便利な手法である。
コメント