【PHP8】関数を作るときにしっかりと型宣言をするお話

  • このエントリーをはてなブックマークに追加

天国でもあり地獄のようなPHPの変数事情

PHPは昔から良くも悪くも変数の型に対して寛容でした。

いきなり型宣言をせずに使えますし、なんなら

$hoge .= “宣言しなくても追加”;

ですら怒られないくらいでした。

ただ、PHP5あたりからうっすらとまずいよねってことになり、PHP5系では非推奨、PHP8以降になると、warningとしてしっかりとアラートが出るようになりました。
(あくまでwarningなのでエラー非表示にすれば処理自体は止まらない)

これによりバージョンアップすることでエラーメッセージが頻発するのですが、今後のことを考えると仕方ないなという感じです。

関数も型宣言する時代

関数についてもほかの言語からすると「当たり前だろ」ということでしたが、実際のところPHPはそのあたりも寛容でした。

例えば「数字をカンマ区切りにし、最後に円をつける関数」を作って説明します。

めちゃくちゃシンプルですが、こんな感じでしょうか。
もちろんこれで問題はないのですがPHP7以降は型宣言する事ができるので、簡単なのでやっちゃいましょう

戻り値がない場合はvoidにすれば大丈夫です。

VS CodeのようなIDEを使うと、自動的に型宣言を認識してくれるので、おかしな記述があれば警告を出してくれます。



おそらくPHPのバージョンアップに伴い、型宣言をしないとワーニングが発生するということがでてくるかもしれないので、少しめんどくさいですが型宣言の手癖をつけておくのもいいかもしれないですね

 

執筆者:松本[ エンジニア ]

関連記事

Webサイト制作

はじめてのShraePoint 実践的活用事例3選【業務効率化・DX】

目次1 SharePointとは?1.1 高い機密性が特長2 SharePointの活用法2.1 1.社内マニュアルや手順書を整備する2.2 2.営業資料や契約書の保管と共有に活用する2.3 3.情報の回覧やアンケート、意見収集の場として活用3 SharePointで作成したポータルサイト4 まとめ5 8bit公式 YouTube Channelのご紹介 SharePointとは? SharePointはMicrosoftが提供する情報共有サービスです。WordやExcel、 […]

Webデザイン

【Premiere Pro】動画素材の音声を自動で文字起こしする方法

Premiere Proの機能を使って、動画素材の音声を自動で文字起こししてみましょう。起こしたテキストは、発話タイミングに合わせて字幕として表示することもできます。とても簡単にできるので、ぜひ試してみてください。 目次1 自動文字起こし機能の使い方1.1 1.テキストパネルから文字起こしを行う1.2 2.文字スタイルの変更2 8bit公式 YouTube Channelのご紹介 自動文字起こし機能の使い方 1.テキストパネルから文字起こしを行う 音声データを含んだ動画をタイ […]

Webデザイン

【Photoshop】AI生成した画像を自然にレタッチする

AIで生成する画像は、素材として使うには「人工的な違和感」が残ります。 なんとなくAIと分かってしまうので、Photoshopでひと手間レタッチして自然な雰囲気に近づけてみましょう。 目次1 レタッチ前後の比較2 レタッチの大まかな手順3 レタッチ開始3.1 1.ゆがみフィルターで笑顔を自然にする3.2 2.ノイズなどのフィルターを追加3.3 3.肌を補正3.4 4.微調整4 8bit公式 YouTube Channelのご紹介 レタッチ前後の比較 今回は、Adobe Fir […]

株式会社8bit (エイトビット)

東京都目黒区でWebサイト制作、Webシステム開発などを行っております。
コーポレートサイトやWebサービスの企画・提案を得意としており、自社での経験を元にアイデアをカタチにするお手伝いをさせていただいております。

Web制作に関するご相談はお気軽にどうぞ

弊社に制作をご依頼いただく際の費用感をご確認いただける、
見積りシミュレーションをご用意いたしました。