これって必要?PHPのおかしな関数達
弊社でも日常的に使っており、WEB系開発言語としては非常に浸透しているPHPですが、成り立ちの都合上、ちょっとびっくりするような関数やクラスが存在しています。
世のPHPerから「愛すべき○○」と呼ばれてしまう素敵な関数達を独断と偏見で4つ選んでみましたのでご紹介してまいります。
合言葉は「おかわりはデブの共通言語」のたなかです。
PHP と Java の統合
現在公式にリンクだけ存在していて見れないのです。
ググってみたら『ここ』にありました。
正直意味がわからない関数です。
PHPの拡張モジュールとしてPHPからJavaのオブジェクトの生成とコールが出来るようにするためのものらしいのですが、がっつり「実験的な実装です」警告があります。
まあ使い道が全く無いわけではありませんが、アーキテクチャの設計をする際にこの選択をすることはほぼないでしょう。
V8 Javascript Engine 統合
Javaの統合とかもしようとしていましたが、Javascriptも統合しようとしているみたいです。
流行りの言語をどんどん取り込んで人のふんどしで相撲とりまくる節操無し言語宣言ですね。
ただシステムの規模が大きくなってくると1つの言語で完結するのが難しくなるのも真実で、使いどころがないってわけでも無いのが難しいところですが、節操無しなのには変わりがありません。
implode()は、歴史的な理由により・・・
これは割と頻繁に使う関数な上に、引数の順番がわからなくなって調べる事も多いと思うので、目にした事がある人も多いのではないでしょうか。
PHPの持つ闇を端的に表した注意文な上に「歴史的な理由」という、恥ずかしい過去を持っています宣言はある種の清々しさも感じます。
名前の性別の判別
こちらは国と名前を渡すと、男性か女性かを判別するためのPECL拡張モジュールです。
さすがに標準関数ではありませんでしたが、キラキラネーム全盛期の今としてはなかなか判別が難しいと思います。
ちなみに僕の名前で試してみたところ、
Hikaruは、Japanではおそらく女性の名前です。
僕は日本ではおそらく女性です。
おわりに
いかがだったでしょうか?
これらの機能や関数をバリバリ使っているエンジニアの方は、是非弊社に遊びに来てください!
そうでも無い方はPHPの歴史をチラ見して歴史ロマンに胸躍らせましょう!