php实现登录tplink WR882N获取IP和重启的方法_php技巧

本文实例讲述了php实现登录tplink WR882N获取IP和重启的方法。分享给大家供大家参考,具体如下:

服务器一上传大数据tplink WR882N就容易卡住, 然后上不了网. 打算在服务器定时检测, 如发现连续10次无法访问指定网站, 则自动执行重启操作(该部分未实现, 请自己添加).

gg了一圈发现只有旧版的tplink登录脚本, 试了很久没成功 – 家里的tplink 740N倒是没问题.

于是只能直接写了, 简单的脚本如下, 可自己扩展

该脚本只适用WR882N, 其他型号未测试.

<?php
// TPLINK WR882N 管理脚本
function getContent($url)
{
  // 解悉url
  $temp = parse_url($url);
  $query = isset($temp['query']) ? $temp['query'] : '';
  $path = isset($temp['path']) ? $temp['path'] : '/';
  $header = array (
    "POST {$path}?{$query} HTTP/1.1",
    "Host: {$temp['host']}",
    "Content-Type: text/xml; charset=utf-8",
    'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
    'Cookie: Authorization=Basic ' . base64_encode("admin:admin"),  // 注意这里的cookie认证字符串
    "Referer: http://{$temp['host']}/",
    'User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SV1)',
    "Content-length: 380",
    "Connection: Close"
  );
  $curl = curl_init(); // 启动一个CURL会话
  curl_setopt($curl, CURLOPT_URL, $url); // 要访问的地址
  curl_setopt($curl, CURLOPT_HTTPHEADER, $header); //设置头信息的地方
  curl_setopt($curl, CURLOPT_TIMEOUT, 60); // 设置超时限制防止死循环
  curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容
  curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回
  $content = curl_exec($curl); // 执行操作
  curl_close($curl);
  return $content;
}
function getIp(){
  $content = getContent("http://192.168.1.1/userRpm/StatusRpm.htm");
  preg_match('/wanPara=new Array\((.+?)<\/script>/s',$content,$all);
  $ip = "0";
  if(!empty($all[1])){
    $data = trim($all[1]);
    $data = str_replace("\r\n","",$data);
    $data = explode(",",$data);
    $ip = str_replace('"','',$data[2]);
    $ip = trim($ip);
  }
  return $ip;
}
function reboot(){
  $url = "http://192.168.1.1/userRpm/SysRebootRpm.htm?Reboot=%D6%D8%C6%F4%C2%B7%D3%C9%C6%F7";
  getContent($url);
}
$info = getIp();
echo $info;

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP网络编程技巧总结》、《php curl用法总结》、《php socket用法总结》、《php正则表达式用法总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP数学运算技巧总结》、《php面向对象程序设计入门教程》、《PHP数据结构与算法教程》、《php程序设计算法总结》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索php
, 登录
, 重启
, 获取ip
tplink
tplinktlwr882n设置、tplinkwr882n、tplinktlwr882n配置、tplink882n最新固件、tplink882n,以便于您获取更多的相关知识。

时间: 2024-11-03 01:11:16

php实现登录tplink WR882N获取IP和重启的方法_php技巧的相关文章

php获取YouTube视频信息的方法_php技巧

本文实例讲述了php获取YouTube视频信息的方法.分享给大家供大家参考.具体分析如下: YouTube的视频地址格式 https://www.youtube.com/watch?v=[VIDEO_ID] 例子:https://www.youtube.com/watch?v=psvkyf3PzjE 复制代码 代码如下: //根据video id 获取YouTube视频信息  function getYouTubeInfo($video_id){      $content = file_get

php限制ip地址范围的方法_php技巧

本文实例讲述了php限制ip地址范围的方法.分享给大家供大家参考.具体如下: 只有在限定范围内的ip地址才能访问 function get_real_ipaddress() { if (!empty($_SERVER['HTTP_CLIENT_IP'])) { return $_SERVER['HTTP_CLIENT_IP']; } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { return $_SERVER['HTTP_X_FORWAR

php获取flash尺寸详细数据的方法_php技巧

本文实例讲述了php获取flash尺寸详细数据的方法.分享给大家供大家参考,具体如下: 有时我们的网站需要获取flash文件的尺寸信息,php有一个内置的函数可以实现,这个函数就是getimagesize,他可以返回图像的尺寸及文件类型的一个数组. 如果你还想着通过解析swf文件头信息来获取flash文件的尺寸信息,那真的有点走远了,因为从PHP 4开始已经内置getimagesize函数来做这个事,其功能测定任何 GIF,JPG,PNG,SWF,SWC,PSD,TIFF,BMP,IFF,JP2

php从给定url获取文件扩展名的方法_php技巧

本文实例讲述了php从给定url获取文件扩展名的方法.分享给大家供大家参考.具体实现方法如下: <?php /** * 给定url,获取文件后缀 * @param string $url * @return string */ function getUrlPostfix ($url) { $url_arr = explode('.', $url); $postfix = $url_arr[count($url_arr) - 1]; $substr = substr($postfix, 0, 3

php简单获取文件扩展名的方法_php技巧

本文实例讲述了php简单获取文件扩展名的方法.分享给大家供大家参考.具体实现方法如下: <?php function get_file_extension($file_name) { /* may contain multiple dots */ $string_parts = explode('.', $file_name); $extension = $string_parts[count($string_parts) - 1]; $extension = strtolower($exten

PHP获取数组最大值下标的方法_php技巧

本文实例讲述了PHP获取数组最大值下标的方法.分享给大家供大家参考.具体实现方法如下: <?php $hots = array('8213'=> 0,'8212'=> 100,'8172'=> 10008); $key = array_search(max($hots),$hots); echo $key; ?> 运行结果为:8172 希望本文所述对大家的php程序设计有所帮助. 以上是小编为您精心准备的的内容,在的博客.问答.公众号.人物.课程等栏目也有的相关内容,欢迎继续

PHP生成和获取XML格式数据的方法_php技巧

本文实例讲述了PHP生成和获取XML格式数据的方法.分享给大家供大家参考,具体如下: 在做数据接口时,我们通常要获取第三方数据接口或者给第三方提供数据接口,而这些数据格式通常是以XML或者JSON格式传输,这里将介绍如何使用PHP生成XML格式数据供第三方调用以及如何获取第三方提供的XML数据. 生成XML格式数据 我们假设系统中有一张学生信息表student,需要提供给第三方调用,并有id,name,sex,age分别记录学生的姓名.性别.年龄等信息. CREATE TABLE `studen

PHP获取文件行数的方法_php技巧

本文实例讲述了PHP获取文件行数的方法.分享给大家供大家参考.具体分析如下: 提供两种实现方法,虽然第二种简单易懂,但是第一种效率最好 第一种: <?php $file_path = 'xxx.txt'; //文件路径 $line = 0 ; //初始化行数 //打开文件 $fp = fopen($file_path , 'r') or die("open file failure!"); if($fp){ //获取文件的一行内容,注意:需要php5才支持该函数: while(s

PHP自定义函数获取搜索引擎来源关键字的方法_php技巧

本文实例讲述了PHP自定义函数获取搜索引擎来源关键字的方法.分享给大家供大家参考,具体如下: 获取搜索引擎来源关键字的函数: function getKeywords() { // 搜索引擎关键字映射 static $host_keyword_map = array( 'www.baidu.com' => 'wd', 'v.baidu.com' => 'word', 'image.baidu.com' => 'word', 'news.baidu.com' => 'word', '