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