Your SlideShare is downloading. ×
  • Like
  • Save
名前空間.php @Nagoya.php 2013.01.19
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

名前空間.php @Nagoya.php 2013.01.19

  • 860 views
Published

PHP5.3において導入された名前空間について基礎的なことをまとめてみました。 …

PHP5.3において導入された名前空間について基礎的なことをまとめてみました。

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
860
On SlideShare
0
From Embeds
0
Number of Embeds
6

Actions

Shares
Downloads
0
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. 名前空間.php   あさのひとし (@ts_asano) 2013.01.19 @ Nagoya.phphttp://d.hatena.ne.jp/ts_asano
  • 2. 自己紹介株式会社トゥ・ステップ岐阜県大垣市 ソフトピアジャパン今の業務は主にFuelPHPでの      開発とサーバ管理目下の趣味は電子工作
  • 3. 似顔絵アイコンhttp://www.faceyourmanga.com で作成まあまあ似てる(自画自賛)2年くらいまえの髪型です
  • 4. 本題
  • 5. お題PHP5.3で新しく追加された「名前空間(namespace)」について
  • 6. 何がよい?名前空間が分かれていれば、同一名のクラス、関数が存在できるつまり、同一名で違う処理を実装可能
  • 7. 意識したことない?もしそうなら、あなたが書いているクラス、関数は「グローバル空間 (Global space)」に所属PHP5.2までの領域はすべて「グローバル空間」と考えてよい
  • 8. 名前空間のイメージグローバル空間
  • 9. 名前空間のイメージグローバル空間 class ts_asano function get_icon()
  • 10. 名前空間のイメージ普通にクラスを実装したら、グローバル空間次に、「名前空間A」を作って同じクラス名で内容を変えて実装すると…?
  • 11. 名前空間のイメージグローバル空間 class ts_asano function get_icon()
  • 12. 名前空間のイメージグローバル空間 class ts_asano function get_icon() namespace A
  • 13. 名前空間のイメージグローバル空間 class ts_asano function get_icon() namespace A class ts_asano function get_icon()
  • 14. 名前空間のイメージグローバル空間 class ts_asano function get_icon() namespace A class ts_asano function get_icon()
  • 15. 名前空間のイメージ名前空間が違うので同一名で少し違う処理を実装できた次に、「名前空間B」を作って同じクラス名でぜんぜん違う実装をすると…?
  • 16. 名前空間のイメージグローバル空間 class ts_asano function get_icon() namespace A namespace B
  • 17. 名前空間のイメージグローバル空間 class ts_asano function get_icon() namespace A namespace B class ts_asano function get_icon()
  • 18. 名前空間のイメージグローバル空間 class ts_asano function get_icon() namespace A namespace B class ts_asano function get_icon()
  • 19. !?
  • 20. 名前空間のイメージどうみても別人です。本当にありがとうございました。名前は同じ、実装は別モノにできる
  • 21. グローバル空間から呼出グローバル空間から「別人」を呼ぶ $betsujin = new Bts_asano(); $betsujin->get_icon();  もしくは $betsujin = new Bts_asano(); $betsujin->get_icon();後者は「完全修飾名」
  • 22. 名前空間内からグローバルを呼出 「別人」空間から      グローバル空間のクラスを呼ぶ $global = new ts_asano(); $global->get_icon(); 「」だけを使えばOK!
  • 23. よくわからない?素直にフレームワークを使いましょうFuelPHPをおすすめしていますFuelPHPを使っていると、自然と慣れます
  • 24. Thanks a lot!http://php.nethttp://www.faceyourmanga.comhttp://fuelphp.com/