我正在用C#编写一个Web服务器,我正在尝试添加对PHP的支持。我主要工作,除了我不知道如何将GET和POST数据传递给PHP可执行文件时,我将文件传递给它。我一直在使用GET进行测试,因为我没有得到在服务器上处理的POST请求,并且我有通过分隔传递的参数字符串,但我不知道如何将信息提供给php分析器。一些提示将不胜感激。如何将GET和POST数据传递给php可执行文件?
回答
对于GET解释: 简单的方法(我发现):
php-cgi.exe <script-file-name> <parameter1>=<value1> <parameter2>=<value2> [...] <parameterN>=<valueN>
较硬的一种方法(通过PHP,CGI和Windows的命令行)会:
SET "QUERY_STRING=<parameter1>=<value1>&<parameter2>=<value2>&[...]&<paramterN>=<valueN>"
SET SCRIPT_NAME=<script-file-name>
SET REQUEST_METHOD=GET
SET REDIRECT_STATUS=0
php-cgi.exe
我假设会有一种方法来设置环境变量通过C#/ .net。 php-cgi.exe完成后,环境变量将不会被设置。在http://www.ietf.org/rfc/rfc3875.txt你可以设置CGI环境变量(和CGI一般)
更多信息。也可能是PHP的$ _SERVER变量文档。在PHP.net的PHP文档中也可以将PHP作为CGI运行。
你熟悉CGI?这通常是Web服务器如何执行任意外部程序。
当然,还有更现代的替代CGI,但(几乎)所有的web服务器和外部程序今天将支持CGI。
如果您在bash
或类似的外壳,试试这个:QUERY_STRING="fruitKind=apple&basketId=1000" php -q foo.php
。
c#中的Web服务器==没有可用的bash:precondition(不使用单声道) – jrharshath 2009-06-03 04:27:09
你有没有考虑将GET/POST数据作为STDIN传送给PHP可执行文件?即
系统( “回声” .GETOrPOSTData “> foobar.php”。);
你知道这是否工作?当然? – jrharshath 2009-06-03 04:27:40
- 1. 将数据传递给PHP的可执行文件
- 2. 将post数据传递给php函数
- 3. 通过命令行将GET/POST参数传递给php
- 4. PHP:如何将php cmd(从shell执行)传输到PHP GET和POST数组?
- 5. Python将参数传递给已运行的可执行文件
- 6. 从命令行将参数传递给可执行文件
- 7. 如何使用Javascript将GET和文件传递到PHP文件
- 8. 将输入数据传递给GET或POST的子数组
- 9. PHP POST和执行大文件上传
- 10. 通过GET或POST将javascript变量传递给php文件的函数?
- 11. 将POST数组传递给php函数
- 12. 如何通过AJAX传递GET数据和POST数据
- 13. 如何将POST数据传递给PHP-CGI?
- 14. 将参数传递给Python中的可执行文件
- 15. 使用powershell将空参数传递给可执行文件
- 16. Xcode不会将参数传递给C++可执行文件
- 17. 将CLI参数传递给可执行文件'go run'
- 18. 通过SSH执行POST或GET参数执行PHP文件?
- 19. 如何将ajax get请求数据传递给nodejs GET路由?
- 20. 如何将JSONObject传递给PHP文件?
- 21. 如何将参数传递给由C程序创建的可执行文件?
- 22. 如何将参数传递给nodemon(或node-supervisor)中的可执行文件?
- 23. 如何将两个矩阵作为参数传递给matlab可执行文件?
- 24. JS $ .get或$ .getScript将数据传递给文件
- 25. 将POST数据传递给FormWizard
- 26. 如何将GET响应数据传递到POST请求
- 27. 将POST数据传递到PHP函数
- 28. 将javascript值传递给php并将其POST(同一文件)
- 29. 将字符串传递给C#可执行文件
- 30. 将系统属性传递给可执行文件
您的链接似乎已损坏。 – starbeamrainbowlabs 2013-07-25 14:30:19