PHP返回值判断问题 从一台服务器POST数据到另一台服务器,处理以后我用ECHO 1 返回但是我接受到以后 用if($results==1)判断不成功,输出$results 确实为1这种情况应该怎么判断返回值 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 var_dump($results)将输出结果给我看看另外你是怎么取得这个返回值的?show me the code. string(7) "1"fputs($fp, sprintf("POST %s%s%s HTTP/1.0\n", $url['path'], $url['query'] ? "?" : "", $url['query'])); fputs($fp, "Host: $url[host]\n"); fputs($fp, "Content-type: application/x-www-form-urlencoded\n"); fputs($fp, "Content-length: " . strlen($encoded) . "\n"); fputs($fp, "Connection: close\n\n"); fputs($fp, "$encoded\n"); $line = fgets($fp,1024); if (!eregi("^HTTP/1\.. 200", $line)) return "couldn't eregi url"; $results = ""; $inheader = 1; while(!feof($fp)) { $line = fgets($fp,1024); if ($inheader && ($line == "\n" || $line == "\r\n")) { $inheader = 0; } elseif (!$inheader) { $results .= $line; } } fclose($fp); return $results; 怎么会变成 string了啊 晕 变成string是正常的,问题是 1 的长度怎么是7呢? string(7) "1" 表示你的返回数据包含了 2 个 BOM 头,只有那个 1 是你 “用ECHO 1 返回”的你可以用 print_r(unpack('H*', $results)); 观察一下因该是 efbbbfefbbbf30,而 efbbbf 就是 utf-8 编码文件的 BOM 头 BOM头的问题...我猜我猜我猜猜猜... 那我改怎么办啊 我没做过WEB程序,一直做客户端的,现在是赶鸭子上架啊 相关文件都另存为无BOM UTF-8 编码输出的时候也指定一下编码方式吧header("Content-type: text/html; charset=utf-8"); 关于php 正则表达式的问题 PHP无刷新跳转页面 PHP的调试就是个杯具... 难道这不是传说中的构造函数吗? mysql一表连多表,多级关联能查询吗? 相关类的认识 我看了本站的关于咱国龙芯的研制情况,我下定决心要转移到LINUX系统上,准备学PHP? 如何在服务器端执行对数据库的操作? 关于ue支持php的问题 有关PHP4的配置问题! 请教zend studio运行时报错的问题,谢谢 mysql如何打印数组中最新的购买的产品信息
将输出结果给我看看另外你是怎么取得这个返回值的?show me the code.
fputs($fp, "Host: $url[host]\n");
fputs($fp, "Content-type: application/x-www-form-urlencoded\n");
fputs($fp, "Content-length: " . strlen($encoded) . "\n");
fputs($fp, "Connection: close\n\n"); fputs($fp, "$encoded\n");
$line = fgets($fp,1024);
if (!eregi("^HTTP/1\.. 200", $line)) return "couldn't eregi url"; $results = ""; $inheader = 1;
while(!feof($fp))
{
$line = fgets($fp,1024);
if ($inheader && ($line == "\n" || $line == "\r\n"))
{
$inheader = 0;
}
elseif (!$inheader)
{
$results .= $line;
}
}
fclose($fp);
return $results;
你可以用 print_r(unpack('H*', $results)); 观察一下
因该是 efbbbfefbbbf30,而 efbbbf 就是 utf-8 编码文件的 BOM 头
相关文件都另存为无BOM UTF-8 编码
输出的时候也指定一下编码方式吧
header("Content-type: text/html; charset=utf-8");