公共函数

//根据祖先找子代
 1 function getSonIdByCateId($cate_id,&$arr){
 2     $sql = "select id from category where pid = $cate_id";
 3     $rows = getAll($sql);
 4     if($rows){
 5         foreach ($rows as $v){
 6             $arr[] = $v['id'];
 7             getSonIdByCateId($v['id'],$arr);
 8         }
 9     }
10 
11     return $arr;
12 }

 //curl函数获取网址状态码

function getHttpState($url)
{
//初始化一个新的会话,返回一个cURL句柄
$ch = curl_init ();
//需要获取的 URL 地址,也可以在curl_init() 初始化会话的时候。
curl_setopt($ch, CURLOPT_URL, $url);
//允许 cURL 函数执行的最长秒数。
curl_setopt($ch, CURLOPT_TIMEOUT, 200);
//启用时会将头文件的信息作为数据流输出。
curl_setopt($ch, CURLOPT_HEADER, FALSE);
//true 时将不输出 BODY 部分。同时 Mehtod 变成了 HEAD。修改为 false 时不会变成 GET。
curl_setopt($ch, CURLOPT_NOBODY, FALSE);
//全部数据使用HTTP协议中的 "POST" 操作来发送。 要发送文件,
#curl_setopt( $ch, CURLOPT_POSTFIELDS, "username=".$username."&password=".$password );
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
// true 时将会根据服务器返回 HTTP 头中的 "Location: " 重定向
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, FALSE);
//HTTP 请求时,使用自定义的 Method 来代替"GET"或"HEAD"。对 "DELETE" 或者其他更隐蔽的 HTTP 请求有用。
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
//执行一个curl 执行给定的cURL会话。
curl_exec($ch);
//获取一个cURL连接资源句柄的信息 最后一个收到的HTTP代码
return curl_getinfo($ch,CURLINFO_HTTP_CODE);
}

//无限极分类
 1 function unlimit_category($rows)
 2 {
 3     $arr=[];
 4     foreach ($rows as $row)
 5         $arr[$row['id']]=$row;
 6     $brr=[];//总数组一级分类
 7     foreach ($arr as $v){
 8         if (isset($arr[$v['pid']])){
 9             $arr[$v['pid']]['son'][]=&$arr[$v['id']];//一级分类下的分类
10         }else{
11             $brr[]=&$arr[$v['id']];
12         }
13     }
14     return $brr;
15 }

 

// 根据当前的id 查询 顶级id 一级id

 1 function getParentIdByCateId($tablename,$cate_id,$filed="*"){
 2     static $arr = [];
 3     $sql = "select $filed from $tablename where id = $cate_id";
 4     $row = getOne($sql);
 5     if($row && $row['pid'] > 0){
 6         $arr[] = $row['id'];
 7         // 继续递归查询
 8         getParentIdByCateId($tablename,$row['pid']);
 9     }else{
10         $arr[] = $row['id'];
11     }
12     return $arr;
13 
14 }

 

 
posted @ 2022-01-11 20:28  旅行者无声  阅读(35)  评论(0)    收藏  举报