SlideShare uma empresa Scribd logo
1 de 59
Baixar para ler offline
目次
1   自己紹介
2   比較
3   echo と print
4   include と require
5   まとめ
目次
1   自己紹介
2   比較
3   echo と print
4   include と require
5   まとめ
1 自己紹介
名前

• 曽根 壮大(そね たけとも)
• 通称名 そーだい


年齢等

• ぴちぴちの27歳
• 娘の名前は徠楽(らいら)と煌楽(きらら)


職業

• 福山の某印刷会社でWEBの設計から実装まで担当→今月から岡山のWEB系の会社に転職しました!
• 備後界隈では最弱
• 前々職は国家の犬(最前線で踊ってた)

得意分野(IT的な意味で)

• LinuxとDBをメインにPHPなどのスクリプト言語とかも少々(LLが好き)
• でも一番「べしゃりが得意」


趣味

• 東日本震災のための格闘ゲームのチャリティ大会の運営とかしてます
1 自己紹介
主にTwitterで活動してます

@soudai1025
1 自己紹介
主にTwitterで活動してます

@soudai1025


   このアイコン要注意
1 自己紹介
主にTwitterで活動してます

@soudai1025


   このアイコン要注意
1 自己紹介
主にTwitterで活動してます

@soudai1025
      技術的なことはツイートしてません!

  このアイコン要注意
1 自己紹介
主にTwitterで活動してます

@soudai1025


   このアイコン要注意




                熱狂的な一部のファンも・・・
目次
1   自己紹介
2   比較
3   echo と print
4   include と require
5   まとめ
2 比較
== は曖昧な比較
=== は厳格な比較
2 比較
== は曖昧な比較
=== は厳格な比較

なにが違うの?
2 比較
== は曖昧な比較
=== は厳格な比較

なにが違うの?→ 型に対する比較が違う!
2 比較
== は曖昧な比較
=== は厳格な比較

なにが違うの?→ 型に対する比較が違う!
2 比較
他にも・・・
2 比較
他にも・・・
2 比較
==がダメならis_nullを使えばいいじゃない。
2 比較
==がダメならis_nullを使えばいいじゃない。
                ↓
     ===とis_nullどっちが速いの?
2 比較
==がダメならis_nullを使えばいいじゃない。
                  ↓
     ===とis_nullどっちが速いの?
                  ↓
            試してみた
         http://ideone.com/
2 比較
2 比較
=== null    is_null
2 比較
=== null    is_null



 ===の方がはやい!!
2 比較
===はこれを意識して使わなきゃダメ!
       http://php.net/manual/ja/types.comparisons.php から引用
2 比較
===はこれを意識して使わなきゃダメ!
       http://php.net/manual/ja/types.comparisons.php から引用
2 比較
直感的にわかりやすい関数群
      http://php.net/manual/ja/types.comparisons.php から引用
2 比較
直感的にわかりやすい関数群
      http://php.net/manual/ja/types.comparisons.php から引用
目次
1   自己紹介
2   比較
3   echo と print
4   include と require
5   まとめ
3 echoとprint
echoとprintの違いってなんだろう?
3 echoとprint
echoとprintの違いってなんだろう?

1 2つとも関数では無く、言語構造
3 echoとprint
echoとprintの違いってなんだろう?

1 2つとも関数では無く、言語構造

2 echoは「,」で文字列を区切って出力できる
3 echoとprint
echoとprintの違いってなんだろう?

1 2つとも関数では無く、言語構造

2 echoは「,」で文字列を区切って出力できる

3 printは結果を返すが、echoは返さない。
3 echoとprint
echoとprintの違いってなんだろう?

1 2つとも関数では無く、言語構造

2 echoは「,」で文字列を区切って出力できる

3 printは結果を返すが、echoは返さない。
3 echoとprint
ソースを見てみる
3 echoとprint
ソースを見てみる
   ↓
ソースコードはこちら   http://jp.php.net/downloads.php
3 echoとprint
ソースを見てみる
      ↓
ソースコードはこちら http://jp.php.net/downloads.php
      ↓
Zend/zend_compile.c
print ・・・ zend_do_print()
echo ・・・ zend_do_echo()
3 echoとprint
print ・・・ zend_do_print()

zend_do_print()ではresultに返り値を必要として
おり,result変数に返り値が設定されている
3 echoとprint
print ・・・ zend_do_print()

zend_do_print()ではresultに返り値を必要として
おり,result変数に返り値が設定されている
                 ↓
だからechoの方が速い!(返り値がないから
目次
1   自己紹介
2   比較
3   echo と print
4   include と require
5   まとめ
4 include と require
1 ループ処理での利用
  ・includeは可能
  ・requireは不可能
4 include と require
1 ループ処理での利用
  ・includeは可能
  ・requireは不可能
2 エラー処理
  ・includeは続行
  ・requireは不可能
4 include と require
1 ループ処理での利用
  ・includeは可能
  ・requireは不可能
2 エラー処理
  ・includeは続行
  ・requireは不可能
3 実行速度
  require_once > require > include_once > include
4 include と require
1 ループ処理での利用
  ・includeは可能
  ・requireは不可能
2 エラー処理
  ・includeは続行
  ・requireは不可能
3 実行速度
  require_once > require > include_once > include
  ↑この順番は本当か?
4 include と require
…色々実験した結果
1 単純なファイルの呼び出しでは大差なし
4 include と require
…色々実験した結果
1 単純なファイルの呼び出しでは大差なし
  (むしろOS側の影響が大きい)
4 include と require
…色々実験した結果
1 単純なファイルの呼び出しでは大差なし
  (むしろOS側の影響が大きい)
2 処理としては
4 include と require
…色々実験した結果
1 単純なファイルの呼び出しでは大差なし
  (むしろOS側の影響が大きい)
2 処理としては
 require_once = 読み込み + 一意チェック + エラーチェック
 require      = 読み込み + エラーチェック
 Include_once = 読み込み + 一意チェック
 include      = 読み込み
4 include と require
…色々実験した結果
1 単純なファイルの呼び出しでは大差なし
  (むしろOS側の影響が大きい)
2 処理としては
 require_once = 読み込み + 一意チェック + エラーチェック
 require      = 読み込み + エラーチェック
 Include_once = 読み込み + 一意チェック
 include      = 読み込み
3 実際には
  それ以外にも多くの影響を受けている
目次
1   自己紹介
2   比較
3   echo と print
4   include と require
5   まとめ
5 まとめ
1 実行速度に対する最適化
5 まとめ
1 実行速度に対する最適化
・ 「php 最適化」で一度はぐぐってみる
5 まとめ
1 実行速度に対する最適化
・ 「php 最適化」で一度はぐぐってみる
・ 最適化はインフラを含めた広い視野で検討する
5 まとめ
1   実行速度に対する最適化
・   「php 最適化」で一度はぐぐってみる
・   最適化はインフラを含めた広い視野で検討する
2   人間に対する最適化
5 まとめ
1   実行速度に対する最適化
・   「php 最適化」で一度はぐぐってみる
・   最適化はインフラを含めた広い視野で検討する
2   人間に対する最適化
・   速ければ良いというものではない
5 まとめ
1   実行速度に対する最適化
・   「php 最適化」で一度はぐぐってみる
・   最適化はインフラを含めた広い視野で検討する
2   人間に対する最適化
・   速ければ良いというものではない
・   良いソースを追求する
5 まとめ
1   実行速度に対する最適化
・   「php 最適化」で一度はぐぐってみる
・   最適化はインフラを含めた広い視野で検討する
2   人間に対する最適化
・   速ければ良いというものではない
・   良いソースを追求する←工数と要相談
5 まとめ
1   実行速度に対する最適化
・   「php 最適化」で一度はぐぐってみる
・   最適化はインフラを含めた広い視野で検討する
2   人間に対する最適化
・   速ければ良いというものではない
・   良いソースを追求する←工数と要相談
3   phpの内部処理を知る
5 まとめ
1   実行速度に対する最適化
・   「php 最適化」で一度はぐぐってみる
・   最適化はインフラを含めた広い視野で検討する
2   人間に対する最適化
・   速ければ良いというものではない
・   良いソースを追求する←工数と要相談
3   phpの内部処理を知る
・   ネットの情報を検証する癖付け
5 まとめ
1   実行速度に対する最適化
・   「php 最適化」で一度はぐぐってみる
・   最適化はインフラを含めた広い視野で検討する
2   人間に対する最適化
・   速ければ良いというものではない
・   良いソースを追求する←工数と要相談
3   phpの内部処理を知る
・   ネットの情報を検証する癖付け
・   phpのできることを知る
ご清聴、有難う御座いました

誹謗中傷ツッコミは #たけとも残念まで
@soudai1025の作品が読めるのはTwitterだけ!

Mais conteúdo relacionado

Semelhante a Ph per のための php 最適

PHPCON_TOKYO_2022_Bigginer.pptx
PHPCON_TOKYO_2022_Bigginer.pptxPHPCON_TOKYO_2022_Bigginer.pptx
PHPCON_TOKYO_2022_Bigginer.pptxHideo Kashioka
 
知って得する標準関数の使い方
知って得する標準関数の使い方知って得する標準関数の使い方
知って得する標準関数の使い方Soudai Sone
 
PHPアプリの品質を(ある程度)保つために出来る事 〜組織編〜
PHPアプリの品質を(ある程度)保つために出来る事 〜組織編〜PHPアプリの品質を(ある程度)保つために出来る事 〜組織編〜
PHPアプリの品質を(ある程度)保つために出来る事 〜組織編〜Katsuhiro Miura
 
Start!! Ruby
Start!! RubyStart!! Ruby
Start!! Rubymitim
 
WordPress中級者への道!テンプレートタグはどう動くのか!?
WordPress中級者への道!テンプレートタグはどう動くのか!?WordPress中級者への道!テンプレートタグはどう動くのか!?
WordPress中級者への道!テンプレートタグはどう動くのか!?Shinichi Nishikawa
 
簡単便利!Laravel Homestead
簡単便利!Laravel Homestead簡単便利!Laravel Homestead
簡単便利!Laravel HomesteadShota Inoue
 
PHPとJavaScriptの噺
PHPとJavaScriptの噺PHPとJavaScriptの噺
PHPとJavaScriptの噺Shogo Kawahara
 
クソザコ鳥頭が非順序連想コンテナに入門してみた
クソザコ鳥頭が非順序連想コンテナに入門してみたクソザコ鳥頭が非順序連想コンテナに入門してみた
クソザコ鳥頭が非順序連想コンテナに入門してみたMitsuru Kariya
 
International php conference 2016 参加レポート
International php conference  2016 参加レポートInternational php conference  2016 参加レポート
International php conference 2016 参加レポートRyosuke Miyahara
 
シェフから板前になった話
シェフから板前になった話シェフから板前になった話
シェフから板前になった話oshiro_seiya
 
Rpn and forth 超入門
Rpn and forth 超入門Rpn and forth 超入門
Rpn and forth 超入門Yoshitaka Seo
 
2011 icse-reverse engineering feature models
2011 icse-reverse engineering feature models2011 icse-reverse engineering feature models
2011 icse-reverse engineering feature modelsn-yuki
 
アプリ開発を効率化する 方法あれこれ
アプリ開発を効率化する 方法あれこれアプリ開発を効率化する 方法あれこれ
アプリ開発を効率化する 方法あれこれAtsushi Mizoue
 
DevOpsのアプローチと クラウド/バーチャル環境/構成管理ツール のお話
DevOpsのアプローチと クラウド/バーチャル環境/構成管理ツール のお話DevOpsのアプローチと クラウド/バーチャル環境/構成管理ツール のお話
DevOpsのアプローチと クラウド/バーチャル環境/構成管理ツール のお話Yukihiko SAWANOBORI
 
PHPでセキュリティを真面目に考える
PHPでセキュリティを真面目に考えるPHPでセキュリティを真面目に考える
PHPでセキュリティを真面目に考えるTakuya Sato
 

Semelhante a Ph per のための php 最適 (20)

PHP with Visual Studio
PHP with Visual StudioPHP with Visual Studio
PHP with Visual Studio
 
PHPCON_TOKYO_2022_Bigginer.pptx
PHPCON_TOKYO_2022_Bigginer.pptxPHPCON_TOKYO_2022_Bigginer.pptx
PHPCON_TOKYO_2022_Bigginer.pptx
 
知って得する標準関数の使い方
知って得する標準関数の使い方知って得する標準関数の使い方
知って得する標準関数の使い方
 
PHPアプリの品質を(ある程度)保つために出来る事 〜組織編〜
PHPアプリの品質を(ある程度)保つために出来る事 〜組織編〜PHPアプリの品質を(ある程度)保つために出来る事 〜組織編〜
PHPアプリの品質を(ある程度)保つために出来る事 〜組織編〜
 
Start!! Ruby
Start!! RubyStart!! Ruby
Start!! Ruby
 
WordPress中級者への道!テンプレートタグはどう動くのか!?
WordPress中級者への道!テンプレートタグはどう動くのか!?WordPress中級者への道!テンプレートタグはどう動くのか!?
WordPress中級者への道!テンプレートタグはどう動くのか!?
 
Osc2014
Osc2014Osc2014
Osc2014
 
PHP版レガシーコード改善に役立つ新パターン #wewlc_jp
PHP版レガシーコード改善に役立つ新パターン #wewlc_jp PHP版レガシーコード改善に役立つ新パターン #wewlc_jp
PHP版レガシーコード改善に役立つ新パターン #wewlc_jp
 
対訳コーパスから生成したワードグラフによる部分的機械翻訳
対訳コーパスから生成したワードグラフによる部分的機械翻訳対訳コーパスから生成したワードグラフによる部分的機械翻訳
対訳コーパスから生成したワードグラフによる部分的機械翻訳
 
簡単便利!Laravel Homestead
簡単便利!Laravel Homestead簡単便利!Laravel Homestead
簡単便利!Laravel Homestead
 
PHPとJavaScriptの噺
PHPとJavaScriptの噺PHPとJavaScriptの噺
PHPとJavaScriptの噺
 
クソザコ鳥頭が非順序連想コンテナに入門してみた
クソザコ鳥頭が非順序連想コンテナに入門してみたクソザコ鳥頭が非順序連想コンテナに入門してみた
クソザコ鳥頭が非順序連想コンテナに入門してみた
 
International php conference 2016 参加レポート
International php conference  2016 参加レポートInternational php conference  2016 参加レポート
International php conference 2016 参加レポート
 
シェフから板前になった話
シェフから板前になった話シェフから板前になった話
シェフから板前になった話
 
Rpn and forth 超入門
Rpn and forth 超入門Rpn and forth 超入門
Rpn and forth 超入門
 
Chef
ChefChef
Chef
 
2011 icse-reverse engineering feature models
2011 icse-reverse engineering feature models2011 icse-reverse engineering feature models
2011 icse-reverse engineering feature models
 
アプリ開発を効率化する 方法あれこれ
アプリ開発を効率化する 方法あれこれアプリ開発を効率化する 方法あれこれ
アプリ開発を効率化する 方法あれこれ
 
DevOpsのアプローチと クラウド/バーチャル環境/構成管理ツール のお話
DevOpsのアプローチと クラウド/バーチャル環境/構成管理ツール のお話DevOpsのアプローチと クラウド/バーチャル環境/構成管理ツール のお話
DevOpsのアプローチと クラウド/バーチャル環境/構成管理ツール のお話
 
PHPでセキュリティを真面目に考える
PHPでセキュリティを真面目に考えるPHPでセキュリティを真面目に考える
PHPでセキュリティを真面目に考える
 

Mais de Soudai Sone

DBの闇を書くにはこの余白は狭すぎる
DBの闇を書くにはこの余白は狭すぎるDBの闇を書くにはこの余白は狭すぎる
DBの闇を書くにはこの余白は狭すぎるSoudai Sone
 
レガシーな環境からモダンへの挑戦
レガシーな環境からモダンへの挑戦レガシーな環境からモダンへの挑戦
レガシーな環境からモダンへの挑戦Soudai Sone
 
PostgreSQLとpython
PostgreSQLとpythonPostgreSQLとpython
PostgreSQLとpythonSoudai Sone
 
PostgreSQLアンチパターン
PostgreSQLアンチパターンPostgreSQLアンチパターン
PostgreSQLアンチパターンSoudai Sone
 
地方エンジニアがPostgreSQLを通じて成長した話
地方エンジニアがPostgreSQLを通じて成長した話地方エンジニアがPostgreSQLを通じて成長した話
地方エンジニアがPostgreSQLを通じて成長した話Soudai Sone
 
知って得するWebで便利なpostgre sqlの3つの機能
知って得するWebで便利なpostgre sqlの3つの機能知って得するWebで便利なpostgre sqlの3つの機能
知って得するWebで便利なpostgre sqlの3つの機能Soudai Sone
 
DDDハンズオン
DDDハンズオンDDDハンズオン
DDDハンズオンSoudai Sone
 
実務で役立つデータベースの活用法
実務で役立つデータベースの活用法実務で役立つデータベースの活用法
実務で役立つデータベースの活用法Soudai Sone
 
今すぐ使えるクラウドとPostgreSQL
今すぐ使えるクラウドとPostgreSQL今すぐ使えるクラウドとPostgreSQL
今すぐ使えるクラウドとPostgreSQLSoudai Sone
 
Postgre sqlから見るnosql
Postgre sqlから見るnosqlPostgre sqlから見るnosql
Postgre sqlから見るnosqlSoudai Sone
 
Webで役立つRDBの使い方
Webで役立つRDBの使い方Webで役立つRDBの使い方
Webで役立つRDBの使い方Soudai Sone
 
中国地方Db勉強会
中国地方Db勉強会中国地方Db勉強会
中国地方Db勉強会Soudai Sone
 
Ansibleで始めるpostgre sqlの冗長化
Ansibleで始めるpostgre sqlの冗長化Ansibleで始めるpostgre sqlの冗長化
Ansibleで始めるpostgre sqlの冗長化Soudai Sone
 
Web エンジニアが postgre sql を選ぶ 3 つの理由
Web エンジニアが postgre sql を選ぶ 3 つの理由Web エンジニアが postgre sql を選ぶ 3 つの理由
Web エンジニアが postgre sql を選ぶ 3 つの理由Soudai Sone
 
Web で変わったクラウドと postgre sql の今と昔
Web で変わったクラウドと postgre sql の今と昔Web で変わったクラウドと postgre sql の今と昔
Web で変わったクラウドと postgre sql の今と昔Soudai Sone
 
すぐ始めれるクラウド
すぐ始めれるクラウドすぐ始めれるクラウド
すぐ始めれるクラウドSoudai Sone
 
PostgreSQLの冗長化について
PostgreSQLの冗長化についてPostgreSQLの冗長化について
PostgreSQLの冗長化についてSoudai Sone
 
Postgre sql9.3新機能 (OSC hiroshima 2013)
Postgre sql9.3新機能 (OSC hiroshima 2013)Postgre sql9.3新機能 (OSC hiroshima 2013)
Postgre sql9.3新機能 (OSC hiroshima 2013)Soudai Sone
 
聞いたら参加したくなるJjug cccの報告
聞いたら参加したくなるJjug cccの報告聞いたら参加したくなるJjug cccの報告
聞いたら参加したくなるJjug cccの報告Soudai Sone
 

Mais de Soudai Sone (20)

DBの闇を書くにはこの余白は狭すぎる
DBの闇を書くにはこの余白は狭すぎるDBの闇を書くにはこの余白は狭すぎる
DBの闇を書くにはこの余白は狭すぎる
 
レガシーな環境からモダンへの挑戦
レガシーな環境からモダンへの挑戦レガシーな環境からモダンへの挑戦
レガシーな環境からモダンへの挑戦
 
PostgreSQLとpython
PostgreSQLとpythonPostgreSQLとpython
PostgreSQLとpython
 
PostgreSQLアンチパターン
PostgreSQLアンチパターンPostgreSQLアンチパターン
PostgreSQLアンチパターン
 
地方エンジニアがPostgreSQLを通じて成長した話
地方エンジニアがPostgreSQLを通じて成長した話地方エンジニアがPostgreSQLを通じて成長した話
地方エンジニアがPostgreSQLを通じて成長した話
 
知って得するWebで便利なpostgre sqlの3つの機能
知って得するWebで便利なpostgre sqlの3つの機能知って得するWebで便利なpostgre sqlの3つの機能
知って得するWebで便利なpostgre sqlの3つの機能
 
DDDハンズオン
DDDハンズオンDDDハンズオン
DDDハンズオン
 
実務で役立つデータベースの活用法
実務で役立つデータベースの活用法実務で役立つデータベースの活用法
実務で役立つデータベースの活用法
 
今すぐ使えるクラウドとPostgreSQL
今すぐ使えるクラウドとPostgreSQL今すぐ使えるクラウドとPostgreSQL
今すぐ使えるクラウドとPostgreSQL
 
Postgre sqlから見るnosql
Postgre sqlから見るnosqlPostgre sqlから見るnosql
Postgre sqlから見るnosql
 
Webで役立つRDBの使い方
Webで役立つRDBの使い方Webで役立つRDBの使い方
Webで役立つRDBの使い方
 
中国地方Db勉強会
中国地方Db勉強会中国地方Db勉強会
中国地方Db勉強会
 
Ansibleで始めるpostgre sqlの冗長化
Ansibleで始めるpostgre sqlの冗長化Ansibleで始めるpostgre sqlの冗長化
Ansibleで始めるpostgre sqlの冗長化
 
Web エンジニアが postgre sql を選ぶ 3 つの理由
Web エンジニアが postgre sql を選ぶ 3 つの理由Web エンジニアが postgre sql を選ぶ 3 つの理由
Web エンジニアが postgre sql を選ぶ 3 つの理由
 
Web で変わったクラウドと postgre sql の今と昔
Web で変わったクラウドと postgre sql の今と昔Web で変わったクラウドと postgre sql の今と昔
Web で変わったクラウドと postgre sql の今と昔
 
すぐ始めれるクラウド
すぐ始めれるクラウドすぐ始めれるクラウド
すぐ始めれるクラウド
 
PostgreSQLの冗長化について
PostgreSQLの冗長化についてPostgreSQLの冗長化について
PostgreSQLの冗長化について
 
Osh2014
Osh2014Osh2014
Osh2014
 
Postgre sql9.3新機能 (OSC hiroshima 2013)
Postgre sql9.3新機能 (OSC hiroshima 2013)Postgre sql9.3新機能 (OSC hiroshima 2013)
Postgre sql9.3新機能 (OSC hiroshima 2013)
 
聞いたら参加したくなるJjug cccの報告
聞いたら参加したくなるJjug cccの報告聞いたら参加したくなるJjug cccの報告
聞いたら参加したくなるJjug cccの報告
 

Ph per のための php 最適