标签:ram mac cal asi apc timezone efault service hash
1,php获得服务器时间
$time= date(‘Y-m-d H:i‘); echo $time;
一般写法如上,但发现打印出来的时间小时数总数不对,和机器的时间差几个小时。查资料发现,要设定时区。
改为以下代码后正常。猜想可能是PHP.ini中设置的时区不对。
date_default_timezone_set(‘Asia/Shanghai‘); //必要 $time= date(‘Y-m-d H:i‘); echo $time;
2,Web Service调用时,参数名称的大小写一定要准确
$param = array( ‘SQL‘=>$SQL, ‘key‘=>hash_hmac(‘sha256‘, $time, ‘secret‘, false), ); $webservice_url = "http://120.25.XX.XX:3000/service.asmx?WSDL";//webservice地址 $client = new SoapClient($webservice_url); try{ $arr = $client->__soapCall(‘FunctionSQL‘,array(‘parameters‘ => $param));//调用其中方法 }catch(Exception $e){ }
以上web服务调用,我调试了很久,总是报错,说验证错误。最后发现就是参数名称key的第一个字母要大写,改为Key后正常。
标签:ram mac cal asi apc timezone efault service hash
原文地址:http://www.cnblogs.com/jackkwok/p/6905291.html