【问题标题】:Is there something like JavaScript's apply function in PHP?PHP 中是否有类似 JavaScript 的 apply 函数?
【发布时间】:2011-10-26 23:30:31
【问题描述】:

在 JavaScript 中,我可以使用 apply 将数组作为参数传递给函数:

var f = function (n,m) {},
    args = [1,2];

f.apply(null, args);

我现在需要在 PHP 中做一些类似的事情,即将一组项目作为“单独”参数传递给函数

有什么办法可以做到吗?

【问题讨论】:

  • 你可以只解析数组作为参数
  • 当然,但是将它们作为单独的参数传递会更简洁。
  • 是吗?不明白为什么,我猜两者都有一席之地。
  • Dagon:在一个大型代码库上工作过,它几乎在任何地方都使用数组作为参数,我可以告诉你,当它是简单的参数时,它会容易得多。它是自我记录的一件事..
  • @NickyDeMaeyer 更多的工作来担心 2 岁的线程 :-)

标签: php javascript apply


【解决方案1】:

您可以使用函数call_user_func_array。只需传入你的函数(作为callback,通常是带有函数名称的字符串)和一个参数数组。

补充说明:对于静态函数,请使用forward_static_call_array

【讨论】:

  • 对了,不传字符串名,可以直接传函数的指针:call_user_func_array($callback /*, args */);
  • 是的,您可以使用任何callback-type value
猜你喜欢
  • 2013-12-11
  • 2011-03-27
  • 2011-08-01
  • 2014-03-08
  • 1970-01-01
  • 2011-08-26
  • 2012-07-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多