~~~
<?php
/**
* 正则获取页面title
* 自带判断https/http
* @author 无邪<m13883121541@163.com>
* @return array('title'=>title,'url'=>url) 一个关联数组,包含title,url
*/
function curlGetTitle($url=""){
if(!$url)return 'url为空';
$curl = curl_init();
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_TIMEOUT, 500);
preg_match("/^(http:\/\/|https:\/\/).*$/",$url,$match);
if($match['1']!='https://' && $match[1]!='http://'){
return '这不是一个链接';
}
//判断https加ssl验证 ,不验证ssl
if($match[1]=='https://'){
curl_setopt($curl, CURLOPT_FOLLOWLOCATION,1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
}
curl_setopt($curl, CURLOPT_URL, $url);
$data = curl_exec($curl);
// curl_error();
curl_close($curl);
$pos = strpos($data,'utf-8');
if($pos===false){$data = iconv("gbk","utf-8",$data);}
preg_match("/<title>(.*)<\/title>/i",$data, $title);
if(empty($title) || !isset($title)){ // title为空
return '该页面没有title!';
}
$res = array('title'=>$title[1],'url'=>$url);
return $res;
}
$url = 'https://baidu.com';
var_dump(curlGetTitle($url));
~~~
- PHP新特性
- 一些常识
- PHP常见header头
- Nginx配置文件
- 常用工具类
- PHP实现的一个时间帮助类
- PHP原生生成EXCEL
- PHP地理位置计算
- PHP获取服务器状态
- 驼峰转下划线
- 百度地图两点坐标距离计算
- 判断是否是url
- 邮件发送类
- 阿拉伯数字转化为大写
- 获取汉字首个拼音
- 根据身份证号获取星座
- 生成验证码类
- 生成唯一ID
- 身份证验证类
- PHP中文转拼音
- curl获取网页内容
- 快递查询api
- 快递API类
- 上传图片类
- 股票类
- 找回密码类
- 校验数据规则
- PHP获取收集相关信息
- 字符串截取助手函数
- 网页中提取关键字
- 检测浏览器语言
- PHP实现微信红包拆分算法
- 常用函数
- 微信相关
- 网络知识
- LX1 Laravel / PHP 扩展包视频教程
- THINKPHP5学习
- 高级查询
- Vue学习
- Vue全家桶
- Vue-CLI 3.x 自动部署项目至服务器
- Vue2全家桶
- Vue2全家桶之一:vue-cli(vue脚手架)超详细教程
- Vue2全家桶之二:vue-router(路由)详细教程,看这个就够了
- Vue2全家桶之三:vue-resource(不推荐)----axios(推荐)
- 前端相关
- sublime text3 配置less编译环境
- 服务器搭建相关
- supervisor
- Supervisor 安装与配置 Linux进程管理
- supervisor 永不挂掉的进程 安装以及使用
- Supervisor进程管理&开机自启
- php实现定时任务
- 使用sublime text3 连接sftp/ftp(远程服务器)
- Redis相关
- linux服务器重启后导致redis数据丢失
- 搜索引擎SEO
- 百度收录权威链接,指向真正需要收录的地址rel
- 软件相关
- sublime
- sublime Text3修改侧边栏的主题
- sublime和vscode比较
- Acrylic DNS Proxy 使用方法
- 技术类网址收藏