返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >PHP截取两个字符中间内容,php获取文章链接,php的curl模拟请求,php的随机字符,php的获取IP,php的生成随机单号
  • 442
分享到

PHP截取两个字符中间内容,php获取文章链接,php的curl模拟请求,php的随机字符,php的获取IP,php的生成随机单号

phptcp/ip 2023-09-01 15:09:13 442人浏览 安东尼
摘要

1 截取文章里的链接 $pattern = '~[a-z]+://\S+~'; preg_match_all($pattern, $link, $out) if (empty($out[0])

1 截取文章里的链接

  $pattern = '~[a-z]+://\S+~';  preg_match_all($pattern, $link, $out)  if (empty($out[0])) exit('请输入带有链接的文本');  $link = $out[0][0];        

2 curl模拟浏览器请求的方法

最好使用 GuzzleHttp 插件

composer require guzzlehttp/guzzle
  $headers = [                'cookie' => '',                'user-agent' => 'Mozilla/5.0 (windows NT 10.0; Win64; x64) AppleWEBKit/537.36 (Khtml, like Gecko) Chrome/86.0.4240.198 Safari/537.36',            ];            $client = new Client();            $response = $client->get($link,['headers' => $headers]);            $data = $response->getBody()->getContents();

curl 方式

   $cookie = "";   $request_link='';//请求链接        $post_data = '';//请求数据        $referer='';//刷新链接        $agent='';//代理        $header=[];//头部信息        $ch = curl_init();        curl_setopt($ch, CURLOPT_URL,$request_link);        curl_setopt($ch,CURLOPT_HTTPHEADER,$header);        curl_setopt($ch, CURLOPT_COOKIE, $cookie);        curl_setopt($ch, CURLOPT_REFERER,$referer);        curl_setopt($ch,CURLOPT_USERAGENT,$agent);        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);        curl_setopt($ch, CURLOPT_ENcoding, 'gzip,deflate');        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);        curl_setopt($ch, CURLOPT_TIMEOUT, 5);        curl_setopt($ch, CURLOPT_POST, 1);        curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);        $output = curl_exec($ch);        curl_close($ch);        return $output;

3 通过域名获取IP的方法

gethostbyname($host)

4 随机生成字符

 $chars = [            1 => '0123456789abcdefghigklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',            2 => '123456789',            3 => 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_ []{}<>~`+=,.;:/?|',            4 => 'abcdefghigklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'        ];        $str = '';        for ($i = 0; $i < $length; $i++) {            $str .= $chars[$type][mt_rand(0, strlen($chars[$type]) - 1)];        }        return $str;

5 随机生成订单号

   $y = date('y');        $m=date('m');        $d=date('d');        $h=date('h');        $i=date('i');        $s=date('s');        $date=ceil($y+$m+$d).ceil($h+$i+$s);        $digits = intval($digits);        if ($digits < 14) return '随机单号大于14字符';        $digits = $digits - strlen($date) - strlen($prefix);        if ($digits < 0) return '随机单号生成失败';        $rand = '';        $num = floor($digits / 10);        for ($i = 0; $i < $num; $i++) {            $rand .= str_pad(mt_rand(1, (int)9999999999), 10, '0', STR_PAD_LEFT);        }        if ($digits % 10 != 0) {            $rand .= str_pad(mt_rand(1, (int)substr(9999999999, 0, $digits - ($num * 10))), $digits - ($num * 10), '0', STR_PAD_LEFT);        }        $order_number = $prefix . $date . $rand;        return $order_number;

6 截取字符串,两个字符中间的内容

 $string = ' ' . $string;    $n = strpos($string, $start);    if ($n == 0) return '';    $n += strlen($start);    $len = is_null($end)?strlen($string)-$n:strpos($string, $end, $n) - $n;    return substr($string, $n, $len);

来源地址:https://blog.csdn.net/weixin_39687736/article/details/131693838

--结束END--

本文标题: PHP截取两个字符中间内容,php获取文章链接,php的curl模拟请求,php的随机字符,php的获取IP,php的生成随机单号

本文链接: https://lsjlt.com/news/388810.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作