PHP教程之PHP开辟中常常用到的一些函数
不懂的问题有很多高手帮你解决。但不要认为你是新手,就不能帮助别人,比如今天你学会了怎样安装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("/^+$/", $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;
}
}
?>我是根据自己的成长历程来写的,如有不对的还请指正。 爱上php,他也会爱上你。 首先声明:我是一个菜鸟,是一个初学者。学习了一段php后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。 找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。 为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。 这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己 我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能: 如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域, 不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。 当然这种网站的会员费就几十块钱。 装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。 使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的 遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。 Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81 这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。 你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。 在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。 刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。 真正的方向了,如果将来要去开发团队,你一定要学好smarty ,phplib这样的模板引擎, 当然这种网站的会员费就几十块钱。
页:
[1]