获取浏览器IP地址


  function getRemoteIPAddress() {


  $ip = $_SERVER['REMOTE_ADDR'];


  return $ip;


  }


  如果有代理服务器的情况下获取IP


  function getRealIPAddress() {


  if (!empty($_SERVER['HTTP_CLIENT_IP'])) { // check ip from share internet


  $ip = $_SERVER['HTTP_CLIENT_IP'];


  } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { // to check ip is pass from proxy


  $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];


  } else {


  $ip = $_SERVER['REMOTE_ADDR'];


  }


  return $ip;


  }


  获取 MySQL 时间戳


  $query = "select UNIX_TIMESTAMP(date_field) as mydate from mytable where 1=1";


  $records = mysql_query($query) or die(mysql_error());


  while($row = mysql_fetch_array($records)) {


  echo $row;


  }


  验证日期格式:YYYY-MM-DD


  function checkDateFormat($date) {


  // match the format of the date


  if (preg_match("/^([0-9]{4})-([0-9]{2})-([0-9]{2})$/", $date, $parts)) {


  // check whether the date is valid of not


  if (checkdate($parts[2], $parts[3], $parts[1])) {


  return true;


  } else {


  return false;


  }


  } else {


  return false;


  }


  }


  重定向


  header('Location: http://www.phpchina.com');


  发送邮件


  $to = "someone@oschina.net";


  $subject = "Your Subject here";


  $body = "Body of your message here you can use HTML too. e.g.


Bold ";


  $headers = "From: You\r\n";


  $headers .= "Reply-To: info@yoursite.com\r\n";


  $headers .= "Return-Path: info@yoursite.com\r\n";


  $headers .= "X-Mailer: PHP\n";


  $headers .= 'MIME-Version: 1.0' . "\n";


  $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";


  mail($to, $subject, $body, $headers);


  BASE64 编码和解码


  function base64url_encode($plainText) {


  $base64 = base64_encode($plainText);


  $base64url = strtr($base64, '+/=', '-_,');


  return $base64url;


  }


  function base64url_decode($plainText) {


  $base64url = strtr($plainText, '-_,', '+/=');


  $base64 = base64_decode($base64url);


  return $base64;


  }


  JSON 处理


  $json_data = array ('id'=>1,'name'=>"John",'country'=>'Canada',"work"=>array("Google","Oracle"));


  echo json_encode($json_data);


  $json_string='{"id":1,"name":"John","country":"Canada","work":["Google","Oracle"]} ';


  $obj=json_decode($json_string);


  // print the parsed data


  echo $obj->name; //displays John


  echo $obj->work[0]; //displays Google


  检测用户浏览器类型


  $useragent = $_SERVER ['HTTP_USER_AGENT'];


  echo "Your User Agent is: " . $useragent;


  显示网页源码


  $lines = file('http://www.phpchina.com/index.php');


  foreach ($lines as $line_num => $line) {


  // loop thru each line and prepend line numbers


  echo "Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br>\n";


  }


  调整服务器时间


  $now = date('Y-m-d-G');


  $now = strftime("%Y-%m-%d-%H", strtotime("$now -8 hours"));

10个必看的PHP小代码,很实用!的更多相关文章

  1. 疯狂delphi - 朱建强 (一些小例子很实用,也是我所关心的几个问题)

    疯狂delphi - 朱建强 (一些小例子很实用,也是我所关心的几个问题) Android实例-获取安卓手机WIFI信息(XE8+小米2)http://www.cnblogs.com/FKdelphi ...

  2. 小程序开发运营必看:微信小程序平台运营规范

    一.原则及相关说明 ​ 微信最核心的价值,就是连接——提供一对一.一对多和多对多的连接方式,从而实现人与人.人与智能终端.人与社交化娱乐.人与硬件设备的连接,同时连接服务.资讯.商业. ​ 微信团队一 ...

  3. 利用JS提交表单的几种方法和验证(必看篇)

    第一种方式:表单提交,在form标签中增加onsubmit事件来判断表单提交是否成功 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 <scr ...

  4. 基于StringUtils工具类的常用方法介绍(必看篇)

    前言:工作中看到项目组里的大牛写代码大量的用到了StringUtils工具类来做字符串的操作,便学习整理了一下,方便查阅. isEmpty(String str) 是否为空,空格字符为false is ...

  5. (转载)Android之有效防止按钮多次重复点击的方法(必看篇)

    为了防止测试妹子或者用户频繁点击某个按钮,导致程序在短时间内进行多次数据提交or数据处理,那到时候就比较坑了~ 那么如何有效避免这种情况的发生呢? 我的想法是,判断用户点击按钮间隔时间,如果间隔时间太 ...

  6. iOS 10 推送必看(高阶1)

    来源:徐不同 链接:http://www.jianshu.com/p/3d602a60ca4f iOS10 推送必看(基础篇) 虽然这篇文章比较长,也不好理解,但是还是建议大家收藏,以后用到的时候,可 ...

  7. 3DS MAX玩家必看!70个提高渲染速度的小技巧

    3DS MAX玩家必看!70个提高渲染速度的小技巧 (注:节省RAM不一定会加快渲染速度.请同学们根据实际情况加以利用.) 1. 尽量限制Ploygon数量,越少渲染速度越快 2. 如果使用Vray, ...

  8. 高级Java必看的10本书

    1.深入理解Java虚拟机:JVM高级特性与最佳实践 本书共分为五大部分,围绕内存管理.执行子系统.程序编译与优化.高效并发等核心主题对JVM进行了全面而深入的分析,深刻揭示了JVM的工作原理. 2. ...

  9. Java编程思想重点笔记(Java开发必看)

    Java编程思想重点笔记(Java开发必看)   Java编程思想,Java学习必读经典,不管是初学者还是大牛都值得一读,这里总结书中的重点知识,这些知识不仅经常出现在各大知名公司的笔试面试过程中,而 ...

随机推荐

  1. How to Validate XML using Java

    Configure Java APIs (SAX, DOM, dom4j, XOM) using JAXP 1.3 to validate XML Documents with DTD and Sch ...

  2. Eclipse非常有用的快捷键

    Eclipse有强大的编辑功能, 工欲善其事,必先利其器, 掌握Eclipse快捷键,可以大大提高工作效率. 小坦克我花了一整天时间, 精选了一些常用的快捷键操作,并且精心录制了动画, 让你一看就会. ...

  3. servlet中避免405错误的产生

    父类Parent(相当于HttpServlet):service方法,用于处理任务分发,doGet.doPost方法用于报错  关注的是子类Son(servlet)     目的:杜绝错误的产生 方式 ...

  4. ueditor编辑器图片自定义存放目录及路径修改

    百度编辑器ueditor功能强大,很多人士以应用项目开发中,但是里面有一个公众的问题就是上传图片存放目录太深,默认是ueditor/php/upload下,前不久测试后图片存放目录可以改变,但是路径会 ...

  5. 【MongoDB】The Access control of mongodb

    In this blog we mainly talk about the access control including limitation of ip, setting listen port ...

  6. 以色列学生---debugger 构建

    http://eli.thegreenplace.net/2011/01/23/how-debuggers-work-part-1 http://eli.thegreenplace.net/

  7. xmemcached user guide --存档

    XMemcached Introduction XMemcached is a new java memcached client. Maybe you don't know "memcac ...

  8. OC协议

    概念:定义了一个接口,其他类负责来实现这些接口.如果你的类实现了一个协议的方法时,则说该类遵循此协议. 非正式协议:非正式协议虽名为协议,但实际上是挂于NSObject上的未实现分类(Unimplem ...

  9. sum() over() 函数的使用

    over不能单独使用,要和分析函数:rank(),dense_rank(),row_number(),sum()等一起使用. over函数的参数:over(partition by columnnam ...

  10. angularjs 更新局部作用域

    前几天项目需要,做了一个背景遮罩的弹出框,html采用js动态添加进去的,结果发现angularjs绑定在这里面不起作用,搜索下解决了,记录下: var smallApplyParent = docu ...