エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


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を学ぶ際にはオブジェクト指向を学ぼう」という記事も書いていますので、参考になれば、と思います。

 - PHP・Smarty・ECCUBE

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Comment

  1. okey より:

    アロー演算子といえば、CakePHPのModelにアクセスするのに、やたら登場していたような。

okey へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

サーバ移転、PHPバージョンアップでPHPのソースコードが表示される・ショートタグのPHPが動かない

PHPでショートタグを使うのは危険。サーバ移転やバージョンアップで動かなくなる!ソースが丸見え、設定情報流出のリスクが!php.iniのshort_open_tagの設定を再確認。

PHPで APIにアクセスする際などに使用する cURLのサンプルプログラム
PHPで APIにアクセスする際などに使用する cURLのサンプルプログラム

PHPのcURLを使用して各種APIにアクセスするサンプルプログラムを作成し、その処理を解説。カオナビAPIのみならず、他の多くのAPIにアクセスする際にも使用できる。

PHPで月末から1ヶ月後「+1 month」を算出すると想定する日付にならない場合がある
PHPで月末から1ヶ月後「+1 month」を算出すると想定する日付にならない場合がある

PHPでは月末の1ヶ月後が想定した日付にならない場合がある。原因はバグではなくPHPの1ヶ月後の定義によるもの。なので必要とする日付を定義しそれに合わせてDateTime、modifyを使用して算出方法を解説している。

PHPで正規表現の検証には preg_match_allが便利

PHPで正規表現の検証には preg_match_allが便利です。その便利さの使い方の解説です。

PHPパーミッション変更のchmod関数・モードを変数で指定する方法

パーミッション変更関数であるchmod関数の第二引数、ファイルモードの指定に変数を使う場合は8進数に変換するoctdec関数を使って変換します。

複数銘柄を指定して株価チャートを一覧するツール公開

入力銘柄の5日間、3か月間、6か月間、1年間、2年間の株価チャートを一覧表示しますのでチャートで売買判断をするのに最適です。

PHPのデバッグで使う print_r、var_dump、var_exportの動作の違い
PHPのデバッグで使う print_r、var_dump、var_exportの動作の違い

PHPのデバッグ等で変数や配列の中身を確認するために使用する関数print_r、var_dump、var_exportの動作の違い、仕様の違いについて確認した。var_exportがオススメ。

Phpmailerでスパム回避!Gmail等のSMTPを経由するPHPのメールフォーム解説

お問い合わせ等のメールフォームから送ったメールがスパム扱いされる!その対策としてライブラリ「Phpmailer」を使う方法を解説。関数化していますのでコピペでOK。

PHPで特定の日間の日付を for、strtotimeで表示する

ある特定の間の日付の情報を for文、strtotimeを使って作成し、その解説をしています。

ECCUBEを開発環境から本番ドメインに変更でエラーが・パス変更について

レンタルサーバでサーバ会社から割り当てられたURLで開発し、本番公開時にドメインを当てたらエラーが!そんな場合の対処方法の解説。対処方法は簡単ですが管理画面からは対応不可。