$30 off During Our Annual Pro Sale. View Details »

元Javaエンジニアが怖いと思うPHPの仕様

sorch
November 19, 2019

 元Javaエンジニアが怖いと思うPHPの仕様

Java経験者がPHPを学習して「この仕様、まじか(ヒヤリハットッ)」と感じた言語仕様をクイズ形式で紹介

sorch

November 19, 2019
Tweet

More Decks by sorch

Other Decks in Programming

Transcript

  1. 元 J A V A エ ン ジ ニ ア

    が 怖 い と 思 う P H P の 仕 様 ~ ~ L E T ’ S Q U I Z ! ! ~ ~
  2. この発表について • Java経験者がPHPを学習して「この仕様、まじか(ヒヤリハットッ)」と 感じた言語仕様をクイズ形式で紹介 • 主な対象者 – 非スクリプト言語経験者でPHP学び始めの人

  3. そーく soachr 新卒入社 4年目 開発エンジニア • 今までの経歴 – • 開発・運用保守(3.5年間)

    / Java, PostgreSQL, js, jQueryなど – • 開発(半年) / PHP, PostgresSQL, js, jQueryなど 自己紹介
  4. LET’S QUIZ!!

  5. PHP QUIZ!! (1/3) Question 以下のコードの結果は? $hoge = 0; if ($hoge

    = 12) { print $hoge; }
  6. PHP QUIZ!! (1/3) Question 以下のコードの結果は? $hoge = 0; If ($hoge

    = 12) { print $hoge; } Answer 12 PHPの仕様 条件式の評価結果が - 0であればFALSE - 0以外であればTRUE
  7. PHP QUIZ!! (2/3) Question 以下のコードの結果は? $str = ‘’; If ($str)

    { print ‘hello!!PHP’; }
  8. PHP QUIZ!! (2/3) Question 以下のコードの結果は? $str = ‘’; If ($str)

    { print ‘hello!!PHP’; } Answer なにも出力されない。 エラーにもならない。 PHPの仕様 条件式の評価結果が - 空orNULLであればFALSE - 空orNULL以外であればTRUE
  9. PHP QUIZ!! (3/3) Question 以下のコードの結果は? function argumentOne($msg) { print "

    argumentOne : {$msg}"; } argumentOne(‘msg’, ‘hoge’);
  10. 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()を駆使するとかになる …(探したらライブラリがありそうだが)
  11. まとめ •PHPはJavaよりゆるふわ!!! – 条件式を書くときはPHP本家サイトを必ず確認す ること –Javaとは勝手が違うという認識を持つこと

  12. ご 清 聴 あ り が と う ご ざ

    い ま し た