Submit Search
PHPの今とこれから2015
15 likes
30,386 views
Rui Hirokawa
PHP 7.0の新機能を中心としたPHPの今とこれからについて解説します。
Software
Read more
1 of 26
Download now
Downloaded 16 times
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
More Related Content
What's hot
(20)
PDF
いまどきのPHP開発現場 -2015年秋-
Masashi Shinbara
PDF
PHP5.6からPHP7.0への移行
Yasuo Ohgaki
PDF
Phpでアプリケーションサーバー
k-motoyan
PDF
Php非同期の技法
Shogo Kawahara
PDF
PHPerに覚えて欲しい日本語の重要性
Rina Fukuda
PDF
RFC: "var" Deprecation
y-uti
PDF
anyenv + phpenv + php-build が便利すぎる件
y-uti
PDF
PHP7の内部実装から学ぶ性能改善テクニック
Yoshio Hanawa
KEY
php-timecopを実戦投入してみた
Yoshio Hanawa
PDF
恋に落ちるデプロイツール
totty jp
PDF
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
Junichi Ishida
PPTX
Behat Driven Development
Ryo Tomidokoro
PDF
PHP7で変わること ——言語仕様とエンジンの改善ポイント
Yoshio Hanawa
PDF
PHP7の拡張モジュール事情
Yoshio Hanawa
PDF
Cake php + php unitによる実践的ユニットテスト
慶信 若松
PDF
PHP7はなぜ速いのか
Yoshio Hanawa
PDF
Laravel5.1 Release
Yuuki Takezawa
PDF
PHP カンファレンス福岡 参加報告
y-uti
PDF
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
Hisateru Tanaka
PPTX
今日から始めるLaravel
Masaru Matsuo
いまどきのPHP開発現場 -2015年秋-
Masashi Shinbara
PHP5.6からPHP7.0への移行
Yasuo Ohgaki
Phpでアプリケーションサーバー
k-motoyan
Php非同期の技法
Shogo Kawahara
PHPerに覚えて欲しい日本語の重要性
Rina Fukuda
RFC: "var" Deprecation
y-uti
anyenv + phpenv + php-build が便利すぎる件
y-uti
PHP7の内部実装から学ぶ性能改善テクニック
Yoshio Hanawa
php-timecopを実戦投入してみた
Yoshio Hanawa
恋に落ちるデプロイツール
totty jp
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
Junichi Ishida
Behat Driven Development
Ryo Tomidokoro
PHP7で変わること ——言語仕様とエンジンの改善ポイント
Yoshio Hanawa
PHP7の拡張モジュール事情
Yoshio Hanawa
Cake php + php unitによる実践的ユニットテスト
慶信 若松
PHP7はなぜ速いのか
Yoshio Hanawa
Laravel5.1 Release
Yuuki Takezawa
PHP カンファレンス福岡 参加報告
y-uti
PhpStormを使おう --高槻からは快速急行が早くなります #jbugj
Hisateru Tanaka
今日から始めるLaravel
Masaru Matsuo
Viewers also liked
(13)
PPTX
Phpcon2015
Hiroshi Tokumaru
PDF
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
ichikaway
PDF
ハードウェアこわい(字幕版) - HTML5オールスターズ
Wakasa Masao
PDF
オフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like database
yoshikawa_t
PDF
CordovaでSNSアプリ作ってみた
yusukixs
PPTX
『例えば、PHPを避ける』以降PHPはどれだけ安全になったか
Hiroshi Tokumaru
PDF
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
sasezaki
PDF
みんなそろそろ707やめようぜ (;´Д`)
Yasutaka Hamada
PDF
営業・運用を支える "気付ける" 管理画面
Masao Maeda
PPTX
知ってるようで意外と知らないPHPの便利関数
Wataru Terada
PDF
PHP の GC の話
y-uti
PDF
PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。
sasezaki
PPTX
PHPとシグナル、その裏側
do_aki
Phpcon2015
Hiroshi Tokumaru
脆弱性もバグ、だからテストしよう PHPカンファンレス2015
ichikaway
ハードウェアこわい(字幕版) - HTML5オールスターズ
Wakasa Masao
オフラインWebアプリの再到来で今、再び注目されるAPIの本命 ーJavaScript SQL-like database
yoshikawa_t
CordovaでSNSアプリ作ってみた
yusukixs
『例えば、PHPを避ける』以降PHPはどれだけ安全になったか
Hiroshi Tokumaru
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
sasezaki
みんなそろそろ707やめようぜ (;´Д`)
Yasutaka Hamada
営業・運用を支える "気付ける" 管理画面
Masao Maeda
知ってるようで意外と知らないPHPの便利関数
Wataru Terada
PHP の GC の話
y-uti
PHP、おまえだったのか。 いつもHTTPメッセージを 運んでくれたのは。
sasezaki
PHPとシグナル、その裏側
do_aki
Ad
Similar to PHPの今とこれから2015
(20)
PDF
PHPの今とこれから2016
Rui Hirokawa
PDF
PHPの今とこれから2014
Rui Hirokawa
PDF
PHPの今とこれから2017
Rui Hirokawa
PDF
PHPの今とこれから2019
Rui Hirokawa
PDF
PHPの今とこれから2018
Rui Hirokawa
PDF
PHPの今とこれから2020
Rui Hirokawa
PDF
PHPの今とこれから2025 (PHP Conference Japan 2025)
Rui Hirokawa
PDF
PHPの今とこれから2023
Rui Hirokawa
PDF
PHPの今とこれから2022
Rui Hirokawa
PDF
PHPの今とこれから2024 at PHP Conference Japan 2024
Rui Hirokawa
PDF
Phpのはなし
Serverworks Co.,Ltd.
PDF
先取り!PHP 7 と WordPress
Masashi Shinbara
PDF
PHPの今とこれから 2013
Rui Hirokawa
PDF
PHP Now and then 2018 : WordPress Special Edition
Rui Hirokawa
PDF
PHPの今とこれから2021
Rui Hirokawa
PDF
PHPの今とこれから2009
Rui Hirokawa
PDF
PHPの今と未来を語る
Rui Hirokawa
PPTX
PHP基礎勉強会
Yuji Otani
PDF
PHP Now and Then 2012 at PHP Conference 2012, Tokyo Japan (in japanese)
Rui Hirokawa
PPTX
Php入門
dcubeio
PHPの今とこれから2016
Rui Hirokawa
PHPの今とこれから2014
Rui Hirokawa
PHPの今とこれから2017
Rui Hirokawa
PHPの今とこれから2019
Rui Hirokawa
PHPの今とこれから2018
Rui Hirokawa
PHPの今とこれから2020
Rui Hirokawa
PHPの今とこれから2025 (PHP Conference Japan 2025)
Rui Hirokawa
PHPの今とこれから2023
Rui Hirokawa
PHPの今とこれから2022
Rui Hirokawa
PHPの今とこれから2024 at PHP Conference Japan 2024
Rui Hirokawa
Phpのはなし
Serverworks Co.,Ltd.
先取り!PHP 7 と WordPress
Masashi Shinbara
PHPの今とこれから 2013
Rui Hirokawa
PHP Now and then 2018 : WordPress Special Edition
Rui Hirokawa
PHPの今とこれから2021
Rui Hirokawa
PHPの今とこれから2009
Rui Hirokawa
PHPの今と未来を語る
Rui Hirokawa
PHP基礎勉強会
Yuji Otani
PHP Now and Then 2012 at PHP Conference 2012, Tokyo Japan (in japanese)
Rui Hirokawa
Php入門
dcubeio
Ad
More from Rui Hirokawa
(12)
PDF
日本PHPユーザ会の紹介
Rui Hirokawa
PDF
PHPの中の人によるパネルディスカッション
Rui Hirokawa
PDF
PHPの今とこれから2008
Rui Hirokawa
PDF
PHPの今とこれから2007
Rui Hirokawa
PDF
PHPの今とこれから2006
Rui Hirokawa
PDF
PHPの今と未来を語る
Rui Hirokawa
PDF
php.netの歩き方
Rui Hirokawa
PDF
PHP4の今 ~日本語対応と最近のトピックス~
Rui Hirokawa
PDF
PHP 5.5ネーティブキャッシュの話
Rui Hirokawa
PDF
最新PHP事情 (2000年7月22日,PHPカンファレンス)
Rui Hirokawa
PDF
スクリプト言語PHP攻略法
Rui Hirokawa
PPT
PHP, Now and Then 2011
Rui Hirokawa
日本PHPユーザ会の紹介
Rui Hirokawa
PHPの中の人によるパネルディスカッション
Rui Hirokawa
PHPの今とこれから2008
Rui Hirokawa
PHPの今とこれから2007
Rui Hirokawa
PHPの今とこれから2006
Rui Hirokawa
PHPの今と未来を語る
Rui Hirokawa
php.netの歩き方
Rui Hirokawa
PHP4の今 ~日本語対応と最近のトピックス~
Rui Hirokawa
PHP 5.5ネーティブキャッシュの話
Rui Hirokawa
最新PHP事情 (2000年7月22日,PHPカンファレンス)
Rui Hirokawa
スクリプト言語PHP攻略法
Rui Hirokawa
PHP, Now and Then 2011
Rui Hirokawa
PHPの今とこれから2015
1.
PHPの今とこれから2015 PHP Conference 2015,
Tokyo October 3, 2015 廣川 類 (日本PHPユーザ会) 1
2.
2
3.
PHPとは? PHPは主にWebアプリケーションに使用されるスクリプト言語 1995年の誕生以来、Webと共に成長、進化 81.3% 16.5% 3.0% 1.6% 0.7% サーバサイドプログラミング言語 PHP ASP.NET Java static
files ColdFusion 引用: W3Techs.com, 2015/9/22 58.7% 6.7% 5.0% 2.9% 2.8% CMSシェア WordPress Joomla Drupal Magento Blogger 3
4.
PHP アンケート 2015
主に使っているPHPのバージョン 1) PHP <=5.3 2) PHP 5.4 3) PHP 5.5 4) PHP 5.6 5) PHP 7.0 6) 使ってない 4
5.
PHPバージョン分布 引用: W3Techs.com, 2015/9/22 3.0% 12.0% 31.3%38.1% 14.6% 1.0% 5.6 5.5 5.4 5.3 5.2 5.1 (48.4%) (22.3%) (23.1%)
5.2 、5.3 10%減、5.5大幅増(3倍) EOLとなったPHP 5.4以前のユーザ: 84% 5 (3.7%) (0.1%)
6.
・名前空間 ・クロージャ ・遅延静的束縛 ・GC改善 ・MySQLnd PHPの歩み 5.3 `09/6 7.0 5.4 ・Traits ・高速化 ・MB標準化 ・組込みWebサーバ ・レガシー機能削除 `12/3 6.0 `10/3 キャンセル ・Unicode 5.5 ・ジェネレータ ・キャッシュ ・パスワードハッシュ `13/6 5.6 ・デバッガ ・定数スカラー式 `14/8 6 `15/11/12 ・大幅高速化 ・戻り値型宣言 ・スカラー型宣言 PHP
5.0 ‘04/7
7.
PHPリリースサイクル 7 2012 2013 2014
2015 2016 2017 2018 5.3 5.4 5.5 5.6 アクティブサポート セキュリティ修正のみ 2015/10 リリースサイクル:1年 ライフサイクル:3年(バグ修正:2年、セキュリティ修正のみ:1年) EOL 2015/9/14 EOL 2016/7/10 EOL 2017/8/28 https://wiki.php.net/rfc/releaseprocess http://php.net/supported-versions.php
8.
PHPリリース情報 Release 5.4 5.5
5.6 変更 2014/10/16 5.4.34 5.5.18 5.6.2 CVE-2014-3670, 3668 ,3669 2014/11/13 5.4.35 5.5.19 5.6.3 CVE-2014-3710 2014/12/18 5.4.36 5.5.20 5.6.4 CVE-2014-8142 2015/1/22 5.4.37 5.5.21 5.6.5 CVE-2015-0231,0232, CVE-2014-9427,9652 2015/2/19 5.4.38 5.5.22 5.6.6 CVE-2015-0235,0273,2301, CVE-2014-9705 2015/3/19 5.4.39 5.5.23 5.6.7 CVE-2015-2787,2348,2305,4147,4148,2331 2015/4/16 5.4.40 5.5.24 5.6.8 CVE-2015-3330 2015/5/14 5.4.41 5.5.25 5.6.9 CVE-2015-4025,4026,2325,2326,4021 2015/6/11 5.4.42 5.5.26 5.6.10 CVE-2015-3414,3415,3416,4642,4644 2015/7/9 5.4.43 5.5.27 5.6.11 CVE-2015-3152,5589,5590 2015/8/6 5.4.44 5.5.28 5.6.12 CVE-2015-6831,6832,6833 2015/9/3 5.4.45 5.5.29 5.6.13 CVE-2015-6834,6835,6836,6837,6838 2015/10/1 5.5.30 5.6.14 8 escapeshellarg() OSコマンドインジェクション
9.
PHP 7.0 改善/変更のポイント
大幅高速化 致命的エラーを例外捕捉可能に 古いSAPI、エクステンションの削除 ヌル合体演算子 (??) 結合比較演算子 ( <=> ) 戻り値型宣言 スカラー型宣言 匿名クラス 9
10.
より速く、快適に Athlon II X4
640 3.0GHz, Ubuntu 14.04 10 0 0.5 1 1.5 2 2.5 3 3.5 4 PHP 5.4 PHP 5.5 PHP 5.6 PHP 7.0 HHVM 3.9 実行時間[s] Zend/bench.php strcat(200000) sieve(30) nestedloop(12) matrix(20) heapsort(20000) hash2(500) hash1(50000) fibo(30) ary3(2000) ary2(50000) ary(50000) ackermann(7) mandel2 mandel simpleudcall simpleucall simplecall simple PHP 7はPHP 5.6よりも大幅高速化 変数コンテナ等、内部構造を大幅最適化し、メモリを削減
11.
より速く、快適に Athlon II X4
640 3.0GHz, Ubuntu 14.04 11 0 2 4 6 8 10 12 14 16 PHP 5.4 PHP 5.5 PHP 5.6 PHP 7.0 HHVM 3.9 実行時間[s] Zend/micro_bench.php $x = $f ? $f : tmp $x = $f ? $f : $a $x = $f ?: tmp $x = $a ?: null $x = $str[0] $x = $hash['v'] $x = $GLOBALS['v'] $x = $_GET $x = TEST new Foo() $x = Foo::TEST $this->f() empty($this->x) isset($this->x) $this->x-- $this->x++ --$this->x ++$this->x $this->x += 2 $this->x = 0 $x = $this->x Foo::f() self::f() empty(Foo::$x) isset(Foo::$x) Foo::$x = 0 $x = Foo::$x empty(self::$x) isset(self::$x) self::$x = 0 $x = self::$x int_func() undef_func() func() empty_loop
12.
WordPress 4.4 ベンチマーク Athlon
II X4 640 3.0GHz, Ubuntu 14.04 12 0 0.5 1 1.5 2 2.5 PHP 5.6 PHP 7.0 HHVM 3.9 PHP 7はPHP 5.6よりも約2倍高速 HHVM 3.9は更に約10%高速 リクエスト/秒の比(PHP 5.6: 1)
13.
スカラー型宣言と戻り型宣言 スカラー型宣言と戻り型宣言のサポート デフォルト動作は従来と同じ(non
strictモード) Strictモードにすると型チェックが有効になる 13 RFC: https://wiki.php.net/rfc/scalar_type_hints_v5 <?php function add($a, $b) { return $a+$b; } echo add(“2“,”3”); // 5 <?php function add(int $a, int $b) : int { return $a+$b; } echo add(“2“,”3”); PHP 5.6 PHP 7 declare(strict_types = 1); // エラー
14.
致命的エラーを例外捕捉可能に PHP 5では致命的エラー(回復可能な致命的エラー)の 例外処理が困難だった。 function
foo($obj) { $obj->nope(); } 14 try { foo(null); } catch (¥Error $e) { var_dump($e); // 回復処理 } echo “alive!”; // alive! RFC: https://wiki.php.net/rfc/engine_exceptions_for_php7 foo(null); PHP 5.6 PHP 7 致命的エラー
15.
PHP7: ’<=>’ 演算子
結合比較演算子:スペースシップ演算子 function order_func($a, $b) { return ($a < $b) ? -1 : (($a > $b) ? 1 : 0); } 15 function order_func($a, $b) { return $a <=> $b; } https://wiki.php.net/rfc/combined-comparison-operator PHP 5.6 PHP 7
16.
PHP7: パーサ関連の変更 Abstract
Syntax Tree (AST) :パーサとコンパイラを分離 コード管理が容易→ 最適化、メモリ削減 変数構文の統一 16 $obj->$bar [‘foo’] RFC: https://wiki.php.net/rfc/abstract_syntax_tree $obj->{$bar [‘foo’]} {$obj->$bar} [‘foo’] PHP 5.6 PHP 7 RFC: https://wiki.php.net/rfc/uniform_variable_syntax
17.
PHP 7:互換性に関する変更 エクステンション削除:
ereg, mysql, mssql SAPI削除: 22種類→7種類 apache2handler, cgi, cli, embed, fpm, litespeed, phpdbg ASP(<% .. %>)、Script(<script launguage=“php”></script>)廃止 newオブジェクトの参照代入廃止 PHP4形式のコンストラクタ: E_DEPRECATED エクステンションは要変更: http://gophp7.org/gophp7-ext/ 17 class C {} $c =& new C; class C { function C() {} } $c = new C();
18.
HHVM/Hackの進化 LTSリリース: 3.3,
3.6 3.8 で更に高速化: PHP7よりも平均10~20%高速 非同期クエリ(MySQL)による高速化を模索 18 From http://hhvm.com/blog
19.
PHPのこれから PHP 7.1開発が開始される。 PCO (PHP
Cryptography Objects) JIT ? 19
20.
PHPの未来 php frameworks applications / plugins pecl users Hack/HHVMリリースの持つ意味
PHP7は劇的に進化した、そしてこれからも… 高性能かつ現実的な解を継続的に提供する zend hni 20 hhvm hack phalcon Zephir
21.
PHPユーザ相互の情報交換および コミュニティの健全な発展 設立趣旨 • 高性能Webミドルウエアへのニーズ増大 • オープンソースソフトウエアの発展 背景 国内PHPユーザの増加 活動内容 ドキュメント整備 セミナー/イベント メンバー/スタッフ 国際化 http://www.php.gr.jp/ Web ・PHPユーザ会員と思ったらメンバー ・運営するのも楽しいかも 日本PHPユーザ会 (2000年4月発足) php-users,
php-dev, php-doc, phpug-admin メーリングリスト 21
22.
22 PHP Conference 2015
の見どころ
23.
PHPカンファレンス紹介 Twitterアカウント:@phpcon
, ハッシュタグ:#phpcon2015 Facebookページ:pcon.japan PHP Conference 2015関連情報 http://phpcon.php.gr.jp/2015 23
24.
24 PHPカンファレンス2015を お楽しみください!
25.
HHVM Facebookが開発/公開するPHP/Hack実行環境 2010/2
HipHop for PHP:C++トランスレータ、互換性、管理 2011/12 HipHop Virtual Machine(HHVM):JITベースVM リソース低減化(>66%)と速度改善(>5x), WP (2.5x) FastCGI+Webサーバで実行 PHPスクリプト バイトコード パース/コンパイル Zend VM 実行 PHP/Hackスクリプト HipHopバイトコード(HHBC) パース/コンパイル(AST) JITコンパイラ(最適化) ネーティブコード HHVM 実行(x86-64,ARM64) 25 hhvm.com
26.
Hack PHPを拡張したHHVM用の言語: 2014/2公開
目的:大規模開発における開発効率化 関数、クラスの型アノテーション:型チェッカ PHPからの移行は容易:移行ツール、gradual typing HHVMにおける最適化にも寄与 型拡張:generics,collections,nullable 非同期プログラミング:async,await 26 hacklang.org
Download