Ph per のための php 最適

2,135 views

Published on

第二回 岡山php勉強会

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,135
On SlideShare
0
From Embeds
0
Number of Embeds
524
Actions
Shares
0
Downloads
7
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Ph per のための php 最適

  1. 1. 目次1 自己紹介2 比較3 echo と print4 include と require5 まとめ
  2. 2. 目次1 自己紹介2 比較3 echo と print4 include と require5 まとめ
  3. 3. 1 自己紹介名前• 曽根 壮大(そね たけとも)• 通称名 そーだい年齢等• ぴちぴちの27歳• 娘の名前は徠楽(らいら)と煌楽(きらら)職業• 福山の某印刷会社でWEBの設計から実装まで担当→今月から岡山のWEB系の会社に転職しました!• 備後界隈では最弱• 前々職は国家の犬(最前線で踊ってた)得意分野(IT的な意味で)• LinuxとDBをメインにPHPなどのスクリプト言語とかも少々(LLが好き)• でも一番「べしゃりが得意」趣味• 東日本震災のための格闘ゲームのチャリティ大会の運営とかしてます
  4. 4. 1 自己紹介主にTwitterで活動してます@soudai1025
  5. 5. 1 自己紹介主にTwitterで活動してます@soudai1025 このアイコン要注意
  6. 6. 1 自己紹介主にTwitterで活動してます@soudai1025 このアイコン要注意
  7. 7. 1 自己紹介主にTwitterで活動してます@soudai1025 技術的なことはツイートしてません! このアイコン要注意
  8. 8. 1 自己紹介主にTwitterで活動してます@soudai1025 このアイコン要注意 熱狂的な一部のファンも・・・
  9. 9. 目次1 自己紹介2 比較3 echo と print4 include と require5 まとめ
  10. 10. 2 比較== は曖昧な比較=== は厳格な比較
  11. 11. 2 比較== は曖昧な比較=== は厳格な比較なにが違うの?
  12. 12. 2 比較== は曖昧な比較=== は厳格な比較なにが違うの?→ 型に対する比較が違う!
  13. 13. 2 比較== は曖昧な比較=== は厳格な比較なにが違うの?→ 型に対する比較が違う!
  14. 14. 2 比較他にも・・・
  15. 15. 2 比較他にも・・・
  16. 16. 2 比較==がダメならis_nullを使えばいいじゃない。
  17. 17. 2 比較==がダメならis_nullを使えばいいじゃない。 ↓ ===とis_nullどっちが速いの?
  18. 18. 2 比較==がダメならis_nullを使えばいいじゃない。 ↓ ===とis_nullどっちが速いの? ↓ 試してみた http://ideone.com/
  19. 19. 2 比較
  20. 20. 2 比較=== null is_null
  21. 21. 2 比較=== null is_null ===の方がはやい!!
  22. 22. 2 比較===はこれを意識して使わなきゃダメ! http://php.net/manual/ja/types.comparisons.php から引用
  23. 23. 2 比較===はこれを意識して使わなきゃダメ! http://php.net/manual/ja/types.comparisons.php から引用
  24. 24. 2 比較直感的にわかりやすい関数群 http://php.net/manual/ja/types.comparisons.php から引用
  25. 25. 2 比較直感的にわかりやすい関数群 http://php.net/manual/ja/types.comparisons.php から引用
  26. 26. 目次1 自己紹介2 比較3 echo と print4 include と require5 まとめ
  27. 27. 3 echoとprintechoとprintの違いってなんだろう?
  28. 28. 3 echoとprintechoとprintの違いってなんだろう?1 2つとも関数では無く、言語構造
  29. 29. 3 echoとprintechoとprintの違いってなんだろう?1 2つとも関数では無く、言語構造2 echoは「,」で文字列を区切って出力できる
  30. 30. 3 echoとprintechoとprintの違いってなんだろう?1 2つとも関数では無く、言語構造2 echoは「,」で文字列を区切って出力できる3 printは結果を返すが、echoは返さない。
  31. 31. 3 echoとprintechoとprintの違いってなんだろう?1 2つとも関数では無く、言語構造2 echoは「,」で文字列を区切って出力できる3 printは結果を返すが、echoは返さない。
  32. 32. 3 echoとprintソースを見てみる
  33. 33. 3 echoとprintソースを見てみる ↓ソースコードはこちら http://jp.php.net/downloads.php
  34. 34. 3 echoとprintソースを見てみる ↓ソースコードはこちら http://jp.php.net/downloads.php ↓Zend/zend_compile.cprint ・・・ zend_do_print()echo ・・・ zend_do_echo()
  35. 35. 3 echoとprintprint ・・・ zend_do_print()zend_do_print()ではresultに返り値を必要としており,result変数に返り値が設定されている
  36. 36. 3 echoとprintprint ・・・ zend_do_print()zend_do_print()ではresultに返り値を必要としており,result変数に返り値が設定されている ↓だからechoの方が速い!(返り値がないから
  37. 37. 目次1 自己紹介2 比較3 echo と print4 include と require5 まとめ
  38. 38. 4 include と require1 ループ処理での利用 ・includeは可能 ・requireは不可能
  39. 39. 4 include と require1 ループ処理での利用 ・includeは可能 ・requireは不可能2 エラー処理 ・includeは続行 ・requireは不可能
  40. 40. 4 include と require1 ループ処理での利用 ・includeは可能 ・requireは不可能2 エラー処理 ・includeは続行 ・requireは不可能3 実行速度 require_once > require > include_once > include
  41. 41. 4 include と require1 ループ処理での利用 ・includeは可能 ・requireは不可能2 エラー処理 ・includeは続行 ・requireは不可能3 実行速度 require_once > require > include_once > include ↑この順番は本当か?
  42. 42. 4 include と require…色々実験した結果1 単純なファイルの呼び出しでは大差なし
  43. 43. 4 include と require…色々実験した結果1 単純なファイルの呼び出しでは大差なし (むしろOS側の影響が大きい)
  44. 44. 4 include と require…色々実験した結果1 単純なファイルの呼び出しでは大差なし (むしろOS側の影響が大きい)2 処理としては
  45. 45. 4 include と require…色々実験した結果1 単純なファイルの呼び出しでは大差なし (むしろOS側の影響が大きい)2 処理としては require_once = 読み込み + 一意チェック + エラーチェック require = 読み込み + エラーチェック Include_once = 読み込み + 一意チェック include = 読み込み
  46. 46. 4 include と require…色々実験した結果1 単純なファイルの呼び出しでは大差なし (むしろOS側の影響が大きい)2 処理としては require_once = 読み込み + 一意チェック + エラーチェック require = 読み込み + エラーチェック Include_once = 読み込み + 一意チェック include = 読み込み3 実際には それ以外にも多くの影響を受けている
  47. 47. 目次1 自己紹介2 比較3 echo と print4 include と require5 まとめ
  48. 48. 5 まとめ1 実行速度に対する最適化
  49. 49. 5 まとめ1 実行速度に対する最適化・ 「php 最適化」で一度はぐぐってみる
  50. 50. 5 まとめ1 実行速度に対する最適化・ 「php 最適化」で一度はぐぐってみる・ 最適化はインフラを含めた広い視野で検討する
  51. 51. 5 まとめ1 実行速度に対する最適化・ 「php 最適化」で一度はぐぐってみる・ 最適化はインフラを含めた広い視野で検討する2 人間に対する最適化
  52. 52. 5 まとめ1 実行速度に対する最適化・ 「php 最適化」で一度はぐぐってみる・ 最適化はインフラを含めた広い視野で検討する2 人間に対する最適化・ 速ければ良いというものではない
  53. 53. 5 まとめ1 実行速度に対する最適化・ 「php 最適化」で一度はぐぐってみる・ 最適化はインフラを含めた広い視野で検討する2 人間に対する最適化・ 速ければ良いというものではない・ 良いソースを追求する
  54. 54. 5 まとめ1 実行速度に対する最適化・ 「php 最適化」で一度はぐぐってみる・ 最適化はインフラを含めた広い視野で検討する2 人間に対する最適化・ 速ければ良いというものではない・ 良いソースを追求する←工数と要相談
  55. 55. 5 まとめ1 実行速度に対する最適化・ 「php 最適化」で一度はぐぐってみる・ 最適化はインフラを含めた広い視野で検討する2 人間に対する最適化・ 速ければ良いというものではない・ 良いソースを追求する←工数と要相談3 phpの内部処理を知る
  56. 56. 5 まとめ1 実行速度に対する最適化・ 「php 最適化」で一度はぐぐってみる・ 最適化はインフラを含めた広い視野で検討する2 人間に対する最適化・ 速ければ良いというものではない・ 良いソースを追求する←工数と要相談3 phpの内部処理を知る・ ネットの情報を検証する癖付け
  57. 57. 5 まとめ1 実行速度に対する最適化・ 「php 最適化」で一度はぐぐってみる・ 最適化はインフラを含めた広い視野で検討する2 人間に対する最適化・ 速ければ良いというものではない・ 良いソースを追求する←工数と要相談3 phpの内部処理を知る・ ネットの情報を検証する癖付け・ phpのできることを知る
  58. 58. ご清聴、有難う御座いました誹謗中傷ツッコミは #たけとも残念まで@soudai1025の作品が読めるのはTwitterだけ!

×