PHPの無名関数
はじめに
匿名関数は、ユーザー定義の名前がない関数です。このような機能は、クロージャーとも呼ばれます。 またはラムダ 働き。場合によっては、1回限りの関数が必要になることがあります。クロージャーは、それが定義されている環境を閉じる匿名関数です。その中にuseキーワードを指定する必要があります。インラインコールバック関数を作成するための無名関数の最も一般的な使用法。
構文
$var=function ($arg1, $arg2) { return $val; };
- functionキーワードと開始括弧の間に関数名はありません。
- 無名関数の定義は式であるため、関数定義の後にセミコロンがあります
- 関数は変数に割り当てられ、後で変数の名前を使用して呼び出されます。
- 後で呼び出すことができる別の関数に渡されると、コールバックと呼ばれます。
- 外部関数の変数にアクセスできるように、外部関数内から返します。これはクロージャーと呼ばれます。
無名関数の例
例
<?php $var = function ($x) {return pow($x,3);}; echo "cube of 3 = " . $var(3); ?>
出力
これにより、次の結果が得られます。 −
cube of 3 = 27
コールバックとしての無名関数
次の例では、無名関数が組み込みのusort()関数の引数として使用されています。 usort()関数は、比較関数を使用して特定の配列を並べ替えます
例
<?php $arr = [10,3,70,21,54]; usort ($arr, function ($x , $y) { return $x > $y; }); foreach ($arr as $x){ echo $x . "\n"; } ?>
出力
これにより、次の結果が得られます。 −
3 10 21 54 70
クロージャーとしての無名関数
クロージャは、useキーワードを使用してスコープ外の変数にアクセスできる無名関数でもあります
例
<?php $maxmarks=300; $percent=function ($marks) use ($maxmarks) {return $marks*100/$maxmarks;}; echo "marks=285 percentage=". $percent(285); ?>
出力
これにより、次の結果が得られます。 −
marks=285 percentage=95
-
PHP mt_getrandmax()関数
定義と使用法 関数名の「mt」プレフィックスは、メルセンヌツイスターを表します。 。 mt_ getrandmax() 関数は、PHPで使用できる最大の整数を返します。この関数は、メルセンヌツイスター乱数ジェネレーターメソッドを使用します。この関数によって返される値は、mt_rand()関数が乱数を生成するための上限として機能します。 この関数は常に整数を返します。 構文 mt_getrandmax ( void ) : int パラメータ Sr.No パラメータと説明 1 この関数にはパラメータは必要ありません 戻り値 PHP mt_getrandma
-
Pythonの無名関数とは何ですか?
Pythonでは、無名関数は名前なしで定義される関数です。通常の関数はdefキーワードを使用して定義されますが、Pythonでは無名関数はlambdaキーワードを使用して定義されます。したがって、無名関数はラムダ関数とも呼ばれます。 指定されたコードを実行すると、次の出力が得られます C:/Users/TutorialsPoint1/~.py [(13, -3), (4, 1), (1, 2), (9, 10)]