接着上篇文章继续代码的讲解,上次的代码中引入了require.PHP,这个玩意是干啥的呢,今天我们就来说下
<?PHP
//所需要的所有引入文件都放这里,方便统一管理,以后的PHP文件里只需要引入这一个就ok了
//请求相关
require_once("../commons/transfer.PHP");
//读取配置文件相关
require_once("../src/read_config.PHP");
//测试用例类相关
require_once("../testcases/lhl_test.PHP");
?>
这个不是必须的,你也可以选择在需要的地方引入需要的文件,我们这里之所以抽离成为一个就是为了方便维护,以后万一有变动只需维护这一个PHP文件即可,其余的都不需要去关心的。
transfer.PHP内容如下,主要就是把get和post请求封装为class,以后有其他的方法你也可以在此封装。具体的内容在之前的文章中已经讲解过,此处不再重复。
<?PHP
class Transfer
{
public static function get($url, $extraheader = array())
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, $extraheader);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 获取数据返回
$output = curl_exec($ch);
curl_close($ch);
return $output;
}
public static function post($url, $post_params, $extraheader = array())
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_params );
curl_setopt($ch, CURLOPT_HTTPHEADER, $extraheader);
//如果是https的,可能需要加上下面的两行
#curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
#curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 获取数据返回
$output = curl_exec($ch);
curl_close($ch);
return $output;
}
}
?>
read_config.PHP内容如下,主要是完成读取host配置文件,这个也是可选的,你也可以写在代码里,我们提取出来主要是为了方便,比如你在测试环境用的一个host,到了线上是另外一个host,那么我们只需要维护对应的文件即可。
<?PHP
class ReadConfig
{
var $doc;
public function __construct()
{
//load配置文件
$this->doc=new DOMDocument();
$this->doc->load("../src/config.xml");
}
public function get_host($type)
{
//读取配置文件,选择host
foreach($this->doc->getElementsByTagName("host") as $item)
{
$list = $item->getElementsByTagName( $type );
foreach ( $list as $list1 )
{
$value = $list1->nodeValue;
break;
}
}
return $value;
}
}
?>
<?xml version="1.0" encoding="UTF-8"?>
<Setting>
<host>
<online>http://v.juhe.cn/laohuangli/d</online>
<host1>http://127.0.0.1</host1>
</host>
</Setting>
资料获取
后续涉及到的代码可以通过如下方式获取(代码会逐步发放,不要着急):点击链接加入群 522720170(共享里有):https://jq.qq.com/?_wv=1027&k=5C08ATe
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。