• <em id="6vhwh"><rt id="6vhwh"></rt></em>

    <style id="6vhwh"></style>

    <style id="6vhwh"></style>
    1. <style id="6vhwh"></style>
        <sub id="6vhwh"><p id="6vhwh"></p></sub>
        <p id="6vhwh"></p>
          1. 国产亚洲欧洲av综合一区二区三区 ,色爱综合另类图片av,亚洲av免费成人在线,久久热在线视频精品视频,成在人线av无码免费,国产精品一区二区久久毛片,亚洲精品成人片在线观看精品字幕 ,久久亚洲精品成人av秋霞

            phpdefine(phpdefine定義常量格式)

            更新時間:2023-03-02 10:06:23 閱讀: 評論:0

            標量類型聲明

            PHP 7 中的函數的形參類型聲明可以是標量了。在 PHP 5 中只能是類名、接口、array 或者 callable (PHP 5.4,即可以是函數,包括匿名函數),現在也可以使用 string、int、float和 bool 了。

            <?php

            // 強制模式

            function sumOfInts(int ...$ints)

            {

            return array_sum($ints);

            }

            var_dump(sumOfInts(2, '3', 4.1));

            以上實例會輸出:

            int(9)

            需要注意的是上文提到的嚴格模式的問題在這里同樣適用:強制模式(默認,既強制類型轉換)下還是會對不符合預期的參數進行強制類型轉換,嚴格模式下則觸發 TypeError 的致命錯誤。

            返回值類型聲明

            PHP 7 增加了對返回類型聲明的支持。 類似于參數類型聲明,返回類型聲明指明了函數返回值的類型。可用的類型與參數聲明中可用的類型相同。

            <?php

            function arraysSum(array ...$arrays): array

            {

            return array_map(function(array $array): int {

            return array_sum($array);

            }, $arrays);

            }

            print_r(arraysSum([1,2,3], [4,5,6], [7,8,9]));

            以上實例會輸出:

            Array

            (

            [0] => 6

            [1] => 15

            [2] => 24

            )

            NULL 合并運算符

            由于日常使用中存在大量同時使用三元表達式和 ist()的情況,NULL 合并運算符使得變量存在且值不為NULL, 它就會返回自身的值,否則返回它的第二個操作數。

            實例如下:

            <?php

            // 如果 $_GET['ur'] 不存在返回 'nobody',否則返回 $_GET['ur'] 的值

            $urname = $_GET['ur'] ?? 'nobody';

            // 類似的三元運算符

            $urname = ist($_GET['ur']) ? $_GET['ur'] : 'nobody';

            ?>

            太空船操作符(組合比較符)

            太空船操作符用于比較兩個表達式。當$a大于、等于或小于$b時它分別返回-1、0或1。

            實例如下:

            <?php

            // 整型

            echo 1 <=> 1; // 0

            echo 1 <=> 2; // -1

            echo 2 <=> 1; // 1

            // 浮點型

            echo 1.5 <=> 1.5; // 0

            echo 1.5 <=> 2.5; // -1

            echo 2.5 <=> 1.5; // 1

            // 字符串

            echo "a" <=> "a"; // 0

            echo "a" <=> "b"; // -1

            echo "b" <=> "a"; // 1

            ?>

            通過 define() 定義常量數組

            實例如下:

            <?php

            define('ANIMALS', [

            'dog',

            'cat',

            'bird'

            ]);

            echo ANIMALS[1]; // 輸出 "cat"

            ?>

            匿名類

            現在支持通過new class 來實例化一個匿名類,實例如下:

            <?php

            interface Logger {

            public function log(string $msg);

            }

            class Application {

            private $logger;

            public function getLogger(): Logger {

            return $this->logger;

            }

            public function tLogger(Logger $logger) {

            $this->logger = $logger;

            }

            }

            $app = new Application;

            $app->tLogger(new class implements Logger {

            public function log(string $msg) {

            echo $msg;

            }

            });

            var_dump($app->getLogger());

            ?>

            以上實例會輸出:

            object(class@anonymous)#2 (0) {

            }

            Unicode codepoint 轉譯語法

            這接受一個以16進制形式的 Unicode codepoint,并打印出一個雙引號或heredoc包圍的 UTF-8 編碼格式的字符串。 可以接受任何有效的 codepoint,并且開頭的 0 是可以省略的。

            echo "u{aa}";

            echo "u{0000aa}";

            echo "u{9999}";

            以上實例會輸出:

            a

            a (same as before but with optional leading 0's)

            Closure::call()

            Closure::call() 現在有著更好的性能,簡短干練的暫時綁定一個方法到對象上閉包并調用它。

            <?php

            class A {private $x = 1;}

            // Pre PHP 7 代碼

            $getXCB = function() {return $this->x;};

            $getX = $getXCB->bindTo(new A, 'A'); // intermediate closure

            echo $getX();

            // PHP 7+ 代碼

            $getX = function() {return $this->x;};

            echo $getX->call(new A);

            以上實例會輸出:

            1

            1

            為unrialize()提供過濾

            這個特性旨在提供更安全的方式解包不可靠的數據。它通過白名單的方式來防止潛在的代碼注入。

            <?php

            // 轉換對象為 __PHP_Incomplete_Class 對象

            $data = unrialize($foo, ["allowed_class" => fal]);

            // 轉換對象為 __PHP_Incomplete_Class 對象,除了 MyClass 和 MyClass2

            $data = unrialize($foo, ["allowed_class" => ["MyClass", "MyClass2"]);

            // 默認接受所有類

            $data = unrialize($foo, ["allowed_class" => true]);

            IntlChar

            新增加的 IntlChar 類旨在暴露出更多的 ICU 功能。這個類自身定義了許多靜態方法用于操作多字符集的 unicode 字符。

            <?php

            printf('%x', IntlChar::CODEPOINT_MAX);

            echo IntlChar::charName('@');

            var_dump(IntlChar::ispunct('!'));

            以上實例會輸出:

            10ffff

            COMMERCIAL AT

            bool(true)

            若要使用此類,請先安裝Intl擴展

            預期

            預期是向后兼用并增強之前的 asrt() 的方法。 它使得在生產環境中啟用斷言為零成本,并且提供當斷言失敗時拋出特定異常的能力。

            <?php

            ini_t('asrt.exception', 1);

            class CustomError extends AsrtionError {}

            asrt(fal, new CustomError('Some error message'));

            ?>

            以上實例會輸出:

            Fatal error: Uncaught CustomError: Some error message

            u 加強

            從同一 namespace 導入的類、函數和常量現在可以通過單個 u 語句 一次性導入了。

            <?php

            // PHP 7 之前版本用法

            u some amespaceClassA;

            u some amespaceClassB;

            u some amespaceClassC as C;

            u function some amespacefn_a;

            u function some amespacefn_b;

            u function some amespacefn_c;

            u const some amespaceConstA;

            u const some amespaceConstB;

            u const some amespaceConstC;

            // PHP 7+ 用法

            u some amespace{ClassA, ClassB, ClassC as C};

            u function some amespace{fn_a, fn_b, fn_c};

            u const some amespace{ConstA, ConstB, ConstC};

            ?>

            Generator 加強

            增強了Generator的功能,這個可以實現很多先進的特性

            <?php

            <?php

            function gen()

            {

            yield 1;

            yield 2;

            yield from gen2();

            }

            function gen2()

            {

            yield 3;

            yield 4;

            }

            foreach (gen() as $val)

            {

            echo $val, PHP_EOL;

            }

            ?>

            以上實例會輸出:

            1

            2

            3

            4

            整除

            新增了整除函數 intdiv(),使用實例:

            <?php

            var_dump(intdiv(10, 3));

            ?>

            以上實例會輸出:

            int(3)

            本文發布于:2023-02-28 21:04:00,感謝您對本站的認可!

            本文鏈接:http://www.newhan.cn/zhishi/a/1677722783102435.html

            版權聲明:本站內容均來自互聯網,僅供演示用,請勿用于商業和其他非法用途。如果侵犯了您的權益請與我們聯系,我們將在24小時內刪除。

            本文word下載地址:phpdefine(phpdefine定義常量格式).doc

            本文 PDF 下載地址:phpdefine(phpdefine定義常量格式).pdf

            標簽:常量   定義   格式   phpdefine
            相關文章
            留言與評論(共有 0 條評論)
               
            驗證碼:
            推薦文章
            排行榜
            Copyright ?2019-2022 Comsenz Inc.Powered by ? 實用文體寫作網旗下知識大全大全欄目是一個全百科類寶庫! 優秀范文|法律文書|專利查詢|
            主站蜘蛛池模板: 成人h动漫无码网站久久| 强奷漂亮人妻系列老师| 国产★浪潮AV无码性色| 日本三级香港三级三级人妇久| 国产欧美精品一区二区三区-老狼| 亚洲区日韩精品中文字幕| 亚洲香蕉av一区二区蜜桃| 国产日韩av一区二区在线| 少妇人妻真实偷人精品| 亚洲精品人妻中文字幕| 欧美白人最猛性xxxxx| 国产精品老年自拍视频| 一区二区三区国产好的精华液| 亚洲色欲色欲WWW在线丝| 国产精品乱码人妻一区二区三区 | 人妻伦理在线一二三区| 人妻中文字幕一区二区三| 福利一区二区在线播放| 黑人欧美一级在线视频| 国产男生午夜福利免费网站| 亚洲AV无码综合一区二区在线| 国产国产精品人体在线视| 不卡国产一区二区三区| 在线天堂最新版资源| 亚洲综合精品第一页| 亚洲一区二区三区久久蜜桃| 国产亚洲精品综合99久久| 精品国产午夜福利伦理片| 国产成人AV在线免播放观看新| 青青青国产在线观看免费| 亚洲国产欧美在线看片一国产| www.狠狠| 中文字幕乱码熟妇五十中出| 国内精品自线在拍| 一区二区视频| 亚洲国产精品综合久久网络| 国语对白在线免费视频| 日韩成人一区二区三区在线观看| 你懂的视频在线一区二区| 欧美激情一区二区三区成人| 精品无码久久久久国产|