小编Got*_*tys的帖子

获取函数的参数名称

在PHP中考虑这个函数:

function test($name, $age) {}
Run Code Online (Sandbox Code Playgroud)

我需要以某种方式提取参数名称(用于自动生成自定义文档),以便我可以执行以下操作:

get_func_argNames('test');
Run Code Online (Sandbox Code Playgroud)

它会返回:

Array['name','age']
Run Code Online (Sandbox Code Playgroud)

这在PHP中甚至可能吗?

php

37
推荐指数
3
解决办法
2万
查看次数

发送POST请求而不等待响应?

我正在编写一个简单的REST服务,它响应来自客户端的请求.全部用PHP.

我担心的是,当我的服务器响应请求时,如果客户端发送回"ok"响应太慢,它最终可能会占用资源.

如何通过lib_curl发送POST请求,将其设置为不等待任何响应,而是在POST数据发送后立即退出?

这甚至可能吗?谢谢 !

php libcurl

28
推荐指数
3
解决办法
4万
查看次数

为什么我的SSI不起作用?

我遇到了将查询参数传递到我的zend框架应用程序中的SSI包含的问题.

我想在另一个PHP中包含一个PHP文件:

<!--#include virtual='/ssi/test.php?x=hello' -->
Run Code Online (Sandbox Code Playgroud)

如果我的hellotest.php(包含上面一行)驻留在我的文档根目录中,这将正确执行.

但是,如果我从template.phtml(不再是/public_html/hellotest.php)中做同样的事情(我在这个项目中使用Zend Framework),则调用test.php并执行它而不使用任何查询参数(在此case x =你好).没有查询参数从withitn my zend_framework模板传递到test.php.

这与zend框架使用.htaccess的方式有什么关系吗?这是我的.htaccess文件的副本(在web根目录中:/public_html/.htaccess)



SetEnv APPLICATION_ENV development

AddOutputFilter INCLUDES .php

RewriteEngine On

RewriteRule (.*/?)(.*css)$ combine.php?type=css&files=$1$2 [NC,L]
RewriteRule (.*/?)(.*js)$ combine.php?type=js&files=$1$2 [NC,L]

RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
Run Code Online (Sandbox Code Playgroud)

编辑:我最近发现,它会将参数传递到从URL中获取的SSI.因此,如果在我的浏览器中输入http://www.test.com/controller/action?param1=something,它实际上会将param1传递给SSI,但它将完全忽略我在SSI行上的参数.......有人有这方面的经验吗?

EDIT2 - 响应Tim Fountain:对,我的test.php是在public_html/ssi/test.php ..但是,我是从一个ZF模板文件中调用的,它总是由ZF解析.不知道你的意思是什么"只要它不被ZF解析".在我的test.php中我简单输出var_dump($ _ GET) - 那个php文件中没有别的东西,就是那一行.我从ZF模板文件中调用它的方式如下:<!--#include virtual='/ssi/test.php?x=hello' -->

.奇怪的是,如果我键入http://mydomain.com/controller/action/?x=hi_there,它实际上会将X参数传递给我的SSI包含行,并将覆盖我原来的那些(x =你好) .如果我没有在URL中传递任何内容,则不会将任何内容传递给SSI.

php zend-framework apache2

6
推荐指数
1
解决办法
1310
查看次数

Document.Domain疯狂

我花了一个月的时间在这个问题上研究互联网,但还没有找到答案.我的代码执行以下操作(所有Javascript).

假设我在mydomain.com上有一个test.html

  1. 头部的第一件事我设置了document.domain ='mydomain.com';

  2. 然后,动态创建iframe,将src设置为"subdomain.mydomain.com/test2.html"

  3. 将iframe附加到DOM

  4. subdomain.mydomain.com/test2.html:头部的第一件事:document.domain ='mydomain.com';

  5. test2.html有on_dom_ready事件,尝试通过window.parent与父进行通信

适用于所有浏览器.甚至在IE6中!唯一的问题是:当我在IE中刷新页面时,我得到访问被拒绝错误.

我可以摆脱这个错误的唯一方法是在调用window.parent之前等待12秒.甚至没有5秒的帮助,我真的要等12秒.对我来说完全是无稽之谈.

有人有这方面的经验吗?

javascript refresh cross-domain

5
推荐指数
1
解决办法
2330
查看次数