较老的php知识

<?php
/*
 * PHP对XML的支持随着PHP的流行不断增强,可以找出一打的XML工具箱.
 +----------------------------------------------------------------------------------------+
 如果统计中文文字数://http://www.lupaworld.com/tutorial-view-aid-8968.html
 php代码:
 function ccStrLen($str){
     $ccLen=0;
     $ascLen=strlen($str);
    $ind=0;
    $hasCC=ereg("[xA1-xFE]",$str);//判断是否也汉字
    $hasAsc=ereg("[x01-xA0]",$str);//判断是否有ASCII字符

    if($hasCC && !$hasAsc){
        #只有汉字的情况
        return strlen($str)/2;
    }
    if(!$hasCC && $hasAsc)#只有ASCII字符的情况
    return strlen($str);
    for($ind=0;$ind<$ascLen;$ind++){
            if(ord(substr($str,$ind,1))>0xa0){
                $ccLen++;
                $ind++;
            }else{
                $ccLen++;
            }
        }
        return $ccLen;
 }
function ccStrLeft($str,$len)#从左边截取中英文混合字符串
{
    $ascLen=strlen($str);
    if($ascLen<$len) return $str;
    $hasCC=ereg("[xA1-xFE]",$str);#同上
    $hasAsc=ereg("[x01-xA0]",$str);
    if(!$hasCC) return substr($str,0,$len);
    if(!$hasAsc)
        if($len & 0x01) #如果长度是奇数
            return substr($str,0,$len+$len);
    $cind=0;$flag=0;
    while($cind < $ascLen){
        if(ord(substr($str,$cind,1))<0xA1) $flag++;
        $cind++;
    }

    if($flag & 0x01){
        return substr($str,0,$len);
    }else{
        return substr($str,0,$len-1);
    }
}
+----------------------------------------------------------------------------------------+
http://www.lupaworld.com/tutorial-view-aid-9224.html    
数据加密:

密码学可以通俗地被描述为对加/解密的研究和实验,加密是将易懂的资料转换为不易懂资料的过程,解密是将不易懂的资料转换为易懂资料的过程.不易懂的资料被称为密码,易懂的资料被称作明码.

数据的加密/解密都要一定的算法,这些算法可以很简单,例如凯撒码,但当前的加密算法相对复杂的多,其中一些利用现有的算法是无法破译的.

PHP加密:
非win平台的对crypt()熟悉,这一函数完成被称作单向加密的功能,它可以加密一些明码,但不能将密码转换为原来的明码.尽管从表明上看没有什么用的功能,但它被广泛用来保证系统密码的完整性.单向加密落入第三方人手里,由于不能还原为明文,因此也没有用处.在验证口令的时候,由于用户的输入是单向算法,如果输入与存储的经过加密的口令相匹配,则输入的口信一定是正确的.

posted @ 2012-09-15 23:30  sgsheg  阅读(180)  评论(0编辑  收藏  举报