PHP 7.2 では create_function() 関数が非推奨になり、開発者は互換性のある代替関数を探すことになります。この記事では、機能を維持しながら PHP 7.2 の要求を満たすソリューションを提供することで、この問題に取り組みます。
create_function() 関数を使用する次のコード スニペットを考えてみましょう。
$callbacks[$delimiter] = create_function( '$matches', "return '$delimiter' . strtolower($matches[1]);" );
ただし、PHP 7.2 では create_function() が非推奨になったため、このアプローチにはupdate.
解決策は、クロージャとも呼ばれる匿名関数にあります。クロージャを使用すると、関数本体内で親スコープの変数を使用できるようになり、$delimiter 変数にアクセスする手段が提供されます。
$callbacks[$delimiter] = function($matches) use ($delimiter) { return $delimiter . strtolower($matches[1]); };
このクロージャは、目的の機能を維持しながら、create_function() 呼び出しを効果的に置き換えます。これにより、PHP 7.2 以降でもシームレスに作業を続けることができます。
以上がPHP 7.2 以降で非推奨となった PHP の `create_function()` の最良の代替手段は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。