有木有大佬能告知一下这段代码是什么意思?

发布于 2022-09-12 03:37:33 字数 2864 浏览 17 评论 0

function bijia($key, $page = 1, $price1 = 0, $price2 = 0, $order = '')
{
    if (DDMALL == 1)
        return false;
    $url = 'http://xx.网址.com/s.aspx?id=71&key=' . urlencode($key) . '&PageID=' . $page;
    if ($price2 < $price1)
        return false;
    if ($price1 > 0) {
        $url .= '&price1=' . $price1;
    }
    if ($price2 > 0) {
        $url .= '&price2=' . $price2;
    }
    if ($order != '') {
        $url .= '&orderby=' . $order;
    }
    $agent     = 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.0.3705; .NET CLR 1.1.4322)';
    $md5       = md5($url);
    $catch_dir = DDROOT . '/data/temp/bijia/' . substr($md5, 0, 2) . '/' . substr($md5, 2, 2) . '/' . $md5 . '.json';
    if (file_exists($catch_dir) && 0) {
        $goods = file_get_contents($catch_dir);
        $goods = dd_json_decode($goods, 1);
    } else {
        if (function_exists('curl_exec')) {
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($ch, CURLOPT_USERAGENT, $agent);
            $a = curl_exec($ch);
        } else {
            $opts    = array(
                'http' => array(
                    'method' => "GET",
                    'header' => "User-Agent: " . $agent
                )
            );
            $context = stream_context_create($opts);
            $a       = file_get_contents($url, false, $context);
        }
        $a = compact_html($a);
        preg_match('/共有(\d+)条记录/', $a, $b);
        $total = $b[1];
        preg_match('/<divid="listpro"(.*)<divid="dispage"style="margin:20px8px;width:600px;/', $a, $html);
        preg_match_all('/<divclass="bjline">(.*?)<divclass=\'clear\'><\/div>/', $html[1], $a);
        $goods = array();
        foreach ($a[1] as $k => $v) {
            preg_match('#<ahref=".*&url=(.*)"target="_blank">.*\'"src="(.*)"class=\'sppicclass\'>.*class="f14sc">(.*)</a><spanstyle.*align=\'absmiddle\'>(.*?)</div></div><divclass=.*<fontclass=\'priceword\'>(.*)</font></div><divclass#', $v, $a);
            if ($a[1] != '') {
                $goods[$k]['url']   = urldecode($a[1]);
                $goods[$k]['img']   = $a[2];
                $goods[$k]['title'] = str_replace('<fontcolor="red">', '<font color="red">', $a[3]);
                $goods[$k]['mall']  = preg_replace('/\(第三方\)|\(自营\)/', '', $a[4]);
                $goods[$k]['price'] = $a[5];
            }
        }
        $goods['total'] = $total;
        create_file($catch_dir, dd_json_encode($goods));
    }
    return $goods;
}

在这部分代码第5行,$url赋值一个网址,然后还用key,请问这段代码是什么意思?(如果能整个代码块大概说明一下更好)而且在下面$url还用$md5加密,这是不是后门啊?如果这是后门怎么进行处理呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

谈场末日恋爱 2022-09-19 03:37:33

只不过是模拟火狐浏览器向指定的url发起请求,从该请求的响应体中抓取 商品标题,价格等相关信息,并以json格式存入用md5加密该url的字符串作为文件名的.json文件内。

分開簡單 2022-09-19 03:37:33

($url还用$md5加密)这句话,这个应该是发送到这个网址的,然后这个网址可能需要使用key来验证来自于哪里

不清楚这个是不是后门

它读取这个这个文件(`
DDROOT . '/data/temp/bijia/' . substr($md5, 0, 2) . '/' . substr($md5, 2, 2) . '/' . $md5 . '.json';
`)的一些信息,你要确认 这个文件是否是重要的信息,也可能这个只是用来采集一些网站数据信息

笑饮青盏花 2022-09-19 03:37:33

建议把写这部分代码的人拖出去枪毙【手动滑稽】

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文