最模板 - 外贸网站建设,外贸网站模板

最模板

当前位置: 首页 > 建站教程 > php教程 >

使用PHP重新实现PHP脚本引擎内置函数

时间:2014-06-09 16:40来源: 作者: 点击: 次
实在无聊,突发奇想,想把PHP里面部分已经提供封装好的函数重新使用PHP实现一遍,于是便有了下面的代码主要实现了PHP中部分字符串处理函数。 同时实现了一些PHP中没有,但是同样有作用的字符串

实在无聊,突发奇想,想把PHP里面部分已经提供封装好的函数重新使用PHP实现一遍,于是便有了下面的代码主要实现了PHP中部分字符串处理函数。

同时实现了一些PHP中没有,但是同样有作用的字符串处理函数同样的这些函数,也能够使用其他语言来实现,比如用C/VBScript/Perl等等,那么你就能够有一个自己的函数库.以下函数不一定能够成功运行,只是为了学习而已。 

  1. // {{{ strlen() 
  2. /** 
  3. * Count string length 
  4. * 
  5. * @param string $str need count length string variable 
  6. * @return int return count result 
  7. */ 
  8. function strlen1($str) 
  9. { 
  10. if ($str == '') 
  11. return 0; 
  12.  
  13. $count = 0; 
  14. while (1) 
  15. { 
  16. if ($str[$count] != NULL) 
  17. { 
  18. $count ; 
  19. continue; 
  20. } 
  21. else 
  22. break; 
  23. } 
  24. return $count; 
  25. } 
  26. // }}} 
  27.  
  28.  
  29. // {{{ substr() 
  30. /** 
  31. * Get sub string 
  32. * 
  33. * @param string $str need get sub string variable 
  34. * @param int $start start get sub string 
  35. * @param int $length need get string length 
  36. * @return string return sub string 
  37. */ 
  38. function substr1($str, $start, $length=0) 
  39. { 
  40. if ($str == '') 
  41. return; 
  42. if ($start > strlen($str)) 
  43. return; 
  44. if (($length != NULL) && ($start > 0) && ($length > strlen($str)-$start)) 
  45. return; 
  46. if (($length != NULL) && ($start < 0) && ($length > strlen($str) $start)) 
  47. return; 
  48.  
  49. if ($length == NULL) 
  50. $length = (strlen($str) - $start); 
  51.  
  52. if ($start < 0) 
  53. { 
  54. for ($i=(strlen($str) $start); $i<(strlen($str) $start $length); $i ) 
  55. { 
  56. $substr .= $str[$i]; 
  57. } 
  58. } 
  59.  
  60. if ($length > 0) 
  61. { 
  62. for ($i=$start; $i<($start $length); $i ) 
  63. { 
  64. $substr .= $str[$i]; 
  65. } 
  66. } 
  67.  
  68. if ($length < 0) 
  69. { 
  70. for ($i=$start; $i<(strlen($str) $length); $i ) 

(责任编辑:admin)
------分隔线----------------------------
栏目列表
推荐内容