SlideShare una empresa de Scribd logo
1 de 23
Descargar para leer sin conexión
PHP7.0のはなし
運用2課 さいとう
目次
• 自己紹介
• PHPとは
• PHP5.6からPHP7で変わったこと
• 比較
• まとめ
自己紹介
• 齋藤 裕樹
• 運用2課
• 職業:SE 兼 ハンター
• 趣味(明日から):モンスターを狩ること
本題
PHPとは
• 動的にHTMLデータを生成することによって、動的な
ウェブページを実現することを主な目的としたプロ
グラミング言語、およびその言語処理系である。

一般的には PHP と省略して用いられており、これは
「個人的なホームページ」を意味する英語の
"Personal Home Page" に由来する(Wikipediaより)
PHPとは
• Webアプリケーションに強くて便利なやつ
PHP7.0触ったことある人?
PHP7.0とは
• 10年ぶりぐらいのメジャーアップデートらしい
• PHP6はだいぶ昔になくなりました
• 2015年6月11日 α1 リリース
• 2015年12月3日 正式リリース
PHP5.6→PHP7.0
• 速度改善
• 新機能
• スカラー型宣言
• 戻り値の型宣言
• Null 合体演算子
• define() で配列の定数を定義できる
• 無名クラス
• 新しいグローバル定数
• 新しい関数
• 関数の変更
• 非推奨だった機能の削除
PHP5.6→PHP7.0
• 速度改善
• 新機能
• スカラー型宣言
• 戻り値の型宣言
• Null 合体演算子
• define() で配列の定数を定義できる
• 無名クラス
• 新しいグローバル定数
• 新しい関数
• 関数の変更
• 非推奨だった機能の削除
速度改善
WordPressで比較
• PHP5.6 と PHP7.0RC8
• AmazonLinux
• t1.micro
• Apache Benchで測定
結果
PHP5.6 PHP7.0
Requests per second 3.68/sec 29.64/sec
Time per request 257.491ms 32.688ms
8倍ぐらい速い!!
スカラー型宣言
型宣言とは
• 関数の呼び出し時にパラメータの型を宣言できる
• 5.6までクラスのインスタンスや配列は宣言可能
• スカラー型?
• int
• float
• string
• bool
スカラー型宣言
• 引数の型にスカラー型を宣言できる
スカラー型宣言
• 宣言した場合の結果
• int(9)
• 2 + 3 + 4
• fload型がint型にキャストされる
• 宣言しない場合の結果
• float(9.1)
• 2 + 3 + 4.1
スカラー型宣言
• 厳密に判断するstrictモード
スカラー型宣言
• ONにした場合はTypeErrorが発生
• 自動キャストはしてくれない
• いい加減だった型の扱いが多少改善
おまけ
Ruby,Pythonと比較
• PHP、Ruby、Pythonで実行速度を比較してみた
• 1からnの和を求める関数を作り

nを1から10,000まで増やしながら

その関数を呼び出し結果を配列にいれる処理
Ruby,Pythonと比較
PHP7.0RC8
PHP5.6.14
Ruby2.0.0
Python2.7.10
1.00秒 2.00秒 3.00秒 4.00秒 5.00秒
4.977
4.909
3.408
1.624
まとめ
• 速いぞ7.0
• 実際のWebアプリの速さに比例するかというと……
• 5.6→7.0にしたアプリはエラーだらけで泣ける

Más contenido relacionado

La actualidad más candente

Phjosh(仮)プロジェクト
Phjosh(仮)プロジェクトPhjosh(仮)プロジェクト
Phjosh(仮)プロジェクト
Moriyoshi Koizumi
 
Performance DBFlute on ClubDB2 Xmas2013
Performance DBFlute on ClubDB2 Xmas2013Performance DBFlute on ClubDB2 Xmas2013
Performance DBFlute on ClubDB2 Xmas2013
Masahiko Kubo
 
eZ publish勉強会2013年7月「実装ケーススタディ」
eZ publish勉強会2013年7月「実装ケーススタディ」eZ publish勉強会2013年7月「実装ケーススタディ」
eZ publish勉強会2013年7月「実装ケーススタディ」
ericsagnes
 

La actualidad más candente (20)

JSON:APIについてざっくり入門
JSON:APIについてざっくり入門JSON:APIについてざっくり入門
JSON:APIについてざっくり入門
 
あと一つプログラミング言語を
覚えたら死ぬ! 脳みそがパンクしそうな
あなたのための
nodeJSことはじめ
あと一つプログラミング言語を
覚えたら死ぬ! 脳みそがパンクしそうな
あなたのための
nodeJSことはじめあと一つプログラミング言語を
覚えたら死ぬ! 脳みそがパンクしそうな
あなたのための
nodeJSことはじめ
あと一つプログラミング言語を
覚えたら死ぬ! 脳みそがパンクしそうな
あなたのための
nodeJSことはじめ
 
PHPマニュアルの育て方
PHPマニュアルの育て方PHPマニュアルの育て方
PHPマニュアルの育て方
 
ActiveRecord::Enumのススメ
ActiveRecord::EnumのススメActiveRecord::Enumのススメ
ActiveRecord::Enumのススメ
 
DrupalにおけるJSON:APIの注意点
DrupalにおけるJSON:APIの注意点DrupalにおけるJSON:APIの注意点
DrupalにおけるJSON:APIの注意点
 
RESTful Web アプリの設計レビューの話
RESTful Web アプリの設計レビューの話RESTful Web アプリの設計レビューの話
RESTful Web アプリの設計レビューの話
 
Phjosh(仮)プロジェクト
Phjosh(仮)プロジェクトPhjosh(仮)プロジェクト
Phjosh(仮)プロジェクト
 
PHPカンファレンス2013 今ドキのPHPの書き方 ~PHP逆引きレシピ改訂版~
PHPカンファレンス2013 今ドキのPHPの書き方 ~PHP逆引きレシピ改訂版~PHPカンファレンス2013 今ドキのPHPの書き方 ~PHP逆引きレシピ改訂版~
PHPカンファレンス2013 今ドキのPHPの書き方 ~PHP逆引きレシピ改訂版~
 
WordPress on Movable Type
WordPress on Movable TypeWordPress on Movable Type
WordPress on Movable Type
 
Performance DBFlute on ClubDB2 Xmas2013
Performance DBFlute on ClubDB2 Xmas2013Performance DBFlute on ClubDB2 Xmas2013
Performance DBFlute on ClubDB2 Xmas2013
 
JJUG Bizreach DBFlute 2014
JJUG Bizreach DBFlute 2014JJUG Bizreach DBFlute 2014
JJUG Bizreach DBFlute 2014
 
Bot framework概要
Bot framework概要Bot framework概要
Bot framework概要
 
いいパブッ!! はじめてのEPUB 3
いいパブッ!! はじめてのEPUB 3いいパブッ!! はじめてのEPUB 3
いいパブッ!! はじめてのEPUB 3
 
Lt資料 php7.0 張田浩明
Lt資料 php7.0 張田浩明Lt資料 php7.0 張田浩明
Lt資料 php7.0 張田浩明
 
Heroku meetup#11(フル)
Heroku meetup#11(フル)Heroku meetup#11(フル)
Heroku meetup#11(フル)
 
eZ publish勉強会2013年7月「実装ケーススタディ」
eZ publish勉強会2013年7月「実装ケーススタディ」eZ publish勉強会2013年7月「実装ケーススタディ」
eZ publish勉強会2013年7月「実装ケーススタディ」
 
書籍解説 “What is EPUB 3?” & “Accessible EPUB 3”
書籍解説 “What is EPUB 3?” & “Accessible EPUB 3”書籍解説 “What is EPUB 3?” & “Accessible EPUB 3”
書籍解説 “What is EPUB 3?” & “Accessible EPUB 3”
 
DBFlute Intro
DBFlute IntroDBFlute Intro
DBFlute Intro
 
リレーショナルデータベースとの上手な付き合い方
リレーショナルデータベースとの上手な付き合い方リレーショナルデータベースとの上手な付き合い方
リレーショナルデータベースとの上手な付き合い方
 
bottleで始めるWEBアプリの最初の一歩
bottleで始めるWEBアプリの最初の一歩bottleで始めるWEBアプリの最初の一歩
bottleで始めるWEBアプリの最初の一歩
 

Similar a Phpのはなし

LT: 今日帰ってすぐに始められるPython #nds45
LT: 今日帰ってすぐに始められるPython #nds45LT: 今日帰ってすぐに始められるPython #nds45
LT: 今日帰ってすぐに始められるPython #nds45
civic Sasaki
 
【祝9周年】第79回 PHP勉強会プレゼン資料:PHP向けフレームワークの「Risoluto」について
【祝9周年】第79回 PHP勉強会プレゼン資料:PHP向けフレームワークの「Risoluto」について【祝9周年】第79回 PHP勉強会プレゼン資料:PHP向けフレームワークの「Risoluto」について
【祝9周年】第79回 PHP勉強会プレゼン資料:PHP向けフレームワークの「Risoluto」について
Yuta Hayakawa
 

Similar a Phpのはなし (20)

Lt資料 php7.0 張田浩明
Lt資料 php7.0 張田浩明Lt資料 php7.0 張田浩明
Lt資料 php7.0 張田浩明
 
第1回勉強会
第1回勉強会第1回勉強会
第1回勉強会
 
PHPプログラミングのIPv6対応の実際
PHPプログラミングのIPv6対応の実際PHPプログラミングのIPv6対応の実際
PHPプログラミングのIPv6対応の実際
 
Yii Framework 2.0 いま求められるRAD標準とは #phpkansai
Yii Framework 2.0 いま求められるRAD標準とは #phpkansaiYii Framework 2.0 いま求められるRAD標準とは #phpkansai
Yii Framework 2.0 いま求められるRAD標準とは #phpkansai
 
PHP7で変わること ——言語仕様とエンジンの改善ポイント
PHP7で変わること ——言語仕様とエンジンの改善ポイントPHP7で変わること ——言語仕様とエンジンの改善ポイント
PHP7で変わること ——言語仕様とエンジンの改善ポイント
 
PHP7はなぜ速いのか
PHP7はなぜ速いのかPHP7はなぜ速いのか
PHP7はなぜ速いのか
 
PHP7の拡張モジュール事情
PHP7の拡張モジュール事情PHP7の拡張モジュール事情
PHP7の拡張モジュール事情
 
PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9
PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9
PHPerのための(不遇に負けない)Selenium入門 @ FuelPHP&CodeIgniter ユーザの集い #9
 
スクリプト言語PHP攻略法
スクリプト言語PHP攻略法スクリプト言語PHP攻略法
スクリプト言語PHP攻略法
 
LT: 今日帰ってすぐに始められるPython #nds45
LT: 今日帰ってすぐに始められるPython #nds45LT: 今日帰ってすぐに始められるPython #nds45
LT: 今日帰ってすぐに始められるPython #nds45
 
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
 
PHPの今とこれから2006
PHPの今とこれから2006PHPの今とこれから2006
PHPの今とこれから2006
 
php-buildがいかに便利かを力説する
php-buildがいかに便利かを力説するphp-buildがいかに便利かを力説する
php-buildがいかに便利かを力説する
 
Webの勉強会#5
Webの勉強会#5Webの勉強会#5
Webの勉強会#5
 
【祝9周年】第79回 PHP勉強会プレゼン資料:PHP向けフレームワークの「Risoluto」について
【祝9周年】第79回 PHP勉強会プレゼン資料:PHP向けフレームワークの「Risoluto」について【祝9周年】第79回 PHP勉強会プレゼン資料:PHP向けフレームワークの「Risoluto」について
【祝9周年】第79回 PHP勉強会プレゼン資料:PHP向けフレームワークの「Risoluto」について
 
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
 
PHPNGの動向
PHPNGの動向PHPNGの動向
PHPNGの動向
 
Phpでアプリケーションサーバー
PhpでアプリケーションサーバーPhpでアプリケーションサーバー
Phpでアプリケーションサーバー
 
Php7 on Docker on tekitoh-memdhoi.info
Php7 on Docker on tekitoh-memdhoi.infoPhp7 on Docker on tekitoh-memdhoi.info
Php7 on Docker on tekitoh-memdhoi.info
 
ownCloudについて
ownCloudについてownCloudについて
ownCloudについて
 

Más de Serverworks Co.,Ltd.

Más de Serverworks Co.,Ltd. (20)

会社概要_株式会社サーバーワークス
会社概要_株式会社サーバーワークス会社概要_株式会社サーバーワークス
会社概要_株式会社サーバーワークス
 
AWS re:Invent 2021 コスト削減に役立つアップデートまとめ
AWS re:Invent 2021 コスト削減に役立つアップデートまとめAWS re:Invent 2021 コスト削減に役立つアップデートまとめ
AWS re:Invent 2021 コスト削減に役立つアップデートまとめ
 
nyumon_hearts
nyumon_heartsnyumon_hearts
nyumon_hearts
 
AWS Organizations
AWS OrganizationsAWS Organizations
AWS Organizations
 
【ANGEL Dojo】"人と会う"をもっとずっと、かんたんに。Ossu!
【ANGEL Dojo】"人と会う"をもっとずっと、かんたんに。Ossu!【ANGEL Dojo】"人と会う"をもっとずっと、かんたんに。Ossu!
【ANGEL Dojo】"人と会う"をもっとずっと、かんたんに。Ossu!
 
なぜ今AWSが選ばれているのか? クラウドが求められている本当の理由
なぜ今AWSが選ばれているのか?クラウドが求められている本当の理由なぜ今AWSが選ばれているのか?クラウドが求められている本当の理由
なぜ今AWSが選ばれているのか? クラウドが求められている本当の理由
 
20190124 waf
20190124 waf20190124 waf
20190124 waf
 
お菓子ノベルティとの1年越しの戦い、そして今
お菓子ノベルティとの1年越しの戦い、そして今お菓子ノベルティとの1年越しの戦い、そして今
お菓子ノベルティとの1年越しの戦い、そして今
 
機械学習を始める前の「学習」
機械学習を始める前の「学習」機械学習を始める前の「学習」
機械学習を始める前の「学習」
 
クラウドインテグレーターのお仕事
クラウドインテグレーターのお仕事クラウドインテグレーターのお仕事
クラウドインテグレーターのお仕事
 
いまさら、AWSのネットワーク設計
いまさら、AWSのネットワーク設計いまさら、AWSのネットワーク設計
いまさら、AWSのネットワーク設計
 
2018年8月 Just Skill研修資料
2018年8月 Just Skill研修資料2018年8月 Just Skill研修資料
2018年8月 Just Skill研修資料
 
キータイプハック 〜意外と身近なEmacsキーバインド〜
キータイプハック 〜意外と身近なEmacsキーバインド〜キータイプハック 〜意外と身近なEmacsキーバインド〜
キータイプハック 〜意外と身近なEmacsキーバインド〜
 
ディスプレイアームのすすめ
ディスプレイアームのすすめディスプレイアームのすすめ
ディスプレイアームのすすめ
 
硬貨の価値
硬貨の価値硬貨の価値
硬貨の価値
 
ちょっと先の未来をいくイケてる営業スタイル
ちょっと先の未来をいくイケてる営業スタイルちょっと先の未来をいくイケてる営業スタイル
ちょっと先の未来をいくイケてる営業スタイル
 
Echo 買いました。
Echo 買いました。Echo 買いました。
Echo 買いました。
 
業務改善の考え方について
業務改善の考え方について業務改善の考え方について
業務改善の考え方について
 
IT知識ゼロ、ゆとり世代、文系出身女子がIT業界に入り感じたこと
IT知識ゼロ、ゆとり世代、文系出身女子がIT業界に入り感じたことIT知識ゼロ、ゆとり世代、文系出身女子がIT業界に入り感じたこと
IT知識ゼロ、ゆとり世代、文系出身女子がIT業界に入り感じたこと
 
競馬の楽しみ方
競馬の楽しみ方競馬の楽しみ方
競馬の楽しみ方
 

Último

Último (7)

Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 

Phpのはなし