用 php 代码检测友链是否存在

前言

随着友链的增多,有些网站可能会不经意间就把你网站的友链去除掉了,所以就写了个 php 代码来检测友链是否存在

教程

  1. 首先在网站目录中新建一个 urls.txt 的文本。
  2. 根据友链网站的友链地址,比如有些网站首页并没有友链模块而是在某个页面中。我们就需要把完整的页面地址比如:https://xxxx.com/links.html 填写到 urls.txt 文本中。
  3. 新建一个 php 文件,把如下代码放到里面。
<?php

// 定义要搜索的关键词
$keyword = "何先生";

// 读取包含 URL 地址的文本文件
$urls = file("urls.txt", FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);

// 初始化结果数组
$result = array();

// 初始化 cURL 处理器
$ch = curl_init();

// 设置 cURL 选项
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 返回获取的输出而不是直接输出到页面
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); // 允许 cURL 追踪重定向
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10); // 设置超时时间为 10 秒

// 循环处理每个 URL
foreach ($urls as $url) {
    // 设置要访问的 URL
    curl_setopt($ch, CURLOPT_URL, $url);

    // 执行 cURL 请求并获取页面内容
    $sourceCode = curl_exec($ch);

    // 检查是否有错误发生
    if (curl_errno($ch)) {
        continue; // 如果发生错误,跳过当前 URL
    }

    // 检查页面内容中是否包含关键词
    if ($sourceCode !== false && strpos($sourceCode, $keyword) === false) {
        // 如果页面中不包含关键词,将 URL 添加到结果数组
        $result['data'][] = $url;
    }
}

// 关闭 cURL 处理器
curl_close($ch);

// 设置返回的 JSON 数据
if (empty($result['data'])) {
    $result['code'] = 404;
    $result['msg'] = 'No URLs found containing the keyword.';
    $result['data'] = []; // 确保即使没有数据,也能输出空数组
} else {
    $result['code'] = 200;
    $result['msg'] = 'Success';
}

// 调整顺序,先输出 code 和 msg,再输出 data
$output = array(
    'code' => $result['code'],
    'msg' => $result['msg'],
    'data' => $result['data']
);

// 将结果数组转换为 JSON 格式
$jsonResult = json_encode($output, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);

// 设置 HTTP 头部
header('Content-Type: application/json');

// 输出 JSON 数据
echo $jsonResult;

?>
© 版权声明
来源:新锐博客
THE END
打赏一根烟,继续保持。
点赞0打赏作者 分享
评论 抢沙发
头像
友好交流,请勿发纯表情,请勿灌水,违者封号喔
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容