获取浏览器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. rman进行备份、恢复

    rman备份可以很复杂,但学习需要由浅入深,下面是最常见的几种备份.恢复方式. 备份数据的路径与大小: SQL> show parameter  DB_RECOVERY_FILE_DEST NA ...

  2. 398. Random Pick Index

    随机返还target值的坐标(如果存在多个target). 不太明白为什么这个题是M难度的. 无非是要么弄TABLE之类的,开始麻烦点,但是pick的时候直接PICK出来就行了. 要么开始简单点,都存 ...

  3. java版本 ueditor 在线编辑器 配置

    上传文件大小的配置 1. ueditor\dialogs\video\video.js   搜索  file_size_limit  修改这个数值 (这是前台 flash的限制) 2. ueditor ...

  4. LINQ如何递归子控件

    private void SetTextReadOnly(Control ctr, bool blReadOnly) { ctr.Controls.Cast<Control>().Sele ...

  5. PAT---1013. Battle Over Cities (25)

    这道题目的意思是:在战争时代,如果一个城市被敌人占领了,那么和该城市相连的道路都必须关闭,我们必须把剩下的城市(即不包括被敌人占领的城市)连接起来. 举个例子,我们有3个城市,C1,C2,C3,C1和 ...

  6. SQL Server与Oracle对比学习:权限管理(一)

    http://blog.csdn.net/weiwenhp/article/details/8093661 我们发现我们现在的生活中到处是涉及到密码,你要记各种各样的密码.比如银行卡,邮件,QQ,微博 ...

  7. ios6如何处理内存,分别为前警告后

    这里有一篇文章.非常具体地说明了ios6前后是怎样处理内存警告的: 来自唐巧的技术博客:http://blog.devtang.com/blog/2013/05/18/goodbye-viewdidu ...

  8. MYSQL 专家 ----zhaiwx_yinfeng

    http://mysqllover.com/?p=708 https://yq.aliyun.com/articles/54454 http://blog.csdn.net/zhaiwx1987/ar ...

  9. [转] Tomcat 配置 SSL

    PS: keystore有自己的访问密码,这个保护层次要低一些,然后keystore里面存有自己的私钥,所以用户要破解的话,既要有keystore,又要有keystore的密码,p12是客户端keys ...

  10. pnd_start_2

    试过才知道一点都不简单,虽然表现出的逻辑是错的,但是至少运行上是正确的.