【導入実績300社以上】AWS 構築・運用保守サービス

【導入実績300社以上】AWS 構築・運用保守サービス

【サーバー管理不要】WordPress専用クラウド『WebSpeed』

【サーバー管理不要】WordPress専用クラウド『WebSpeed』

【100URLの登録が0円】Webサイト監視サービス『Appmill』

【100URLの登録が0円】Webサイト監視サービス『Appmill』

【コミュニケーションアプリ開発】LINE アプリ開発サービス

【コミュニケーションアプリ開発】LINE アプリ開発サービス

【ECサイト構築】Shopify カスタムアプリ開発サービス

【ECサイト構築】Shopify カスタムアプリ開発サービス

【音声アプリ開発】Twilio アプリ開発サービス

【音声アプリ開発】Twilio アプリ開発サービス

【グローバル対応】北米リージョン・クラウド / サーバー サポート

【グローバル対応】北米リージョン・クラウド / サーバー サポート

【CPU】AMD EPYC 技術検証(PoC)サービス

【CPU】AMD EPYC 技術検証(PoC)サービス

【Webシステム / サービス開発】SAKARAKU Lab(セカラクラボ)

【Webシステム / サービス開発】SAKARAKU Lab(セカラクラボ)

【取材記事】サーバー系企業ビヨンドが サーバーサイドエンジニアを募集中

【取材記事】サーバー系企業ビヨンドが サーバーサイドエンジニアを募集中

【対談記事】「やっぱクラウド移設っていいですよね」マイネット × ビヨンド エンジニア対談

【対談記事】「やっぱクラウド移設っていいですよね」マイネット × ビヨンド エンジニア対談

【YouTube】ビヨンド公式チャンネル「びよまるチャンネル」

【YouTube】ビヨンド公式チャンネル「びよまるチャンネル」

【PHP新機能】PHP8 が リリースされました

PHP

こんにちは、ビヨンドの 元 ISMS 担当、元プログラマ、とたくさん元がつく現雑用柏木です。
2020年11月に PHP8がリリースされ、まだビヨンドブログでは触れられていなかったので滑り込み紹介します。

まず PHP とは

言わずと知れた、サーバサイドのスクリプト言語です
仕様や文法の理解のしやすさから、スタディコストが安くいろいろなところで利用されている言語になります。
データベースの接続等も容易で初心者の方でも迷わずに実装できる利点があります。
インストールも簡単です。

早速 CentOS7 に インストール

$ sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
$ sudo yum -y install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
$ sudo yum -y install yum-utils
$ sudo yum --enablerepo=remi-php80 install php

インストールが完了しているはずなので、バージョンを確認してみます。

$ php -v
PHP 8.0.0 (cli) (built: Nov 24 2020 17:04:03) ( NTS gcc x86_64 )
Copyright (c) The PHP Group
Zend Engine v4.0.0-dev, Copyright (c) Zend Technologies

無事インストールされました。インストールは相変わらず簡単ですね。

早速新機能をいろいろ試す

JIT

処理が早くなります。ただ、WEBコンテンツではその恩恵をそこまで得られないかもしれません。
いままで敬遠されていた、PHPでのバッチ処理化がはかどりそうですね。
ただ、JITの説明自体はたくさんの方々がブログ等で説明していただいているようですので詳しくは割愛します。
目玉機能なので紹介しました。

名前付き引数

引数を名前で渡せる新機能です。python 等、他の言語ではすでにおなじみですね。

// 名前付き引数
function sample01( int $mae = 0, int $ato = 0  ) {
        var_dump( $mae );
        var_dump( $ato );
}

// どの引数か指定できる
sample01( mae: 1, ato: 2 );
// 出力結果
// int(1)
// int(2)

// 逆にしても大丈夫
sample01( ato: 2, mae: 3 );
// 出力結果
// int(3)
// int(2)

// 片方だけもいける
sample01( ato: 4 );
// 出力結果
// int(0)
// int(4)

match 式

switch文みたいな処理を、三項演算子のように使える新機能です。

$x = 2;
$sample02 = match ( $x ) {
        1 => '$x は 1',
        2 => '$x は 2',
        default => '$x は それ以外',
};
var_dump($sample02);
// 出力結果
// string(8) "$x は 2"

などなど、簡単に試せるところだけのご紹介で、
今回はあまり大幅な仕様変更はなかったかなと思いますが、
見どころはたくさんあったのではと思います。

ただ、世界に残存する、PHP5 からの アップグレード、PHP7 からのアップグレードは
下位互換のない機能、実装もありますので注意が必要です。

今手元にあるソースと、公式のソースを見比べながらグレードアップに関しては検討してみることをお勧めします。

この記事がお役に立てば【 いいね 】のご協力をお願いいたします!
1
読み込み中...
1 票, 平均: 1.00 / 11
625
facebook twitter はてなブックマーク

この記事をかいた人

About the author

柏木宏文

エンジニアもどき。

入社年月日:2010/11/10
これまでの経歴:開発会社2社
現在の業務:エンジニアもどき
所有資格:AWS SAA, GCP PCA

かしわもちはそんなに好きじゃない。