PHP call_user_func_array - 获取函数内的整个数组
我正在尝试创建一个具有 SEO 友好 URL 的内容管理系统。我的问题是,通过 htaccess,我使我的 URL 通过 $_GET['url']
传递。
为了获取“call_user_func_array”的参数,我只是通过 /
爆炸 $_GET['url']
我允许我的用户为 SEO 友好的 URL 创建短标签 < em>WITH 斜杠 (/
),因此它们的短标签有时会作为更多参数传递。有没有办法在调用类/函数中再次收集所有参数?
I am trying to create a content management system with SEO friendly URLs .. My problem is, that with htaccess I have made my URLs passed through $_GET['url']
.
To get the arguments for "call_user_func_array" I am just exploding $_GET['url']
by /
I am allowing my users to create shorttag to the SEO-friendly URLS WITH slash (/
) and therefore their shorttag will sometimes be passed as more arguments. Is there a way to collect all the arguments again inside the call class/function?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
将为您提供传递给函数的所有参数的数组。这实际上是在撤销您使用 call_user_func_array() 所做的事情;
will give you an array of all arguments passed into the function. That's actually undoing what you've done by using
call_user_func_array()
;选项 1(将 array(array) 传递给
call_user_func_array
):选项 2(使用
func_get_args
):选项 3(使用
call_user_func
) > 而不是call_user_func_array
):也许选项 3 最适合您。然而,当您想要向函数添加更多参数时,可扩展性会受到限制,但这对于选项 2 来说也是如此。
Option 1 (passing array(array) to
call_user_func_array
):Option 2 (using
func_get_args
):Option 3 (using
call_user_func
instead ofcall_user_func_array
):Perhaps option 3 is the most appropriate for you. However you are limited in extensability when you want to add more arguments to function, but this is also true for option 2.