SlideShare a Scribd company logo
1 of 41
Download to read offline
PHPプログラミングの
IPv6対応の実際
小山 哲志
(株)ビート・クラフト
koyama@beatcraft.com
1
講演者について
•小山哲志 (こやま てつじ)
•株式会社ビート・クラフト所属
•Webアプリ/サービス開発者
•アジャイルメディアネットワーク広告
配信サーバなど
•日本PHPユーザ会スタッフ
•IW2008プログラム委員
2
セッションの趣旨
•IPv4アドレス枯渇に対するWeb業界のア
クションが遅い
•IPv6にサービスを対応させるにしても、
使っているプログラミング言語はどこま
で大丈夫?
•各言語のサーベイが必要
3
まずお詫び
•Web開発で用いられる4大言語
•Perl
•Python
•Ruby
•PHP
•本来は上記全ての言語のIPv6対応を解説
したい
•PHP以外は講演者が見つからなかった
4
本日の内容
•IPv6対応とはどういうことか?
•PHP本体のIPv6対応
•外部Extension/PEARの対応
•まとめ
5
本日の内容
•IPv6対応とはどういうことか?
•PHP本体のIPv6対応
•外部Extension/PEARの対応
•まとめ
6
IPv4とIPv6の違い
•アドレス長が違う
•IPv4: 32ビット (xxx.xxx.xxx.xxx)
•IPv6: 128ビット
(ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff)
•IPv4と違い、IPv6はインターフェースに
複数のアドレスが付くのが普通
•どのアドレスをsrcにするか?
7
IPv6対応とは?
•IPv4でしか動かないものを、
IPv6のみで動くようにすること
ではなく
IPv4でもIPv6でも、両方で動くようにす
ること。
•プロトコルに依存しないプログラミング
8
OSの対応は完了している
•最新のOSであれば問題なし
•Linux,BSD(MacOS),その他UNIX
•WindowsXP,Vista
•新APIに従ったアプリケーションならば
大丈夫
•PHPもOSから見ればアプリケーション
9
ホスト名→アドレス
•リゾルバ
•/etc/hosts
•DNS
•etc..
10
API変更
•IPv4
•gethostbyname
•gethostbyaddr
•IPv4+IPv6
•getaddrinfo
•getnameinfo
11
何故APIの変更が必要か?
•これまでのアドレス情報(sockaddr)
•IPv4決めうち
•これからのアドレス情報
•複数の情報が返る可能性
•A,AAAA両方設定されているかも
12
本日の内容
•IPv6対応とはどういうことか?
•PHP本体のIPv6対応
•外部Extension/PEARの対応
•まとめ
13
PHPの使われ方
•Apache(やその他のWebサーバの)モ
ジュールとして
•mod_php
•CGIとして
•コマンドラインとして
14
mod_php/CGI
•ネットワーク入出力はhttpdが面倒を見
てくれる
•PHP自体はIPv6対応の必要なし
•アドレス解析部分は除く
•Apacheは問題なくIPv6を扱える
15
httpdに頼れない場合
•PHPで独自にネットワーク接続をする
•他のWebサービスにアクセスする
•メール送受信
•FTP送受信
•etc...
16
PHPのネットワークIO
•streamモデル
•ソケットを直接使わなくても、ネット
ワーク入出力ができる
•ライブラリのほとんどはこれを利用して
いるが、例外あり
17
streamのIPv6対応
•php_network_getaddresses()
•main/network.c
•getaddrinfoを用いて、セオリー通りに
プログラミングしている
•php_stream_xport_create()
•main/streams/transports.c
•問題なし
18
streamはOK
$cont = file_get_contents('http://ipv6.google.com/');
$fp = fsockopen('ipv6.google.com', 80);
$out = "GET / HTTP/1.1rn";
$out .= "Host: ipv6.google.comrn";
$out .= "Connection: Closernrn";
fwrite($fp, $out);
while (!feof($fp)) {
echo fgets($fp, 128);
}
fclose($fp);
19
ext/sockets
•streamではないネットワーク入出力
•socketそのままのAPI
•bind,listen,acceptもある
•一応IPv6対応しているが、AF_INET6を明
示的に指定する必要がある
•IPv6→IPv4フォールバックができない
•要注意!
20
DNS Query
•dns_get_record (PHP関数)
•AAAAも含めて、すべてのレコードが
ちゃんと返ってくる
•ただしBSD(MacOS含む),Windowsでは
実装されていない
•PEAR::Net_DNSを使う
21
gethostbyname
•PHP関数
•同名のC APIの単純なラッパー
•IPv6対応のコードは一応入っている
•でもOSによっては動かない
•Linux,MacOSはだめ
•gethostbyaddrも同様
22
本日の内容
•IPv6対応とはどういうことか?
•PHP本体のIPv6対応
•外部Extension/PEARの対応
•まとめ
23
extension/PEAR
•標準extension
•soap, ftp, xmlrpc
•PECL
•PEAR
•Net_IPv6
•Net_Socket
•Net_POP3
•Net_IMAP
•Net_Server
24
ext/soap
•SOAP
•HTTPでXMLを用いたRPC
•http_connect(): php_http.c
•php_stream_xport_createを使ってい
る
•streamの上で動いているのでOK
25
ext/ftp
•FTP
•ファイル転送プロトコル
•php_network_connect_socket_to_hostを
呼び出している
•その下でphp_network_getaddresses
•問題なし
26
PECL
•独立パッケージのextension
•ネットワーク関連のものはいくつかある
•外部ライブラリのブリッジのみ
•IPv6対応しているかどうかはライブラ
リ次第
27
PEAR::Net_IPv6
•IPv6アドレス解析クラス
•メソッドは3つだけ
•Uncompress
•Compress
•CheckIPv6
28
PEAR::Net_IPv6つづき
require_once 'Net/IPv6.php';
$v6addr = 'fe80::1';
$uc = Net_IPv6::uncompress($v6addr);
echo $uc;
// fe80:0:0:0:0:0:0:1
29
PEAR::Net_Socket
•socketのOO API
•fsockopen/pfsockopenを呼び出している
•つまりstreamを使う
•connect時にIPv4を前提にしたアドレス
チェックを行なっている
•ホスト名が渡されるとgethostbynameで
名前解決する
30
PEAR::Net_Socketつづき
•IPv6なアドレスやAAAAしかないホスト名
が渡されると、この部分は無効になる
•結果的にPHP内部で名前解決される
• OK!
if (!$addr) {
return $this->raiseError('$addr cannot be empty');
} elseif (strspn($addr, '.0123456789') == strlen($addr) ||
strstr($addr, '/') !== false) {
$this->addr = $addr;
} else {
$this->addr = @gethostbyname($addr);
}
31
PEAR::Net_Socketつづき
require_once 'Net/Socket.php';
$sock = new Net_Socket;
$sock->connect('ipv6.google.com', 80);
$out = "GET / HTTP/1.1rn";
$out .= "Host: ipv6.google.comrn";
$out .= "Connection: Closernrn";
$sock->write($out);
while (!$sock->eof()) {
echo $sock->gets(128);
}
$sock->disconnect();
32
PEAR::Net_POP3
•メール取得プロトコルPOP3
•Post Office Protocol version3
•PEAR::Net_Socketを使っている
•OK!
33
PEAR::Net_IMAP
•メール取得プロトコルIMAP
•Internet Message Access Protocol
•PEAR::Net_Socketを使っている
•OK!
34
PEAR::Net_SMTP
•メール転送プロトコルSMTP
•Simple Mail Transfer Protocol
•PEAR::Net_Socketを使っている
•OK!
35
PEAR::HTTP_Request
•HTTP送受信ライブラリ
•PEAR::Net_Socketを使っている
•OK!
36
PEAR::Net_Server
•PHPでサーバを作るクラス
•bindしてlistenするもの
•sockets extensionを利用
•IPv4/IPv6で同時に待ち受けるサーバは作
れない
37
PEAR::Net_DNS
•DNS問い合わせを行なうクラス
•socketはfsockopenを使っている
•AAAAも含めて問い合わせできるが、RR
Typeを指定しなくてはいけない
38
本日の内容
•IPv6対応とはどういうことか?
•PHP本体のIPv6対応
•外部Extension/PEARの対応
•まとめ
39
まとめ
•fsockopen/Net_Socketがベースになって
いるものが多い。
•自動的にIPv6名前解決、接続できる
•IPv6アドレス解析はまだまだ不十分
•マルチキャスト/エニーキャストの考慮
はない
•PHPで必要かどうかも疑問
40
お願い
•まだまだ調査不足を実感しています
•私もIPv6でサービスを運用した経験は
ありません
•とりあえずIPv6触ってみませんか?
•他言語の調査をしてくれる方大募集
41

More Related Content

What's hot

IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜Akira Nakagawa
 
チャットサービス運用の舞台裏
チャットサービス運用の舞台裏チャットサービス運用の舞台裏
チャットサービス運用の舞台裏Hiroaki Nagata
 
545人のインフラを支えたNOCチーム!
545人のインフラを支えたNOCチーム!545人のインフラを支えたNOCチーム!
545人のインフラを支えたNOCチーム!Masayuki Kobayashi
 
DS-LiteをFreeBSDで使う
DS-LiteをFreeBSDで使うDS-LiteをFreeBSDで使う
DS-LiteをFreeBSDで使うSatoshi Togawa
 
グラフデータベース入門
グラフデータベース入門グラフデータベース入門
グラフデータベース入門Masaya Dake
 
NAT超えとはなんぞや
NAT超えとはなんぞやNAT超えとはなんぞや
NAT超えとはなんぞやnemumu
 
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応v6app
 
Geekなぺーじ ネットワーク技術者ではない方々向けIPv6セミナー2
Geekなぺーじ ネットワーク技術者ではない方々向けIPv6セミナー2Geekなぺーじ ネットワーク技術者ではない方々向けIPv6セミナー2
Geekなぺーじ ネットワーク技術者ではない方々向けIPv6セミナー2Kiyotaka Doumae
 
JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話
JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話
JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話Yahoo!デベロッパーネットワーク
 
クラウド版も開発が進む LibreOfficeの最新動向と導入事例の紹介
クラウド版も開発が進む LibreOfficeの最新動向と導入事例の紹介クラウド版も開発が進む LibreOfficeの最新動向と導入事例の紹介
クラウド版も開発が進む LibreOfficeの最新動向と導入事例の紹介Shinji Enoki
 
Real World PHP in pixiv
Real World PHP in pixivReal World PHP in pixiv
Real World PHP in pixivKenta USAMI
 
IPv6技術標準化の最新動向
IPv6技術標準化の最新動向IPv6技術標準化の最新動向
IPv6技術標準化の最新動向Shinsuke SUZUKI
 
たのしい独自フレームワーク
たのしい独自フレームワークたのしい独自フレームワーク
たのしい独自フレームワークKenta USAMI
 
IPv6 application_and_v4kokatsu-tf
IPv6 application_and_v4kokatsu-tfIPv6 application_and_v4kokatsu-tf
IPv6 application_and_v4kokatsu-tfRuri Hiromi
 
COOKPAD tab 勉強会 2014.04.24
COOKPAD tab 勉強会 2014.04.24COOKPAD tab 勉強会 2014.04.24
COOKPAD tab 勉強会 2014.04.24akahira
 
Internet Week 2018 知っておくべきIPv6とセキュリティの話
Internet Week 2018 知っておくべきIPv6とセキュリティの話Internet Week 2018 知っておくべきIPv6とセキュリティの話
Internet Week 2018 知っておくべきIPv6とセキュリティの話Akira Nakagawa
 

What's hot (20)

IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
IPv6 最新動向 〜世界共通語で最適化が進むインターネット〜
 
チャットサービス運用の舞台裏
チャットサービス運用の舞台裏チャットサービス運用の舞台裏
チャットサービス運用の舞台裏
 
545人のインフラを支えたNOCチーム!
545人のインフラを支えたNOCチーム!545人のインフラを支えたNOCチーム!
545人のインフラを支えたNOCチーム!
 
DS-LiteをFreeBSDで使う
DS-LiteをFreeBSDで使うDS-LiteをFreeBSDで使う
DS-LiteをFreeBSDで使う
 
グラフデータベース入門
グラフデータベース入門グラフデータベース入門
グラフデータベース入門
 
Apache Big Data Miami 2017 - Hadoop Source Code Reading #23 #hadoopreading
Apache Big Data Miami 2017 - Hadoop Source Code Reading #23 #hadoopreadingApache Big Data Miami 2017 - Hadoop Source Code Reading #23 #hadoopreading
Apache Big Data Miami 2017 - Hadoop Source Code Reading #23 #hadoopreading
 
Deploy to Lobi
Deploy to LobiDeploy to Lobi
Deploy to Lobi
 
NAT超えとはなんぞや
NAT超えとはなんぞやNAT超えとはなんぞや
NAT超えとはなんぞや
 
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
20150228 OSC2015 Tokyo/Spring サンプルコードで理解するアプリケーションのIPv6対応
 
Geekなぺーじ ネットワーク技術者ではない方々向けIPv6セミナー2
Geekなぺーじ ネットワーク技術者ではない方々向けIPv6セミナー2Geekなぺーじ ネットワーク技術者ではない方々向けIPv6セミナー2
Geekなぺーじ ネットワーク技術者ではない方々向けIPv6セミナー2
 
JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話
JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話
JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話
 
ヤフー発のメッセージキュー「Pulsar」のご紹介
ヤフー発のメッセージキュー「Pulsar」のご紹介ヤフー発のメッセージキュー「Pulsar」のご紹介
ヤフー発のメッセージキュー「Pulsar」のご紹介
 
クラウド版も開発が進む LibreOfficeの最新動向と導入事例の紹介
クラウド版も開発が進む LibreOfficeの最新動向と導入事例の紹介クラウド版も開発が進む LibreOfficeの最新動向と導入事例の紹介
クラウド版も開発が進む LibreOfficeの最新動向と導入事例の紹介
 
Real World PHP in pixiv
Real World PHP in pixivReal World PHP in pixiv
Real World PHP in pixiv
 
Phpのはなし
PhpのはなしPhpのはなし
Phpのはなし
 
IPv6技術標準化の最新動向
IPv6技術標準化の最新動向IPv6技術標準化の最新動向
IPv6技術標準化の最新動向
 
たのしい独自フレームワーク
たのしい独自フレームワークたのしい独自フレームワーク
たのしい独自フレームワーク
 
IPv6 application_and_v4kokatsu-tf
IPv6 application_and_v4kokatsu-tfIPv6 application_and_v4kokatsu-tf
IPv6 application_and_v4kokatsu-tf
 
COOKPAD tab 勉強会 2014.04.24
COOKPAD tab 勉強会 2014.04.24COOKPAD tab 勉強会 2014.04.24
COOKPAD tab 勉強会 2014.04.24
 
Internet Week 2018 知っておくべきIPv6とセキュリティの話
Internet Week 2018 知っておくべきIPv6とセキュリティの話Internet Week 2018 知っておくべきIPv6とセキュリティの話
Internet Week 2018 知っておくべきIPv6とセキュリティの話
 

Similar to PHPプログラミングのIPv6対応の実際

DevOpsを実現する為のChef活用テクニック
DevOpsを実現する為のChef活用テクニックDevOpsを実現する為のChef活用テクニック
DevOpsを実現する為のChef活用テクニックYu Kitazume
 
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のご紹介Hajime Fujimoto
 
IPv6時代のWebアプリケーション&プラットフォーム 2014
IPv6時代のWebアプリケーション&プラットフォーム 2014IPv6時代のWebアプリケーション&プラットフォーム 2014
IPv6時代のWebアプリケーション&プラットフォーム 2014v6app
 
Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)
Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)
Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)v6app
 
PHPでAIプログラミングコンテスト準優勝するまでの軌跡
PHPでAIプログラミングコンテスト準優勝するまでの軌跡PHPでAIプログラミングコンテスト準優勝するまでの軌跡
PHPでAIプログラミングコンテスト準優勝するまでの軌跡Shintaro Kurachi
 
PHPの今とこれから2006
PHPの今とこれから2006PHPの今とこれから2006
PHPの今とこれから2006Rui Hirokawa
 
【OSC2011広島】共有アプリで遊ぼう!(日本Red5ユーザー会)
【OSC2011広島】共有アプリで遊ぼう!(日本Red5ユーザー会)【OSC2011広島】共有アプリで遊ぼう!(日本Red5ユーザー会)
【OSC2011広島】共有アプリで遊ぼう!(日本Red5ユーザー会)Shinichiro Yoshida
 
いまどき(これから)のPHP開発
いまどき(これから)のPHP開発いまどき(これから)のPHP開発
いまどき(これから)のPHP開発Kenjiro Kubota
 
How Would You Like Component Management System
How Would You Like Component Management SystemHow Would You Like Component Management System
How Would You Like Component Management SystemHidetaka Okamoto
 
PHPから離れて感じるPHPの良さ
PHPから離れて感じるPHPの良さPHPから離れて感じるPHPの良さ
PHPから離れて感じるPHPの良さShinichi Takahashi
 
Yii Framework 2.0 いま求められるRAD標準とは #phpkansai
Yii Framework 2.0 いま求められるRAD標準とは #phpkansaiYii Framework 2.0 いま求められるRAD標準とは #phpkansai
Yii Framework 2.0 いま求められるRAD標準とは #phpkansaiHisateru Tanaka
 
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜PR・継続できる目標の立て方・改善編 先生:増井 雄一郎
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜PR・継続できる目標の立て方・改善編 先生:増井 雄一郎増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜PR・継続できる目標の立て方・改善編 先生:増井 雄一郎
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜PR・継続できる目標の立て方・改善編 先生:増井 雄一郎schoowebcampus
 
ペアプロはリモートでもできる!
ペアプロはリモートでもできる!ペアプロはリモートでもできる!
ペアプロはリモートでもできる!Tatsuya Deguchi
 
ライブラリ・ファースト 第91回 PHP勉強会@東京 #phpstudy
ライブラリ・ファースト 第91回 PHP勉強会@東京 #phpstudyライブラリ・ファースト 第91回 PHP勉強会@東京 #phpstudy
ライブラリ・ファースト 第91回 PHP勉強会@東京 #phpstudyKenichi Mukai
 
【CodeCamp】PHP教科書サンプル
【CodeCamp】PHP教科書サンプル【CodeCamp】PHP教科書サンプル
【CodeCamp】PHP教科書サンプルcodecampJP
 
Productive Organization with Ruby
Productive Organization with RubyProductive Organization with Ruby
Productive Organization with RubyHiroshi SHIBATA
 
[REV UP] あなたならどう使う?最新Azureレシピ for LINE Platform
[REV UP] あなたならどう使う?最新Azureレシピ for LINE Platform[REV UP] あなたならどう使う?最新Azureレシピ for LINE Platform
[REV UP] あなたならどう使う?最新Azureレシピ for LINE Platform拓将 平林
 
ゼロからのプログラミングRails講座 Codeanywhere版
ゼロからのプログラミングRails講座 Codeanywhere版ゼロからのプログラミングRails講座 Codeanywhere版
ゼロからのプログラミングRails講座 Codeanywhere版DIVE INTO CODE Corp.
 

Similar to PHPプログラミングのIPv6対応の実際 (20)

第1回勉強会
第1回勉強会第1回勉強会
第1回勉強会
 
DevOpsを実現する為のChef活用テクニック
DevOpsを実現する為のChef活用テクニックDevOpsを実現する為のChef活用テクニック
DevOpsを実現する為のChef活用テクニック
 
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のご紹介
 
IPv6時代のWebアプリケーション&プラットフォーム 2014
IPv6時代のWebアプリケーション&プラットフォーム 2014IPv6時代のWebアプリケーション&プラットフォーム 2014
IPv6時代のWebアプリケーション&プラットフォーム 2014
 
Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)
Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)
Lightweight Language Diverプレゼン資料:アプリケーションのIPv6対応のススメ(LL編)
 
PHPでAIプログラミングコンテスト準優勝するまでの軌跡
PHPでAIプログラミングコンテスト準優勝するまでの軌跡PHPでAIプログラミングコンテスト準優勝するまでの軌跡
PHPでAIプログラミングコンテスト準優勝するまでの軌跡
 
PHPの今とこれから2006
PHPの今とこれから2006PHPの今とこれから2006
PHPの今とこれから2006
 
【OSC2011広島】共有アプリで遊ぼう!(日本Red5ユーザー会)
【OSC2011広島】共有アプリで遊ぼう!(日本Red5ユーザー会)【OSC2011広島】共有アプリで遊ぼう!(日本Red5ユーザー会)
【OSC2011広島】共有アプリで遊ぼう!(日本Red5ユーザー会)
 
いまどき(これから)のPHP開発
いまどき(これから)のPHP開発いまどき(これから)のPHP開発
いまどき(これから)のPHP開発
 
How Would You Like Component Management System
How Would You Like Component Management SystemHow Would You Like Component Management System
How Would You Like Component Management System
 
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
Java Clientで入門する Apache Kafka #jjug_ccc #ccc_e2
 
PHPから離れて感じるPHPの良さ
PHPから離れて感じるPHPの良さPHPから離れて感じるPHPの良さ
PHPから離れて感じるPHPの良さ
 
Yii Framework 2.0 いま求められるRAD標準とは #phpkansai
Yii Framework 2.0 いま求められるRAD標準とは #phpkansaiYii Framework 2.0 いま求められるRAD標準とは #phpkansai
Yii Framework 2.0 いま求められるRAD標準とは #phpkansai
 
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜PR・継続できる目標の立て方・改善編 先生:増井 雄一郎
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜PR・継続できる目標の立て方・改善編 先生:増井 雄一郎増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜PR・継続できる目標の立て方・改善編 先生:増井 雄一郎
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜PR・継続できる目標の立て方・改善編 先生:増井 雄一郎
 
ペアプロはリモートでもできる!
ペアプロはリモートでもできる!ペアプロはリモートでもできる!
ペアプロはリモートでもできる!
 
ライブラリ・ファースト 第91回 PHP勉強会@東京 #phpstudy
ライブラリ・ファースト 第91回 PHP勉強会@東京 #phpstudyライブラリ・ファースト 第91回 PHP勉強会@東京 #phpstudy
ライブラリ・ファースト 第91回 PHP勉強会@東京 #phpstudy
 
【CodeCamp】PHP教科書サンプル
【CodeCamp】PHP教科書サンプル【CodeCamp】PHP教科書サンプル
【CodeCamp】PHP教科書サンプル
 
Productive Organization with Ruby
Productive Organization with RubyProductive Organization with Ruby
Productive Organization with Ruby
 
[REV UP] あなたならどう使う?最新Azureレシピ for LINE Platform
[REV UP] あなたならどう使う?最新Azureレシピ for LINE Platform[REV UP] あなたならどう使う?最新Azureレシピ for LINE Platform
[REV UP] あなたならどう使う?最新Azureレシピ for LINE Platform
 
ゼロからのプログラミングRails講座 Codeanywhere版
ゼロからのプログラミングRails講座 Codeanywhere版ゼロからのプログラミングRails講座 Codeanywhere版
ゼロからのプログラミングRails講座 Codeanywhere版
 

More from Tetsuji Koyama

まつりとTシャツと私
まつりとTシャツと私まつりとTシャツと私
まつりとTシャツと私Tetsuji Koyama
 
LLまつりに行こう!
LLまつりに行こう!LLまつりに行こう!
LLまつりに行こう!Tetsuji Koyama
 
FuelPHPを3ヶ月使ってみて
FuelPHPを3ヶ月使ってみてFuelPHPを3ヶ月使ってみて
FuelPHPを3ヶ月使ってみてTetsuji Koyama
 
the History of LL events
the History of LL eventsthe History of LL events
the History of LL eventsTetsuji Koyama
 
the Histrory of LT and ドラ娘
the Histrory of LT and ドラ娘the Histrory of LT and ドラ娘
the Histrory of LT and ドラ娘Tetsuji Koyama
 
PHP Frameworks with IPv6
PHP Frameworks with IPv6PHP Frameworks with IPv6
PHP Frameworks with IPv6Tetsuji Koyama
 
Keires_DBリリースのご案内
Keires_DBリリースのご案内Keires_DBリリースのご案内
Keires_DBリリースのご案内Tetsuji Koyama
 
開発ライセンスとプログラマーの自由
開発ライセンスとプログラマーの自由開発ライセンスとプログラマーの自由
開発ライセンスとプログラマーの自由Tetsuji Koyama
 
日本は世界一のITコミュニティ天国
日本は世界一のITコミュニティ天国日本は世界一のITコミュニティ天国
日本は世界一のITコミュニティ天国Tetsuji Koyama
 
ランダム文字ぽいものをつくる
ランダム文字ぽいものをつくるランダム文字ぽいものをつくる
ランダム文字ぽいものをつくるTetsuji Koyama
 

More from Tetsuji Koyama (14)

FuelPHP で DynamoDB
FuelPHP で DynamoDBFuelPHP で DynamoDB
FuelPHP で DynamoDB
 
まつりとTシャツと私
まつりとTシャツと私まつりとTシャツと私
まつりとTシャツと私
 
LLまつりに行こう!
LLまつりに行こう!LLまつりに行こう!
LLまつりに行こう!
 
FuelPHPを3ヶ月使ってみて
FuelPHPを3ヶ月使ってみてFuelPHPを3ヶ月使ってみて
FuelPHPを3ヶ月使ってみて
 
the History of LL events
the History of LL eventsthe History of LL events
the History of LL events
 
the Histrory of LT and ドラ娘
the Histrory of LT and ドラ娘the Histrory of LT and ドラ娘
the Histrory of LT and ドラ娘
 
IPv6の闇とPHP
IPv6の闇とPHPIPv6の闇とPHP
IPv6の闇とPHP
 
PHP Frameworks with IPv6
PHP Frameworks with IPv6PHP Frameworks with IPv6
PHP Frameworks with IPv6
 
LL Planets告知
LL Planets告知LL Planets告知
LL Planets告知
 
Keires_DBリリースのご案内
Keires_DBリリースのご案内Keires_DBリリースのご案内
Keires_DBリリースのご案内
 
開発ライセンスとプログラマーの自由
開発ライセンスとプログラマーの自由開発ライセンスとプログラマーの自由
開発ライセンスとプログラマーの自由
 
日本は世界一のITコミュニティ天国
日本は世界一のITコミュニティ天国日本は世界一のITコミュニティ天国
日本は世界一のITコミュニティ天国
 
Traitsについて
TraitsについてTraitsについて
Traitsについて
 
ランダム文字ぽいものをつくる
ランダム文字ぽいものをつくるランダム文字ぽいものをつくる
ランダム文字ぽいものをつくる
 

Recently uploaded

AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 

Recently uploaded (9)

AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 

PHPプログラミングのIPv6対応の実際