一个小老弟需要这个功能 然后就抽空写了一个,很简单,直接上代码了。
先看图
下面就是代码了
<?php
header("Content-type: text/html; charset=utf-8");
class Wechat
{
public function fmt($url)
{
$data = $this->get_url($url);
# 正则
preg_match_all('/<meta property="twitter:image" content="(.*?)" \/>/U', $data, $wechat_fmt);
return $wechat_fmt[1][0];
}
public function get_url($url)
{
# 初始化curl()
$ch = curl_init();
# 设置curl
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, false);
# 要求结果为字符串且输出到屏幕上
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
# 规避SSL验证
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
# 跳过HOST验证
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
# 运行curl
$data = curl_exec($ch);
curl_close($ch);
# 中文转码
$data = mb_convert_encoding($data, 'UTF-8', 'UTF-8,GBK,GB2312,BIG5');
return $data;
}
}
$wechat_fmt = new Wechat();
# 不带头部信息
$url = $_GET['wechatUrl'];
$arr = $wechat_fmt->fmt($url);
$arr = $arr ?? 'https://i.b2b168.com/images/2021/gjfz20210319.jpg';
echo "<p><a href=" . $arr . " target='_blank'>访问图片地址</a><br>" . $arr . "</p>";
echo "<img src=" . $arr . ">";
使用方法:
域名/wechat.php?wechatUrl=公众号文章链接
大哥牛逼
啊哈哈哈