Page 1
ぶっちゃけどうなのPHP
Honestly, What's the Deal with PHP?
pixiv Inc.
USAMI Kenta
2025-11-08 #phpcon_fuk
PHPカンファレンス福岡2025
公開日:
by USAMI Kenta@tadsan
に福岡県福岡市の福岡ファッションビル・FFBホールで開催された『PHPカンファレンス福岡2025』でレギュラーセッション(30分)として発表しました。
ぶっちゃけどうなのPHP
Honestly, What's the Deal with PHP?
pixiv Inc.
USAMI Kenta
2025-11-08 #phpcon_fuk
PHPカンファレンス福岡2025
お前誰よ
今回のお題
<?php
PHP… ぶっちゃけどう思う?
おぼろげながら浮かんできたんです
C#… ASP.NET…
Node.js…
Rust…
Common Lisp…
Go…
Java…
Python…
TypeScript…
Ruby on Rails…
Smalltalk…
Swift…
Kotlin…
いろいろな選択肢が
あるのに我々は
PHPにしがみつくのか
個人的には楽しい
言語をいろいろ
選んできた
俺 vs プログラミング言語
仕事では12年くらい
登壇は9年くらい
プログラミング言語と Webとフレームワーク にこだわりのある人間
アジェンダ
話は
1993年に さかのぼる
出典: フリー百科事典『ウィキペディア(Wikipedia)』より引用
https://ja.wikipedia.org/wiki/ラスマス・ラードフ
2021-07-01T14:10:55版
出典: 伝説のPHP作者「Rasmus Lerdorf」名言集を聞くと嫌PHP厨がファビョる
https://web.archive.org/web/20100501140915/http://anond.hatelabo.jp/20100427231539
出典:伝説の喫煙者「黒木 灰次郎」名言集を聞くと嫌煙がファビョる
http://blog.livedoor.jp/hokanisurukotoha/archives/1121714.html
出典: ウィキクォート https://ja.wikiquote.org/wiki/ラスマス・ラードフ
PHPは多くの人から疎まれ、
まじめなプログラミング言語として
考察対象とされていない節がある
出典: IT Conversations | Rasmus Lerdorf | PHP on Hormones
https://web.archive.org/web/20130729204354/http://itc.conversationsnetwork.org/shows/detail3298.html
Rasmus LerdorfはMySQLとPostgreSQLの両方に 導入されているSQL標準(ANSI92 SQL)を無視した
mSQLのLIMIT句のオリジナル作者です
出典: IT Conversations | Rasmus Lerdorf | PHP on Hormones
https://web.archive.org/web/20130729204354/http://itc.conversationsnetwork.org/shows/detail3298.html
CGIとは何か
CGIとプログラミング言語
Rasmusは何をしたか
(〜1995年くらい)
1993年時点で存在したデータベースソフトウェア。
フリーソフトウェアではないがソースコードが
公開されていて、MySQLなどに影響を及ぼした。
Q. つまりPHPって
何だったの?
A.
異常に行動力があるRasmus
さんが自分のためにPHPを作っ て、何回か書き直した後に利己的 な動機でソースコード公開したら 世界的に開発が盛り上がっちゃった
PHPはWebに何をもたらしたか
第2部
Webフレームワークの
中世期断絶
あるいは
幼年期の終わり
コードを書くと 何らかの単位で
抽象化したくなる
コードが増えると
バグも増える
コードが減れば
バグも減る
ライブラリ化
フレームワーク化
レイヤー化
ライブラリ化
フレームワーク化
レイヤー化
HTTP層のレイヤー化
Ruby on Railsの登場
RubyにとってRailsは何を変えたか
PerlとHTTPレイヤー
PHP界への余波
/data/www/www.pixiv.net (document root)
├── index.php
├── novel
│ └── show.php
├── yyy.php └── zzz.php
NovelController#show
# routes.rb
get '/', to: 'index'
get '/n/:id', to: 'novel#show' get '/u/:id', to: 'user#show'
get '/yyy', to: 'yyy' get '/zzz', to: 'zzz'
PHPにとってのFW
PHP以外は CGI時代との
分断・断絶を経験
PHPは
FWが一般化後も
断絶を経験してない
ここまでは 過去の栄光
PHPは現在も
パフォーマンス改善
されているが、
頭にはいろんな言語が浮かぶ
C#… ASP.NET…
Node.js…
Rust…
Common Lisp…
Go…
Java…
Python…
TypeScript…
Ruby on Rails…
Smalltalk…
Swift…
Kotlin…
PHPよりもっと速い言語で書いた方がいいじゃん
PHPよりエレガントな言語で再構築すべきだ
常にさまざまな誘惑がある
コードをエレガントに書き直すのは今やるべきなのか?
高速な言語で書き直すのは今やるべきなのか?
リソース配分
⚖
PHPはどこでも65点を出せる言語
…と言いたいが、PHPにも歯が立たない局面もある
C10K Problem
チャットアプリで結果をリアルタイムに返す
WebSocket
Server-Sent Events
preforkモデル(mod_php, PHP-FPM)は相性最悪
PHPはこのまま白旗を上げるしかないのか
勝った!
PHP大勝利
……とは行かない
グローバル変数や静的プロパティがリセットされない
CGIとは何か
この環境を全部捨てることになる
Notes on Programming in C
ルール2: 計測すべし。計測するまでは速度のための調整をしてはならない。コードの一部が残りを圧倒しないのであれば、なおさらである。
— Rob Pike
https://www.lysator.liu.se/c/pikestyle.html
訳語はUNIX哲学 - Wikipediaより引用
(2025年10日2日12:33:03版)
問題になっていないことを悩んでも仕方ない
本当にPHPに不得意な仕事をさせる必要があるのか?
本質的な問題を解決できる言語を使おう
関連リンクがありません。
