【 PHP 】PHP8に入門してみた 162日目 PHPの基本 ( ユーザー定義関数 複数の戻り値)

PHP8技術者認定初級試験 が始まるようなので 試験に向けて (できるだけ)勉強しようと思います! 使用する書籍は独習PHP 第4版(山田 祥寛)|翔泳社の本 (shoeisha.co.jp) となります。

ユーザー定義関数

結果を複数返したい

関数を呼び出して結果を得ます。

PHPでは結果がたくさんある場合は戻り値に配列で返すのが定石のようです。

<!DOCTYPE html>

<html>

<head>
    <meta charset="UTF-8" />
    <title>こんにちは!</title>
    <!-- Bootstrapを有効化 -->
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" />
</head>

<body>
    <?php
    function max_min(float ...$args): array
    {
        // 最大値 / 最小値の順で配列を生成
        return [max($args), min($args)];
    }

    $result = max_min(10, 2, -1, 100, 5, 0, 8);
    print_r($result);

    print "<br />";
    // なにやら新鮮な代入!
    [$max, $min] = max_min(1, 3, 4);
    print "最大値: {$max}, 最小値: {$min}";
    ?>
</body>

</html>

 

メモ

それはそうなんだけれども・・・これだと関数側でmaxとminの順番を変更してreturnされたら

呼び出し元は発狂しちゃうような気がします。

PHPPHP

Posted by raika@blog