PHPのソースで見慣れない記号が出てきた・アロー演算子(->)、ダブルアロー演算子(=>)
2017/08/03
PHPのソースで見慣れない記号を調べる
アロー演算子、ダブルアロー、ビット演算子、可変変数
先日書いた PHPのオブジェクト指向についての記事「CakePHPを学ぶ際にはオブジェクト指向を学ぼう」ですが、あの記事を書きつつ思い出したサイトがありました。
アロー演算子
http://911.ddtea.com/?eid=1286712
PHPのソースに見慣れない記号が出てきたときの調べ方例
http://blog.neo.jp/dnblog/index.php?module=Blog&action=Entry&blog=pg&entry=2792&rand=561d3
PHP初心者が「何コレ!?」と思った記号4つ
http://korikorikorikori.blog.fc2.com/blog-entry-163.html
そうなのです。
「->」「=>」「::」これらの記号は、オブジェクト指向プログラミングをする際に必要となってくる記号なのです。
そのため、上記のサイトを読めばなんとなく何をする記号なのかは理解できていましたが、根本的な解決には至っていませんでした。
なぜなら、オブジェクト指向プログラミングに関する知識が足りないからです。
例えば、アロー演算子(->)。
これですが、参考サイトの一番上に書いてあるサイトは、アロー演算子の説明としては非常に秀逸な説明だと思いました。
その他のサイトは、公式サイトの説明をほぼ踏襲する形で書かれているため、何を意味しているのかさっぱり分かりませんでしたが、このサイトは、少しわかった気にさせてくれました。
それでもなお、漠然とした理解しかできないのは、オブジェクトに対する基本知識が不足しているからだ、ということにようやく気付きました。
Webサイトで簡単なプログラムを構築するだけであれば、オブジェクト指向の考え方は必ずしも必要はないものですが、PHPのプログラム記述もオブジェクト指向を重用する動きが顕著ですし、オープンソース等で提供されているプログラムのほとんどはオブジェクト指向プログラミングで記述されています。
そのため、本格的に PHPを使っていく方は、改めて、オブジェクトに関する理解を深めていくことが、PHPの理解を深めていくことにつながっていくでしょう。
ちなみに、「$$」は、可変変数というそうです。
http://www.php.net/manual/ja/language.variables.variable.php
でも、これまた公式サイトの説明は読んでも分かりません(笑)。
なので、下記のサイトなんかが少しは分かりやすく説明されていますので参考になるかと。
http://speit.blog78.fc2.com/blog-entry-56.html
http://www.kokin.rr-livelife.net/php/php_post/php_post_35.html
http://www.polidog.jp/2012/11/27/%E4%BB%8A%E3%81%BE%E3%81%A7%E6%B0%97%E3%81%A5%E3%81%8B%E3%81%AA%E3%81%8B%E3%81%A3%E3%81%9Fphp%E3%81%AE%E5%8F%AF%E5%A4%89%E5%A4%89%E6%95%B0/
実は、一番下のサイトの 1の書き方に似た書き方はよくしていたような気がしますね。
この可変変数の処理をしっかり理解したらもっと短いコードで書けそうな気がしますね。
PHPユーザのためのオブジェクト指向講座
と、いうわけで、自分だけでプログラムを作成し、利用するのであれば問題ありませんが、複数人で開発をする、ネットで提供されている情報や GitHubなどで提供されているオープンソースなどを利用してシステム開発を行うに当たっては、PHPと言えどもオブジェクト指向を学ばずに過ごすことはできないレベルになっています。
そんな方のために「CakePHPを学ぶ際にはオブジェクト指向を学ぼう」という記事も書いていますので、参考になれば、と思います。
GoogleAdwords
GoogleAdwords
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
-
ECCUBEの管理画面のSSL設定をインストール後に変更する方法
ECCUBEをインストールした後から管理画面のSSL設定を変更する方法を解説します。config.phpファイルのHTTPS_URLとADMIN_FORCE_SSLの値を変更すればOK。
-
-
リダイレクトループが原因で「ERR_TOO_MANY_REDIRECTS」「このページを表示できません」が出たときの対策12事例+α
リダイレクトループ、自動転送設定ループの原因の解説とその対応方法を含め事例 12例を挙げて説明。
-
-
PHP画面が真っ白 header(“Location: $url”);
PHPの開発で header(“Location: $url”);を使うと画面が真っ白になる不具合が出る場合もあります。
-
-
SEO対策用タイトル、ディスクリプションの文字数カウントツール
SEO対策に使える文字数カウントツールで文字数の条件の説明も行っています。
-
-
PHPで APIにアクセスする際などに使用する cURLのサンプルプログラム
PHPのcURLを使用して各種APIにアクセスするサンプルプログラムを作成し、その処理を解説。カオナビAPIのみならず、他の多くのAPIにアクセスする際にも使用できる。
-
-
Phpmailerでスパム回避!Gmail等のSMTPを経由するPHPのメールフォーム解説
お問い合わせ等のメールフォームから送ったメールがスパム扱いされる!その対策としてライブラリ「Phpmailer」を使う方法を解説。関数化していますのでコピペでOK。
-
-
フォルダを指定してファイルのパーミッションを変更するプログラム
フォームからフォルダ、パーミッションを指定しパーミッションを変更するサンプルプログラムの解説です。
-
-
ECCUBEの問い合わせフォームに任意の値を引数として渡す方法
ECCUBEのお問い合わせフォームに値を固有の情報を送りそれに基づいて処理をする方法を解説。ボタンの設置、受け取り側のテンプレート、プログラムのサンプルソースを提供。
-
-
ECCUBEのポイント設定、ポイント付与率を一括で変更する方法解説
ECCUBEの商品個別に設定してあるポイントを一括で変更する方法を解説。ECCUBEには商品個別のポイントを一括して変更する機能がありません。SQLを作成して一括置換!
-
-
PHPのcURLでAPIやWebサイトへのアクセス方法。file_get_contentsとの比較
PHPからWebサイトにアクセスしてHTMLを取得、APIにアクセスして情報を取得する場合は、cURLがオススメ。file_get_contentsでも可能だがエラー制御に難がありトラブルのもとになる。
Comment
アロー演算子といえば、CakePHPのModelにアクセスするのに、やたら登場していたような。
CakePHPは MVCのオブジェクトで出来ていますからね。