仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1251|回复: 19
打印 上一主题 下一主题

[学习教程] PHP教程之PHP开辟中常常用到的一些函数

[复制链接]
小女巫 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:57:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
不懂的问题有很多高手帮你解决。但不要认为你是新手,就不能帮助别人,比如今天你学会了怎样安装PHP,明天还可能有朋友会问这个问题,你就可以给他解答,不要认为这是浪费时间,忙别人其实就是帮助自己。   <?
class useful{
/*
  * 经常使用函数类
  * 作    者:多菜鸟
  * 接洽邮箱:kingerq AT msn DOT com
  * 创立工夫:2005-07-18
  * 来历:http://blog.csdn.net/kingerq
  */

/*
  * 功效:格局化数字,以尺度MONEY格局输入
  */
  
function formatnumber($num){
  return number_format($num, 2, ".", ",");
}

/*
  * 功效:格局化文本,将\n转成<br>等
  * 参数:$string 来历字符串
  * 前往:处置后的字符串
  */
function formatstring($string = ""){
  $string = preg_replace(array("/ /", "/ /"), array(" ", "  "), $string);
  return nl2br($string);
}

/*
  * 功效:格局化文本输入
  * 参数 $text 为需格局化的文本内容
  */
function formatcontent($text){
  $trans = get_html_translation_table(HTML_SPECIALCHARS);
  $trans = array_flip($trans);
  $text = strtr($text, $trans);
  //$text = str_replace("\n", "<br>", $text);
  //$text = str_replace(" ", " ", $text);
  return $text;
}

/*
  * 将字节转换成Kb或Mb
  * 参数 $num为字节巨细
  */
function bitsize($num){
  if(!preg_match("/^[0-9]+$/", $num)) return 0;
  return $num > 1024 ? ($num/1024 > 1024 ? round($num/1024/1024, 2)." Mb" : round($num/1024, 2)." Kb") : $num." 字节";
}

/*
  * 防注入处置(为变量到场斜杠)函数
  * 参数 $array 为防注入变量数组
  */
function add_s(&$array){
  foreach($array as $key=>$value){
   if(!is_array($value)){
    $array[$key]=addslashes($value);
   }else{
    $this->add_s($array[$key]);
   }
  }
}

/*
  * 转换HTML特别字符(表单提交的时分利用,避免歹意JS代码)
  * 参数 $array 为需转换的字符串或数组
  */
function specialhtml(&$array){
  if(is_array($array)){//数组处置
   foreach($array as $key=>$value){
    if(!is_array($value)){
     $array[$key]=htmlspecialchars($value);
    }else{
     $this->specialhtml($array[$key]);
    }
   }
  }else{
   $array = htmlspecialchars($array);
  }
}

/*
  * 可以免乱码的截取汉字
  * 参数 $str 为字符串,$start 为入手下手字符,$len 停止字符
  * 前往截取后的字符
  */
function msubstr($str, $start, $len) {
  $tmpstr = "";
  $strlen = $start + $len;
  for($i = 0; $i < $strlen; $i++) {
   if(ord(substr($str, $i, 1)) > 0xa0) {
    $tmpstr .= substr($str, $i, 2);
    $i++;
   } else
    $tmpstr .= substr($str, $i, 1);
  }
  return $tmpstr;
}

/*
  * 功效:综合提醒JS代码输入
  * 参数 $msg 为提醒信息
  *      $direct 为提醒类型 0为提醒(默许)1为提醒刷新前往 2为提醒前往
  * 输入提醒代码并停止法式
  */
function alert_msg($msg, $direct = "0"){
  switch($direct){
   case '0'://提醒
    $script = "";
   case '1'://提醒刷新前往
    $script = "location.href=\"".$_SERVER["HTTP_REFERER"]."\";";
    break;
   case '2'://提醒前往
    $script = "history.back();";
    break;
   default://提醒转向指定页面
    $script = "location.href=\"".$direct."\";";
  }
  echo "<script language='javascript'>window.alert('".$msg."');".$script."</script>";
  exit;
}

/*
  * 功效:获得给定日期地点周的入手下手日期和停止日期
  * 参数:$gdate 日期,默许为当天,格局:YYYY-MM-DD
  *       $first 一周以礼拜一仍是礼拜天入手下手,0为礼拜天,1为礼拜一
  * 前往:数组array("入手下手日期", "停止日期");
  */
function aweek($gdate = "", $first = 0){
  if(!$gdate) $gdate = date("Y-m-d");
  $w = date("w", strtotime($gdate));//获得一周的第几天,礼拜天入手下手0-6
  $dn = $w ? $w - $first : 6;//要减去的天数
  $st = date("Y-m-d", strtotime("$gdate -".$dn." days"));
  $en = date("Y-m-d", strtotime("$st +6 days"));
  return array($st, $en);//前往入手下手和停止日期
}

/*
  * 功效:检测页面是不是正当毗连过去
  * 假如为不法,就转向到上岸窗口
  */
function checkurl(){
  //假如直接从阅读器毗连到页面,就毗连到上岸窗口
  //echo "referer:".$_SERVER['HTTP_REFERER'];
  if(!isset($_SERVER['HTTP_REFERER'])) {
   header("location: index.php");
   exit;
  }
  $urlar = parse_url($_SERVER['HTTP_REFERER']);
  //假如页面的域名不是办事器域名,就毗连到上岸窗口
  if($_SERVER["HTTP_HOST"] != $urlar["host"]) {
   header("location: index.php");
   exit;
  }
}

/*
  * 读取文件内容
  * 参数 $file 为文件名及完全途径
  * 前往文件内容
  */
function readfiles($file){
  $tdata = "";
  $fp = fopen($file, "r");
  
  if(filesize($file) <= 0) return;
  
  while($data = fread($fp, filesize($file))){
   $tdata .= $data;
  }
  fclose($fp);
  return $tdata;
}
}
?>我是根据自己的成长历程来写的,如有不对的还请指正。
飘灵儿 该用户已被删除
沙发
发表于 2015-2-4 07:18:59 | 只看该作者
爱上php,他也会爱上你。
因胸联盟 该用户已被删除
板凳
发表于 2015-2-9 18:44:14 | 只看该作者
首先声明:我是一个菜鸟,是一个初学者。学习了一段php后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。
再见西城 该用户已被删除
地板
发表于 2015-2-27 16:50:55 | 只看该作者
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
金色的骷髅 该用户已被删除
5#
发表于 2015-3-6 17:19:06 | 只看该作者
为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。
精灵巫婆 该用户已被删除
6#
发表于 2015-3-8 17:23:23 | 只看该作者
这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己
7#
发表于 2015-3-11 09:44:49 | 只看该作者
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
兰色精灵 该用户已被删除
8#
发表于 2015-3-14 08:14:43 | 只看该作者
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
只想知道 该用户已被删除
9#
发表于 2015-3-16 11:36:04 | 只看该作者
不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。
愤怒的大鸟 该用户已被删除
10#
发表于 2015-3-24 06:49:51 | 只看该作者
当然这种网站的会员费就几十块钱。
再现理想 该用户已被删除
11#
发表于 2015-3-30 22:49:08 | 只看该作者
装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。
灵魂腐蚀 该用户已被删除
12#
发表于 2015-4-1 03:10:56 | 只看该作者
使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的
柔情似水 该用户已被删除
13#
发表于 2015-4-12 19:08:21 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
乐观 该用户已被删除
14#
发表于 2015-4-21 00:32:48 | 只看该作者
Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81
山那边是海 该用户已被删除
15#
发表于 2015-5-10 03:47:22 | 只看该作者
这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。
冷月葬花魂 该用户已被删除
16#
发表于 2015-7-6 13:32:48 | 只看该作者
你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。
老尸 该用户已被删除
17#
发表于 2015-7-7 04:12:29 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
分手快乐 该用户已被删除
18#
发表于 2015-7-11 21:55:59 | 只看该作者
刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。
透明 该用户已被删除
19#
发表于 2015-7-13 19:10:13 | 只看该作者
真正的方向了,如果将来要去开发团队,你一定要学好smarty ,phplib这样的模板引擎,
深爱那片海 该用户已被删除
20#
发表于 2015-7-20 04:55:59 | 只看该作者
当然这种网站的会员费就几十块钱。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-7 07:23

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表