Skip to content
  • 龙舞天翔小站
  • 知食汇

龙舞天翔资源共享

BWTECH DOCS CENTER

龙舞天翔资源共享
  • 资源共享首页
  • 网赚研究
    • 币圈及区块链游戏
  • 金融与管理
  • 网站开发建设
  • 网络营销优化
  • 精彩网文
  • 汽车生活
  • 德州扑克
  • 兴趣主题
  • Toggle search form

PHP编程几个函数范例

Posted on 2004-10-062021-09-11 By 龙舞天翔 PHP编程几个函数范例无评论

函数名:GetPara

作 用:取得系统变量

简 介:习惯早期版本的朋友可能会习惯于直接通过 $para 来调用session, get, post, cookie 等类的变量,但是这在安全上会造成一定的隐患,也就是说可以通过 get 模式来欺骗系统,所以在 php 4.1.0 以后的版本中,registor_global 的默认值变成了 off ,也就是你不许通过系统数组来分类调用相关变量,但这也在一定程度上给习惯了原来模式的用户带来了不便,也使得一些早期的程序必须经过修改才可以在新的环境下运行,本函数基本上可以解决掉以上问题,同时通过分类激活避免用 get 伪装 post 等变量的问题。

效 果:是可以直接通过 $para 来调用相关变量(相当于 registor_global = on),好处是可以分类激活,避免通过 get 伪装 post 等信息!

方 法:模式一:GetPara(“get”,”my_get_para”) 取得名为 my_get_para 的 get 变量值
模式一:GetPara(“post”) 声明所有 post 变量为可(像老版本php一样)直接调用的变量
其 他:GetPara(“file”) ; GetPara(“env”) ; GetPara(“server”) 等…
*/
function GetPara($type = “get”, $para = “”) {
//Coded By Windy_sk 20030529 v1.5
$type = “_”.strtoupper($type);
if(phpversion() < “4.1.0”) {
if($type = “_FILES”) {
$type = “HTTP_POST”.$type;
} elseif($type = “_REQUEST”) {
return $para?false:””;
} else {
$type = “HTTP”.$type.”_VARS”;
}
@eval(“global \${$type};”);
}
eval(“\$flag = isset(\${$type});”);
if($flag) {
eval(“\$type = \${$type};”);
} else {
return $para?false:””;
}
if($para) {
return isset($type[$para])?$type[$para]:””;
}
while(list($key, $value) = each($type)) {
global $key;
$key = $value;
}
return true;
}

/*
函数名:substrPro

作 用:取得字符串的指定部分,且不会出现将全角字符截断的现象

简 介:本函数是 substr 针对全角字符的扩展,避免截断全角字符,同时如果 $mode = true 的话,会将全角字符看作是一个字符!

方 法:substrPro(“一1二三四4五5六七八8九十0”, 2, 6) -> “1二三四”
substrPro(“一1二三四4五5六七八8九十0”, 2, 6, true) -> “1二三四4五”
注:暂不支持参数为负值
*/
function substrPro($Modi_Str, $start, $length, $mode = false){
//Coded By Windy_sk 20020603 v2.0
$n = 0;
for($i=0;$i<$start;$i++){ if(ord(substr($Modi_Str,$i,1))>0xa0){
if($mode){
$start++;
$i++;
}
$n++;
}
}
if(!$mode)$start = $start + $n%2;
$The_length = $start+$length;
for($i=$start;$i<$The_length;$i++){ if(ord(substr($Modi_Str,$i,1))>0xa0){
$The_Str.=substr($Modi_Str,$i,2);
$i++;
if($mode) $The_length++;
}else{
$The_Str.=substr($Modi_Str,$i,1);
}
}
return $The_Str;
}

/*
以下两个函数为取得程序的执行时间,并可定制精确度(最多精确到 1E-10 s)
*/
function getmicrotime() {
if(function_exists(“microtime”)) {
list($usec, $sec) = explode(” “,microtime());
return $usec + $sec;
} else {
return time();
}
}

function gettimediff($time_start, $decimal = 3) {
$time_end = getmicrotime();
$time = (string)($time_end – $time_start);
$time = preg_replace(“/^([\d]+.[\d]{“.$decimal.”})[\d]*$/”,”\1″,$time);
return $time;
}

/*
函数名:ob_handle

作 用:通过ob_start(“ob_handle”) 来处理缓存数据,并在 flush 前对其进行加工处理。

方 法:先设置 $ob_function 为函数名列表(以“;”作间隔,需均为字符串处理函数,且便两个数可为一,可以使自定义变量),再设置 ob_start(“ob_handle”) 调用本函数进行缓存控制,最后 ob_end_flush() 输出缓存。(注: $ob_function 在 ob_end_flush() 之前设置均有效!)
*/
$ob_function = “htmlspecialchars;trim”;
function ob_handle ($content) {
//Coded By Windy_sk 20030510 v1.0
global $ob_function, $cache_file;
$f_list = split(“;”, $ob_function);
for($i=0; $i “4.0.6”) $content = ob_gzhandler($content, 1);
return $content;
}

/*
函数名:RndKey

作 用:生成规定长度的随机字串

方 法:RndKey(8) -> “1d@5cDO(“
*/
function RndKey($lng){
$char_list = array();
$char_list[] = “1234567890”;
$char_list[] = “ABCDEFGHIJKLMNOPQRSTUVWXYZ”;
$char_list[] = “abcdefghijklmnopqrstuvwxyz”;
$char_list[] = “!@^()_:+-“;
$char_length = count($char_list);
$Rnd_Key = “”;
for($i=1; $i<=$lng; $i++){
$Rnd_Str = $char_list[rand(1,$char_length) – 1];
$Rnd_Key .= substr($Rnd_Str, rand(0,strlen($Rnd_Str)-1), 1);
}
return($Rnd_Key);
}

/*
函数名:cut_words

作 用:将连续的文本按照全角字符和半角单词拆分
*/

function cut_words($str) {
//Coded By Windy_sk 20020805 v1.0
$str = str_replace(“\r\n”,”\n”,$str) . ” “;
preg_match_all(“/[\xa0-\xff]?./”, $str, $arr1);
$arr1 = $arr1[0];
$arr2 = array();
$n = 0;
for($i=0; $i=0xa0) {
if(!empty($arr2[$n])) $n++;
$arr2[$n++] = $arr1[$i];
} elseif(preg_match(“/\s/m”, $arr1[$i])) {
$arr2[++$n] = $arr1[$i];
} else {
$arr2[$n] .= $arr1[$i];
}
}
return join(“”, $arr2);
}
?>

(责任编辑:龙舞天翔)

Post Views: 301
PHP程序开发 Tags:PHP, 函数, 编程

文章导航

Previous Post: 买彩票是游戏 不是投资
Next Post: 常见个人保养需要的水果菜单

发表回复 取消回复

要发表评论,您必须先登录。

2025 年 5 月
一 二 三 四 五 六 日
 1234
567891011
12131415161718
19202122232425
262728293031  
« 3 月    
  • GOOGLE ADSENSE
  • GOOGLE专项研究
  • PHP程序开发
  • 互联网电商
  • 健康与生活
  • 兴趣主题
  • 国内搜索引擎推广
  • 基础与规则
  • 外汇投资
  • 学习资讯
  • 币圈及区块链游戏
  • 德州扑克技术
  • 房地产风云
  • 收集待分类
  • 数码摄影
  • 杂文&随笔
  • 案例研究分析
  • 理财生财
  • 精品小说
  • 系统及其他
  • 经营管理
  • 网站运营理念
  • 网络优化营销
  • 网页前端
  • 美食与菜谱
  • 股市投资
  • 驾驶及维修

AXIE AXIE INFINITY DEFI Google META robots.txt SEO WEB2.0 windows 中医 中文搜索 买车 企业网站 加密货币 威廉·奥尼尔 实战 彩票 德州扑克 成交量 打新 技术指标 抑郁症 捂股 排名 搜索引擎 搜索引擎优化 攻略 无限注 晃晃悠悠 橄榄油 泡菜 流动性挖矿 炒股 焦虑症 看盘 短线操作 穷人 网络营销 美食 股票 菜谱 虚拟货币 行情 配股 酸甜白萝卜

近期文章

  • 玻璃阳光房应该用什么胶来密封防水
  • 什么是数字孪生?跟数据可视化的关系又是什么?
  • 为跨链注入新动力,HotCross能否成为Web 3.0的基建?
  • 为什么中医会如此衰落?因为我们没有看清中医的本质!
  • 中医没落的最大原因是什么?德国教授一针见血!

近期评论

    归档

    • 2022 年 3 月
    • 2022 年 1 月
    • 2021 年 12 月
    • 2021 年 11 月
    • 2021 年 10 月
    • 2021 年 9 月
    • 2021 年 8 月
    • 2021 年 7 月
    • 2021 年 4 月
    • 2016 年 12 月
    • 2012 年 1 月
    • 2008 年 1 月
    • 2006 年 3 月
    • 2006 年 2 月
    • 2005 年 12 月
    • 2005 年 11 月
    • 2005 年 10 月
    • 2005 年 3 月
    • 2005 年 1 月
    • 2004 年 12 月
    • 2004 年 10 月
    • 2004 年 9 月
    • 2004 年 8 月
    • 2004 年 7 月
    • 2004 年 6 月
    • 2004 年 4 月
    • 2004 年 3 月

    其他操作

    • 登录
    • 条目 feed
    • 评论 feed
    • WordPress.org

    Copyright © 2021 龙舞天翔资源共享.

    Powered by PressBook WordPress theme