gpt4 book ai didi

Php:在 for () 循环中创建函数

转载 作者:可可西里 更新时间:2023-11-01 00:11:49 24 4
gpt4 key购买 nike

有人知道我如何编写一个函数,它能够创建其他函数,使用变量的内容作为它的名称吗?

这是我在 php 中谈论的基本示例:

function nodefunctioncreator()
{
for ($i =1, $i < 10, $i++)
{
$newfunctionname = "Node".$i;
function $newfunctionname()
{
//code for each of the functions
}
}
}

有人知道可以让我这样做的语言吗?

最佳答案

您可以使用 create_function() 在 PHP 中创建匿名函数.您可以将每个匿名函数分配给变量 $newfunctionname 并使用 call_user_func() 执行它:

$newfunctionname = "Node".$i;
$$newfunctionname = create_function('$input', 'echo $input;');
// Creates variables named Node1, Node2, Node3..... containing the function

我认为这是您在 PHP 中所能获得的最接近的方法,而且看起来不像完全 hack。

我认为直接从变量定义函数是不可能的。这样做对我来说也不太好,因为您会用这些函数污染命名空间。如果匿名函数不起作用,则需要采用面向对象的方法。

关于Php:在 for () 循环中创建函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2111968/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com