background image

PHP 系统函数剖析

   包括 PHP 系统函数:strlen、substr、字符串翻转(strrev)、字符串比较(strcmp)、查找字符串
(strstr)、字符串替换(str_replace)。

  PHP 字符串处理函数:插入一段字符串(str_insert)、删除一段字符串(str_delete)、复制
字符串(strcpy)、连接字符串(strcat)、简单编码函数(与 php_decode 函数对应)(php_encode)、简
单解码函数(php_decode)、简单加密函数(与 php_decrypt 函数对应)(php_encrypt)、简单解密
函数(php_decrypt)等函数实现原理。

 
<?php

//------------------------
// PHP 内置字符串函数实现
//------------------------
//字符串长度
function strlen($str)
{
        if ($str == '') return 0;
        $count = 0;
        while (1){
                if ($str[$count] != NULL){
                        $count++;
                        continue;
                }else{
                        break;
                }
        }
        return $count;
}
//截取子串
function substr($str, $start, $length=NULL)
{
        if ($str=='' || $start>strlen($str)) return;
        if (($length!=NULL) && ($start>0) && ($length>strlen($str)-$start)) return;
        if (($length!=NULL) && ($start<0) && ($length>strlen($str)+$start)) return;
        if ($length == NULL) $length = (strlen($str) - $start);
        
        if ($start < 0){
                for ($i=(strlen($str)+$start); $i<(strlen($str)+$start+$length); $i++) {
                        $substr .= $str[$i];
                }
        }
        if ($length > 0){