PHP函数tempnam()

该函数相关介绍:http://php.net/manual/zh/function.tempnam.php

tempnam函数能够在指定目录产生一个具有唯一文件名的文件名。通常应用于自定义SESSION文件名的情况。

这个函数还是非常有用的。例如如果我们要使用curl伪造一个session,那么就可以这样用。

相关资料:http://www.phpjx.com/show_5919.html

<?php
    function vlogin($url,$request){ 
    session_start();
    $cookie_jar = tempnam('./tmp','cookie');//在当前目录下生成一个随机文件名的临时文件 
    $ch = curl_init($url); //初始化curl模块 
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_POST, 1);//post方式提交 
    curl_setopt($ch, CURLOPT_POSTFIELDS, $request);//要提交的内容 
    //把返回$cookie_jar来的cookie信息保存在$cookie_jar文件中 
    curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_jar); 
    $xianshi=curl_exec ($ch); 
    curl_close($ch); //get data after login   
    $curl="http://phpjx.local.com/login/session/show.php";//要抓取数据的页面,该页面有session判断权限
    $ch=curl_init($curl);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_POST, 1); 
    curl_setopt($ch, CURLOPT_POSTFIELDS, "sitename=phpjx.com&siteurl=http://www.phpjx.com");
    curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_jar);
    $xianshi=curl_exec($ch);
    curl_close($ch);
    return $xianshi;
    }
    $url="http://phpjx.local.com/login/session/check.php";//我们向该页面传值,用来生成session,接着传递到想要抓取的那个页面
    $request="username=yansy";
    echo vlogin($url, $request)
?>


可以自行百度一下相关资料。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。