Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
元Javaエンジニアが怖いと思うPHPの仕様
Search
sorch
November 19, 2019
Programming
0
240
元Javaエンジニアが怖いと思うPHPの仕様
Java経験者がPHPを学習して「この仕様、まじか(ヒヤリハットッ)」と感じた言語仕様をクイズ形式で紹介
sorch
November 19, 2019
Tweet
Share
More Decks by sorch
See All by sorch
他言語と比較して今こそ理解しよう! 目指せ、列挙型マスター!
soachr
0
230
アカウント発行システムをDDDでリファクタリングしたら 幸せになりそうな予感がした
soachr
1
290
おさらい!PHP8で廃止される機能
soachr
1
590
Other Decks in Programming
See All in Programming
富山発の個人開発サービスで日本中の学校の業務を改善した話
krpk1900
4
390
DROBEの生成AI活用事例 with AWS
ippey
0
130
Pythonでもちょっとリッチな見た目のアプリを設計してみる
ueponx
1
570
Grafana Loki によるサーバログのコスト削減
mot_techtalk
1
130
Honoとフロントエンドの 型安全性について
yodaka
7
1.2k
チームリードになって変わったこと
isaka1022
0
200
Amazon ECS とマイクロサービスから考えるシステム構成
hiyanger
2
560
責務と認知負荷を整える! 抽象レベルを意識した関心の分離
yahiru
4
560
2024年のkintone API振り返りと2025年 / kintone API look back in 2024
tasshi
0
220
PHPのバージョンアップ時にも役立ったAST
matsuo_atsushi
0
110
Software Architecture
hschwentner
6
2.1k
PHPカンファレンス名古屋2025 タスク分解の試行錯誤〜レビュー負荷を下げるために〜
soichi
1
200
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Building Applications with DynamoDB
mza
93
6.2k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
How STYLIGHT went responsive
nonsquared
98
5.4k
The Language of Interfaces
destraynor
156
24k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
A Tale of Four Properties
chriscoyier
158
23k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
12
960
Large-scale JavaScript Application Architecture
addyosmani
511
110k
How to Ace a Technical Interview
jacobian
276
23k
Transcript
元 J A V A エ ン ジ ニ ア
が 怖 い と 思 う P H P の 仕 様 ~ ~ L E T ’ S Q U I Z ! ! ~ ~
この発表について • Java経験者がPHPを学習して「この仕様、まじか(ヒヤリハットッ)」と 感じた言語仕様をクイズ形式で紹介 • 主な対象者 – 非スクリプト言語経験者でPHP学び始めの人
そーく soachr 新卒入社 4年目 開発エンジニア • 今までの経歴 – • 開発・運用保守(3.5年間)
/ Java, PostgreSQL, js, jQueryなど – • 開発(半年) / PHP, PostgresSQL, js, jQueryなど 自己紹介
LET’S QUIZ!!
PHP QUIZ!! (1/3) Question 以下のコードの結果は? $hoge = 0; if ($hoge
= 12) { print $hoge; }
PHP QUIZ!! (1/3) Question 以下のコードの結果は? $hoge = 0; If ($hoge
= 12) { print $hoge; } Answer 12 PHPの仕様 条件式の評価結果が - 0であればFALSE - 0以外であればTRUE
PHP QUIZ!! (2/3) Question 以下のコードの結果は? $str = ‘’; If ($str)
{ print ‘hello!!PHP’; }
PHP QUIZ!! (2/3) Question 以下のコードの結果は? $str = ‘’; If ($str)
{ print ‘hello!!PHP’; } Answer なにも出力されない。 エラーにもならない。 PHPの仕様 条件式の評価結果が - 空orNULLであればFALSE - 空orNULL以外であればTRUE
PHP QUIZ!! (3/3) Question 以下のコードの結果は? function argumentOne($msg) { print "
argumentOne : {$msg}"; } argumentOne(‘msg’, ‘hoge’);
PHP QUIZ!! (3/3) Question 以下のコードの結果は? function argumentOne($msg) { print "
argumentOne : {$msg}"; } argumentOne(‘msg’, ‘hoge’); Answer エラーなし。 ・(余談)第2引数に指定した’hoge’という文字列は以下の関 数で取得できる $msg2 = func_get_arg(1); //$msg2 = ’hoge’ ・PHPはオーバーロード機能がないため、 実現するには↑のfunc_get_arg()を駆使するとかになる …(探したらライブラリがありそうだが)
まとめ •PHPはJavaよりゆるふわ!!! – 条件式を書くときはPHP本家サイトを必ず確認す ること –Javaとは勝手が違うという認識を持つこと
ご 清 聴 あ り が と う ご ざ
い ま し た