ホームページ >バックエンド開発 >PHPの問題 >php7 の理解 (詳細なチュートリアル付き)

php7 の理解 (詳細なチュートリアル付き)

慕斯
慕斯オリジナル
2021-06-01 11:38:492876ブラウズ

前回の記事では、「学習を続ける - AJAX PHP (ソース コード付き)」について紹介しました。この記事では、引き続き新しい内容 - PHP7 を紹介します。すでに少し経験があると思います。 php7. 理解して強い関心を呼び起こしたので、今すぐ見に行きましょう! ! !

php7 の理解 (詳細なチュートリアル付き)

PHP7 バージョンでは、変数解析メカニズムが調整されました。調整内容は次のとおりです:

1. 間接変数、属性とメソッド参照はすべて、左から右の順序で説明します:

 $$foo['bar']['baz'] // interpreted as ($$foo)['bar']['baz']
 $foo->$bar['baz']   // interpreted as ($foo->$bar)['baz']
 $foo->$bar['baz']() // interpreted as ($foo->$bar)['baz']()
 Foo::$bar['baz']()  // interpreted as (Foo::$bar)['baz']()

説明の順序を変更したい場合は、中括弧を使用できます:

${$foo['bar']['baz']}
$foo->{$bar['baz']}
$foo->{$bar['baz']}()
Foo::{$bar['baz']}()

2. グローバル キーワードは次のとおりです。単純な変数

global $$foo->bar;    // 这种写法不支持。
global ${$foo->bar};  // 需用大括号来达到效果。

3 のみを参照するようになりました。変数や関数を括弧で囲んでも意味がありません

function getArray() { return [1, 2, 3]; }
$last = array_pop(getArray());
// Strict Standards: Only variables should be passed by reference
$last = array_pop((getArray()));
// Strict Standards: Only variables should be passed by reference

2 番目の文の呼び出しは括弧で囲まれていますが、この厳密なエラーは次のとおりです。まだ報告されています。以前のバージョンの PHP では、このエラーは報告されません。

4. 参照代入時に自動作成される配列要素やオブジェクト属性の順序が以前と異なります。

$array = [];
$array["a"] =& $array["b"];
$array["b"] = 1;
var_dump($array);
PHP7产生的数组:["a" => 1, "b" => 1]
PHP5产生的数组:["b" => 1, "a" => 1]

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

以上がphp7 の理解 (詳細なチュートリアル付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。