PHP7では?そして? ?違いは何ですか

醉折花枝作酒筹
リリース: 2023-02-17 22:00:01
転載
1768 人が閲覧しました

この記事では、PHP7の「?」と「??」の違いについて紹介します。一定の参考値があるので、困っている友達が参考になれば幸いです。

PHP7では?そして? ?違いは何ですか

$a = ''; // or 0 or false

$b = $a ?? 'a';
// 此时会判断$a是否存在 $a不为null 
// 等价于
// $b = isset($a) ? $a : 'a';
// $b is '' or 0 or false

$c = $a ?: 'a';
// 此时会判断$a的值
// $c is 'a'
ログイン後にコピー
$a = null;

$b = $a ?? 'a';
// 此时$a为null
// $b is  'a'

$c = $a ?: 'a';
// $c is 'a'
ログイン後にコピー
$a = null;
$b = 'b';
$c = $a ?? $b ?? 'c';
// 返回第一个有定义的值
// $c is 'b'

$a = null;
$b = null;
$c = $a ?? $b ?? 'c';
// $c is 'c'
ログイン後にコピー
function getId(?int $id) {
    return $id;
}
// 参数为指定的整型或空值
getId(857); // 857
getId('857'); // 参数非整型 报错
getId(); // 参数空 报错
getId(''); // 参数非整型 报错
getId(0); // 0
getId(null); // null
ログイン後にコピー
function getId():?int
{
	return 1;
}
// 返回值为指定的整型或空值
getId() // 1

function getId():?int
{
	return null;
}
getId() // null

function getId():?int
{
	return '1';
}
getId() // 返回非整型 报错
ログイン後にコピー

推奨学習: php ビデオ チュートリアル

以上がPHP7では?そして? ?違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:csdn.net
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!