Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
网页上的PHP XML或Json选项_Php_Xml_Json - Fatal编程技术网

网页上的PHP XML或Json选项

网页上的PHP XML或Json选项,php,xml,json,Php,Xml,Json,我使用get参数,因此用户可以选择XML输出或Json。 根据他们的选择,它在同一页面上运行json函数或xml函数。 然而,尽管我做出了努力,但即使在选择json时从未告诉代码输入XML函数,它仍然运行标题(“内容类型:text/XML”)在XML函数中。它不运行任何其他操作。 问题是当它试图写入: header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); header("Last-Modified: " . gmdate( "D, d M Y H:

我使用get参数,因此用户可以选择XML输出或Json。 根据他们的选择,它在同一页面上运行json函数或xml函数。 然而,尽管我做出了努力,但即使在选择json时从未告诉代码输入XML函数,它仍然运行标题(“内容类型:text/XML”)在XML函数中。它不运行任何其他操作。 问题是当它试图写入:

header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); 
header("Last-Modified: " . gmdate( "D, d M Y H:i:s" ) . "GMT"); 
header("Cache-Control: no-cache, must-revalidate"); 
header("Pragma: no-cache");
header("Content-type: application/json");
在json函数中,它给了我一个错误,即头已经被更改(尽管我从未执行过XML函数)。 我不得不通过制作一个单独的网页来弥补这一点,一个用于json,一个用于xml。但是,我希望他们转到相同的URL,并获取选择json或xml的权限,而不出现任何错误。
有更简单的方法吗?

检查标题上的文档。您可能需要设置

header("Content-type: application/json", true);
                                         ####

确保新的内容类型标头替换可能已设置的内容类型标头。

我们可能需要查看您的完整代码,而不仅仅是
标头
调用,但如果尝试在
标头
方法调用之前输出内容,通常会出现错误。例如,JS之前的xml内容在headers上,您需要提供您收到的确切错误消息。我假设您告诉您收到的错误不是真正的错误。请仔细检查。我认为这里不是这种情况,但请更清楚地说明我认为您想说的内容。(发送的标题无法再更改)