【问题标题】:Passing arguments to a HMVC Module method using an array使用数组将参数传递给 HMVC 模块方法
【发布时间】:2012-02-03 02:46:49
【问题描述】:

在 Codeignitors 中使用 HMVC 组件时,我们可以像这样渲染特定的操作

echo modules::run('site/news/view', 1);

这里1是发送给视图方法的参数。

现在我有一个参数数组,我需要将其传递给函数

$params = array(1, "latest", "desc"); //suppose this are the parameters I received dynamically some how and dont knows its length

现在,我需要将这些参数分别发送为

echo modules::run('site/news/view', 1, "latest", "desc");

就像在其他函数中一样,call_user_func_array() 在这种情况下不起作用(我认为)。

【问题讨论】:

    标签: php arrays codeigniter parameter-passing hmvc


    【解决方案1】:

    嗯,不可能使现有功能按您需要的方式工作(除非经过修改)。您应该按照功能已经运行的方式进行编码。如果它不能按您需要的方式工作,请在允许的情况下修改源代码,或者编写您自己的版本,或扩展主类以满足您的需要。

    我可以很容易地回答这个问题,但这次我希望你也这样做。我之前已经回答了您的问题,并且刚刚查看了您的个人资料,6 个问题(1 个已接受)0 个答案,并且在大多数问题上没有您的意见。你自己好像什么都做不了。

    你依靠这个社区来完成你的工作,这太不公平了。所以除非你给我看你的一些作品,否则我拒绝回答。

    【讨论】:

      【解决方案2】:

      我创建了一个“seo 前端控制器”并且我(粗暴地)以这种方式解决了同样的问题

      if( count($params) == 2 ) {
          echo modules::run( 'controller/method', $params[0], $params[1] );
      } else if( count($params) == 3 ) {
          echo modules::run( 'controller/method', $params[0], $params[1], $params[2] );
      }
      

      【讨论】:

        猜你喜欢
        • 2017-07-10
        • 2012-03-28
        • 2017-12-01
        • 2011-04-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多