当前位置:  编程技术>php
本页文章导读:
    ▪一个比较精确的统计在线人数的php代码       代码如下: <?php $filename='online.txt';//数据文件 $cookiename='VGOTCN_OnLineCount';//cookie名称 $onlinetime=600;//在线有效时间,单位:秒 (即600等于10分钟) $online=file($filename); //PHP file() 函数把整个文件读.........
    ▪php去除html标签获得输入纯文本文档strip_tags      其形式为: strip_tags() (PHP 3 >= 3.0.8, PHP 4, PHP 5) strip_tags -- Strip HTML and PHP tags from a string Description string strip_tags ( string str [, string allowable_tags] ) This function tries to return a string with all HTML and PHP tag.........
    ▪php大form用post方法传递数据丢包的问题      在生产环境中,一个巨大无比的form,包括三张图片,几百个输入框,近一千个checkbox,在用post方法提交到后台时,数据被拦腰截断。 一路打debug,发现PHP 拿到 $_POST时,数据就不足。 一开始.........

[1]一个比较精确的统计在线人数的php代码
    来源: 互联网  发布时间: 2013-12-24
代码如下:

<?php
$filename='online.txt';//数据文件
$cookiename='VGOTCN_OnLineCount';//cookie名称
$onlinetime=600;//在线有效时间,单位:秒 (即600等于10分钟)
$online=file($filename);

//PHP file() 函数把整个文件读入一个数组中。与 file_get_contents() 类似,不同的是 file() 将文件作为一个数组返回。数组中的每个单元都是文件中相应的一行,包括换行符在内。如果失败,则返回 false
$nowtime=$_SERVER['REQUEST_TIME'];
$nowonline=array();

//得到仍然有效的数据
foreach($online as $line){
    $row=explode()('|',$line);
    $sesstime=trim($row[1]);
    if(($nowtime - $sesstime)<=$onlinetime){//如果仍在有效时间内,则数据继续保存,否则被放弃不再统计
        $nowonline[$row[0]]=$sesstime;//获取在线列表到数组,会话ID为键名,最后通信时间为键值
    }
}

/*
@创建访问者通信状态
使用cookie通信
COOKIE 将在关闭浏览器时失效,但如果不关闭浏览器,此 COOKIE 将一直有效,直到程序设置的在线时间超时
*/
if(isset()($_COOKIE[$cookiename])){//如果有COOKIE即并非初次访问则不添加人数并更新通信时间
    $uid=$_COOKIE[$cookiename];
}else{//如果没有COOKIE即是初次访问
    $vid=0;//初始化访问者ID
    do{//给用户一个新ID
        $vid++;
        $uid='U'.$vid;
    }while(array_key_exists($uid,$nowonline));
    setcookie($cookiename,$uid);
}
$nowonline[$uid]=$nowtime;//更新现在的时间状态

//统计现在在线人数
$total_online=count($nowonline);

//写入数据
if($fp=@fopen($filename,'w')){
    if(flock($fp,LOCK_EX)){
        rewind($fp);
        foreach($nowonline as $fuid=>$ftime){
            $fline=$fuid.'|'.$ftime."\n";
            @fputs($fp,$fline);
        }
        flock($fp,LOCK_UN);
        fclose($fp);
    }
}
echo 'document.write("'.$total_online.'");';
?>


    
[2]php去除html标签获得输入纯文本文档strip_tags
    来源: 互联网  发布时间: 2013-12-24

其形式为:
strip_tags()

(PHP 3 >= 3.0.8, PHP 4, PHP 5)
strip_tags -- Strip HTML and PHP tags from a string

Description
string strip_tags ( string str [, string allowable_tags] )

This function tries to return a string with all HTML and PHP tags stripped from a given str. It uses the same tag stripping state machine as the fgetss() function.
You can use the optional second parameter to specify tags which should not be stripped.

例子 1. strip_tags() example
 

代码如下:
<?php
$text = '<p>Test paragraph.</p><!-- Comment --> Other text';
echo strip_tags($text);
echo "\n";
    
// Allow <p>
echo strip_tags($text, '<p>');
?>
 

上例将输出:
Test paragraph. Other text
<p>Test paragraph.</p> Other text

您可能感兴趣的文章:
php去除HTML标签的二种方法
php 去除多余的HTML标签
php用strip_tags完整去除所有html标签的实例分享
php过滤html标记的函数strip_tags用法举例(图文)
php删除html标签的三种方法分享
php删除html标签及字符串中html标签的代码
php获取html网页内容的多个方法
去掉内容中 html 标签的代码
提取html标签的php代码
php正则过滤html标签、空格、换行符等的代码示例
php使HTML标签自动补全闭合函数的代码
php实现html标签自动补全的代码
thinkPHP的Html模板标签的使用方法


    
[3]php大form用post方法传递数据丢包的问题
    来源: 互联网  发布时间: 2013-12-24

在生产环境中,一个巨大无比的form,包括三张图片,几百个输入框,近一千个checkbox,在用post方法提交到后台时,数据被拦腰截断。
一路打debug,发现PHP 拿到 $_POST时,数据就不足。
一开始以为是php中的post_max_size, upload_max_size的问题, 但是设成100M也不管用。
后来又以为是Apache 中的limitpostdate的问题,设大了之后也不管用。
 
后来在客户端装wireShark抓包,发现tcp包中间出现 TCP WINDOWS FULL,于是又以为是浏览器在TCP第二次握手的时候,没有正确传输总package size。
直到最后, 在Apache的error.log中发现, 出了如下错误:
<span >PHP Warning: Unknown: Input variables exceeded 1000</span> 
原来PHP中默认post中的参数的个数是1000,超过部分会被自动扔掉。

调整下这个数值,比如我们设置为2000:
在PHP.ini中设置
max_input_vars = 2000


    
最新技术文章:
▪PHP函数microtime()时间戳的定义与用法
▪PHP单一入口之apache配置内容
▪PHP数组排序方法总结(收藏)
▪php数组排序方法大全(脚本学堂整理奉献)
▪php数组排序的几个函数(附实例)
▪php二维数组排序(实例)
▪php根据键值对二维数组排序的小例子
▪php验证码(附截图)
▪php数组长度的获取方法(三个实例)
▪php获取数组长度的方法举例
▪判断php数组维度(php数组长度)的方法
▪php获取图片的exif信息的示例代码
▪PHP 数组key长度对性能的影响实例分析
▪php函数指定默认值的方法示例
▪php提交表单到当前页面、提交表单后页面重定...
▪php四舍五入的三种实现方法
▪php获得数组长度(元素个数)的方法
▪php日期函数的简单示例代码
▪php数学函数的简单示例代码
▪php字符串函数的简单示例代码
▪php文件下载代码(多浏览器兼容、支持中文文...
▪php实现文件下载、支持中文文件名的示例代码...
▪php文件下载(防止中文文件名乱码)的示例代码
▪解决PHP文件下载时中文文件名乱码的问题
▪php数组去重(一维、二维数组去重)的简单示例
▪php小数点后取两位的三种实现方法
▪php Redis 队列服务的简单示例
▪PHP导出excel时数字变为科学计数的解决方法
▪PHP数组根据值获取Key的简单示例
▪php数组去重的函数代码示例
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,