点击换验证码

  1. <a href="javascript:;"><img onclick="this.src='{:U('Reglog/vcode')}?'+Math.random()" width="" src="{:U('Reglog/vcode')}" /></a>

TP上一条下一条

  1. $prev=$artical->where("id < $id")->where(array('cid'=>$cid))->order('id desc')->find();
  2.  
  3. $next=$artical->where("id > $id")->where(array('cid'=>$cid))->order('id asc')->find();
  1. <if condition='$next'>
  2. 下一篇:<a href='{:U("Artical/index",array(id=>$next['id']))}' class="f6">{$next.name}</a><br />
  3. <else />
  4. <strong>下一篇:没有了</strong><br/>
  5. </if>
  6.  
  7. <if condition='$prev'>
  8. 上一篇:<a href='{:U("Artical/index",array(id=>$prev['id']))}' class="f6">{$prev.name}</a>
  9. <else />
  10. <strong>上一篇:没有了</strong>
  11. </if>

curl 模拟POST、GET请求 可以用于访问接口

  1. //参数1:访问的URL,参数2:post数据(不填则为GET),参数3:提交的$cookies,参数4:是否返回$cookies
  2. function curl_request($url,$post='',$cookie='', $returnCookie=){
  3. $curl = curl_init();
  4. curl_setopt($curl, CURLOPT_URL, $url);
  5. curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)');
  6. curl_setopt($curl, CURLOPT_FOLLOWLOCATION, );
  7. curl_setopt($curl, CURLOPT_AUTOREFERER, );
  8. curl_setopt($curl, CURLOPT_REFERER, "http://XXX");
  9. if($post) {
  10. curl_setopt($curl, CURLOPT_POST, );
  11. curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post));
  12. }
  13. if($cookie) {
  14. curl_setopt($curl, CURLOPT_COOKIE, $cookie);
  15. }
  16. curl_setopt($curl, CURLOPT_HEADER, $returnCookie);
  17. curl_setopt($curl, CURLOPT_TIMEOUT, );
  18. curl_setopt($curl, CURLOPT_RETURNTRANSFER, );
  19. $data = curl_exec($curl);
  20. if (curl_errno($curl)) {
  21. return curl_error($curl);
  22. }
  23. curl_close($curl);
  24. if($returnCookie){
  25. list($header, $body) = explode("\r\n\r\n", $data, );
  26. preg_match_all("/Set\-Cookie:([^;]*);/", $header, $matches);
  27. $info['cookie'] = substr($matches[][], );
  28. $info['content'] = $body;
  29. return $info;
  30. }else{
  31. return $data;
  32. }
  33. }

EXCEL导入

  1. /**
  2. * 数据导入
  3. * @param string $file excel文件
  4. * @param string $sheet
  5. * @return string 返回解析数据
  6. * @throws PHPExcel_Exception
  7. * @throws PHPExcel_Reader_Exception
  8. */
  9. function importExecl($file='', $sheet=){
  10. $file = iconv("utf-8", "gb2312", $file); //转码
  11. if(empty($file) OR !file_exists($file)) {
  12. die('file not exists!');
  13. }
  14. require_once './Classes/PHPExcel.php'; //引入PHP EXCEL类
  15. $objRead = new PHPExcel_Reader_Excel2007(); //建立reader对象
  16. if(!$objRead->canRead($file)){
  17. $objRead = new PHPExcel_Reader_Excel5();
  18. if(!$objRead->canRead($file)){
  19. die('No Excel!');
  20. }
  21. }
  22.  
  23. $cellName = array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'AA', 'AB', 'AC', 'AD', 'AE', 'AF', 'AG', 'AH', 'AI', 'AJ', 'AK', 'AL', 'AM', 'AN', 'AO', 'AP', 'AQ', 'AR', 'AS', 'AT', 'AU', 'AV', 'AW', 'AX', 'AY', 'AZ');
  24.  
  25. $obj = $objRead->load($file); //建立excel对象
  26. $currSheet = $obj->getSheet($sheet); //获取指定的sheet表
  27. $columnH = $currSheet->getHighestColumn(); //取得最大的列号
  28. $columnCnt = array_search($columnH, $cellName);
  29. $rowCnt = $currSheet->getHighestRow(); //获取总行数
  30.  
  31. $data = array();
  32. for($_row=; $_row<=$rowCnt; $_row++){ //读取内容
  33. for($_column=; $_column<=$columnCnt; $_column++){
  34. $cellId = $cellName[$_column].$_row;
  35. $cellValue = $currSheet->getCell($cellId)->getValue();
  36. //$cellValue = $currSheet->getCell($cellId)->getCalculatedValue(); #获取公式计算的值
  37. if($cellValue instanceof PHPExcel_RichText){ //富文本转换字符串
  38. $cellValue = $cellValue->__toString();
  39. }
  40.  
  41. $data[$_row][$cellName[$_column]] = $cellValue;
  42. }
  43. }
  44.  
  45. return $data;
  46. }

EXCEL导出

  1. //导出
  2. function outExecl($data){
  3. //var_dump($data);
  4. require_once './Classes/PHPExcel.php';
  5.  
  6. // 首先创建一个新的对象 PHPExcel object
  7. $objPHPExcel = new PHPExcel();
  8.  
  9. // 设置文件的一些属性,在xls文件——>属性——>详细信息里可以看到这些值,xml表格里是没有这些值的
  10. $objPHPExcel
  11. ->getProperties() //获得文件属性对象,给下文提供设置资源
  12. ->setCreator( "Maarten Balliauw") //设置文件的创建者
  13. ->setLastModifiedBy( "Maarten Balliauw") //设置最后修改者
  14. ->setTitle( "Office 2007 XLSX Test Document" ) //设置标题
  15. ->setSubject( "Office 2007 XLSX Test Document" ) //设置主题
  16. ->setDescription( "Test document for Office 2007 XLSX, generated using PHP classes.") //设置备注
  17. ->setKeywords( "office 2007 openxml php") //设置标记
  18. ->setCategory( "Test result file"); //设置类别
  19. // 位置aaa *为下文代码位置提供锚
  20. // 给表格添加数据
  21. $objPHPExcel->setActiveSheetIndex() //设置第一个内置表(一个xls文件里可以有多个表)为活动的
  22. ->setCellValue( 'A1', '姓名' ) //给表的单元格设置数据
  23. ->setCellValue( 'B1', '球队名称' ) //数据格式可以为字符串
  24. ->setCellValue( 'C1', '场上位置' ) //数字型
  25. ->setCellValue( 'D1', '称号资历' ) //
  26. ->setCellValue( 'E1', '籍贯省份' ) //布尔型
  27. ->setCellValue( 'F1', '籍贯城市' ) //布尔型
  28. ->setCellValue( 'G1', '联系电话' ) //布尔型
  29. ->setCellValue( 'H1', '注册状态' ) //布尔型
  30. ->setCellValue( 'I1', '经纪人' ) //布尔型
  31. ->setCellValue( 'J1', '比赛打分' ) //布尔型
  32. ->setCellValue( 'K1', '伤病状态' ) //布尔型
  33. ->setCellValue( 'L1', '比赛时间' ); //布尔型
  34.  
  35. $i=;
  36. foreach ($data as $k => $v) {
  37. // echo "1";
  38. // var_dump($v);
  39.  
  40. if($v['z_state']==''){
  41. $v['z_state']="已注册";
  42. }
  43.  
  44. $objPHPExcel->setActiveSheetIndex() //设置第一个内置表(一个xls文件里可以有多个表)为活动的
  45. ->setCellValue( 'A'.$i, $v['bname'] ) //给表的单元格设置数据
  46. ->setCellValue( 'B'.$i, $v['tname'] ) //数据格式可以为字符串
  47. ->setCellValue( 'C'.$i, $v['position'] ) //数字型
  48. ->setCellValue( 'D'.$i, $v['qualifications'] ) //
  49. ->setCellValue( 'E'.$i, $v['pname'] ) //布尔型
  50. ->setCellValue( 'F'.$i, $v['cname'] ) //布尔型
  51. ->setCellValue( 'G'.$i, $v['phone'] ) //布尔型
  52. ->setCellValue( 'H'.$i, $v['z_state'] ) //布尔型
  53. ->setCellValue( 'I'.$i, $v['name'] ) //布尔型
  54. ->setCellValue( 'J'.$i, $v['score'] ) //布尔型
  55. ->setCellValue( 'K'.$i, $v['b_state'] ) //布尔型
  56. ->setCellValue( 'L'.$i, $v['time'] ); //布尔型
  57. $i++;
  58. }
  59.  
  60. //得到当前活动的表,注意下文教程中会经常用到$objActSheet
  61. $objActSheet = $objPHPExcel->getActiveSheet();
  62. // 位置bbb *为下文代码位置提供锚
  63. // 给当前活动的表设置名称
  64. $objActSheet->setTitle('Simple2222');
  65.  
  66. // 生成2007excel格式的xlsx文件
  67. header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
  68. header('Content-Disposition: attachment;filename="01simple.xlsx"');
  69. header('Cache-Control: max-age=0');
  70.  
  71. $objWriter = PHPExcel_IOFactory:: createWriter($objPHPExcel, 'Excel2007');
  72. $objWriter->save( 'php://output');
  73. exit;
  74. }

PHPExcel包:http://www.jb51.net/codes/194070.html

php常用代码段的更多相关文章

  1. PyTorch常用代码段整理合集

    PyTorch常用代码段整理合集 转自:知乎 作者:张皓 众所周知,程序猿在写代码时通常会在网上搜索大量资料,其中大部分是代码段.然而,这项工作常常令人心累身疲,耗费大量时间.所以,今天小编转载了知乎 ...

  2. Java常用代码段 - 未完待续

    记录一些自己写项目常用的代码段. 格式化常用日期格式 Date date = new Date(System.currentTimeMillis()); DateFormat d3 = DateFor ...

  3. PyTorch 常用代码段整理

    基础配置 检查 PyTorch 版本 torch.__version__               # PyTorch version torch.version.cuda              ...

  4. JavaScript常用代码段

    总结一下在各种地方看到的还有自己使用的一些实用代码 1)区分IE和非IE浏览器 if(!+[1,]){ alert("这是IE浏览器"); } else{ alert(" ...

  5. C#获取本地IP地址[常用代码段]

    获得当前机器的IP代码,假设本地主机为单网卡 string strHostName = Dns.GetHostName(); //得到本机的主机名 IPHostEntry ipEntry = Dns. ...

  6. Erlang常用代码段

    十六进制字符串转为二进制 hex_to_bin(Bin) -> hex2bin(Bin). hex2bin(Bin) when is_binary(Bin) -> hex2bin(bina ...

  7. SQL常用代码段

    --STUFF 函数将字符串插入另一字符串.它在第一个字符串中从开始位置删除指定长度的字符:然后将第二个字符串插入第一个字符串的开始位置. STUFF ( character_expression , ...

  8. PHP常用代码段:

    1.PHP加密解密   function encryptDecrypt($key, $string, $decrypt){      if($decrypt){          $decrypted ...

  9. php 常用代码段

    1.写文件 $fp = fopen("jsapi_ticket.json", "w+"); fwrite($fp, $str); fclose($fp); 2. ...

随机推荐

  1. C#和Java在多态情况下对成员访问的比较

    本文简单比较一下两种语言在里氏替换原则下,父类引用变量访问成员时的访问结果: 如果有两个类,如Person与Student,后者继承了前者,而且子类与父类有重名成员,当Person p = new S ...

  2. xstream 解析xml报文

    一.xml一种格式的数据转换为对象 pom.xml引入 <!--javaBean和XML的双向转换--> <dependency> <groupId>com.tho ...

  3. MySQL专题 2 数据库优化 Slow Query log

    MySQL Server 有四种类型的日志——Error Log.General Query Log.Binary Log 和 Slow Query Log. 第一个是错误日志,记录 mysqld 的 ...

  4. 使用JMeter代理录制app测试脚本

    准备条件:JMeter.手机app 上一篇介绍过录制Web测试脚本的方式有两种,使用代理和使用第三方工具.本篇录制app测试脚本只讨论使用代理的方式,其他方式以后有机会再补充.其实Web和app使用代 ...

  5. 【插件】LinqToExcel常用对象

    1.ExcelQueryFactory对象(1)获取工作表名集合IEnumerable<string> GetWorksheetNames() //获取工作薄中的工作表名foreach ( ...

  6. jsp - redirect重定向 / forward转发

    redirect:请求重定向: 客户端行为,本质上为2次请求,地址栏改变,前一次请求对象不保存, 所以请求携带的数据会丢失. 举例:你去银行办事(forward.jsp),结果告诉你少带了东西,你得先 ...

  7. Day22-session

    1. cookie: 保存在用户浏览器端的一个键值对.基于cookie做用户验证的时候,不适合把敏感信息放到cookie中.例如我们可以把user_id这个不敏感的信息放到cookie中,然后基于us ...

  8. 【刷题】洛谷 P4143 采集矿石

    题目背景 ZRQ成功从坍塌的洞穴中逃了出来.终于,他看到了要研究的矿石.他想挑一些带回去完成任务. 题目来源:Zhang_RQ哦对了ZRQ就他,嗯 题目描述 ZRQ发现这里有 \(N\) 块排成一排的 ...

  9. 【JavaScript】基本类型和引用类型的值、引用类型

    一.前言        接着上一篇继续记笔记 二.内容         动态的属性 var person = new Object(); person.name = "Nicholas&qu ...

  10. day4-python基础