PHP程序字符串处理函数_PHP教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:PHP中isset和empty函数的区别
实例研究PHP函数isset()和empty()的区别 1 ? php error_reporting(E_ALL); 2 echo ' B未定义var/bBr ' ; 3 echo isset测试:Br ; 4 if ( isset ( var )) 5 { 6 echo ' 变量var存在!Br ' ; 7 } 8 9 10 echo empty测试:Br ; 11 if ( empty ( var )){ 12

  1. <?  
  2. //------------------------  
  3. // PHP内置字符串函数实现 
  4. //------------------------ 
  5.  
  6. //字符串长度  
  7. function strlen (str)  
  8. {  
  9. if (str == '' ) return 0;  
  10. count = 0;  
  11. while (1){  
  12. if ( str[count] != NULL){  
  13. count++;  
  14. continue;  
  15. }else{  
  16. break;  
  17. }  
  18. }  
  19. return count;  
  20.  
  21. //截取子串  
  22. function substr(str, start, length=NULL)  
  23. {  
  24. if (str== '' || start>strlen(str )) return;  
  25. if ((length!=NULL) && ( start>0) && (length> strlen(str)-start)) return;  
  26. if (( length!=NULL) && (start< 0) && (length>strlen(str )+start)) return;  
  27. if (length == NULL) length = (strlen(str ) - start);  
  28.  
  29. if (start < 0){  
  30. for (i=(strlen( str)+start); i<(strlen (str)+start+length ); i++) {  
  31. substr .= str[i];  
  32. }  
  33. }  
  34. if (length > 0){  
  35. for (i= start; i<(start+length ); i++) {  
  36. substr .= str[i];  
  37. }  
  38. }  
  39. if ( length < 0){  
  40. for (i =start; i<(strlen( str)+length); i++) {  
  41. substr .= str[i ];  
  42. }  
  43. }  
  44. return substr;  
  45.  
  46. //字符串翻转  
  47. function strrev(str)  
  48. {  
  49. if (str == ''return 0 ;  
  50. for (i=(strlen(str)- 1); i>=0; i --){  
  51. rev_str .= str[i ];  
  52. }  
  53. return rev_str;  
  54.  
  55. //字符串比较  
  56. function strcmp(s1, s2)  
  57. {  
  58. if (strlen(s1) < strlen(s2)) return -1 ;  
  59. if (strlen(s1) > strlen( s2)) return 1;  
  60. for (i =0; i<strlen(s1 ); i++){  
  61. if (s1[ i] == s2[i]){  
  62. continue;  
  63. }else{  
  64. return false;  
  65. }  
  66. }  
  67. return 0;  
  68.  
  69. //查找字符串  
  70. function strstr(str, substr)  
  71. {  
  72. m = strlen(str);  
  73. n = strlen(substr );  
  74. if (m < n) return false ;  
  75. for (i=0; i <=(m-n+1); i ++){  
  76. sub = substr( str, i, n);  
  77. if ( strcmp(sub, substr) == 0) return i;  
  78. }  
  79. return false ;  
  80.  
  81. //字符串替换  
  82. function str_replace(substr , newsubstr, str)  
  83. {  
  84. m = strlen(str);  
  85. n = strlen(substr );  
  86. x = strlen(newsubstr );  
  87. if (strchr(str, substr ) == false) return false;  
  88. for ( i=0; i<=(m- n+1); i++){  
  89. i = strchr(str, substr);  
  90. str = str_delete (str, i, n);  
  91. str = str_insert(str, i, newstr);  
  92. }  
  93. return str ;  
  94. }  
  95. ?> 
  96.  
  97. <?php 
  98. //--------------------  
  99. // 自实现字符串处理函数 
  100. //-------------------- 
  101.  
  102. //插入一段字符串  
  103. function str_insert(str, i , substr)  
  104. {  
  105. for(j=0 ; j<i; j ++){  
  106. startstr .= str[j ];  
  107. }  
  108. for (j=i; j <strlen(str); j ++){  
  109. laststr .= str[j ];  
  110. }  
  111. str = (startstr . substr . laststr);  
  112. return str ;  
  113.  
  114. //删除一段字符串  
  115. function str_delete(str , i, j)  
  116. {  
  117. for ( c=0; c<i; c++){  
  118. startstr .= str [c];  
  119. }  
  120. for (c=( i+j); c<strlen (str); c++){  
  121. laststr .= str[c];  
  122. }  
  123. str = (startstr . laststr );  
  124. return str;  
  125.  
  126. //复制字符串  
  127. function strcpy(s1, s2 )  
  128. {  
  129. if (strlen(s1)==NULL || !isset( s2)) return;  
  130. for (i=0 ; i<strlen(s1); i++){  
  131. s2[] = s1 [i];  
  132. }  
  133. return s2;  
  134.  
  135. //连接字符串  
  136. function strcat(s1 , s2)  
  137. {  
  138. if (!isset(s1) || !isset( s2)) return;  
  139. newstr = s1 ;  
  140. for(i=0; i <count(s); i ++){  
  141. newstr .= st[i ];  
  142. }  
  143. return newsstr;  
  144.  
  145. //简单编码函数(与php_decode函数对应)  
  146. function php_encode(str)  
  147. {  
  148. if ( str=='' && strlen( str)>128) return false;  
  149. for( i=0; i<strlen (str); i++){  
  150. c = ord(str[i ]);  
  151. if (c>31 && c <107) c += 20 ;  
  152. if (c>106 && c <127) c -= 75 ;  
  153. word = chr(c );  
  154. s .= word;  
  155. }  
  156. return s;  
  157.  
  158. //简单解码函数(与php_encode函数对应)  
  159. function php_decode(str)  
  160. {  
  161. if ( str=='' && strlen(str )>128) return false;  
  162. for( i=0; i<strlen (str); i++){  
  163. c = ord(word);  
  164. if ( c>106 && c<127 ) c = c-20;  
  165. if (c>31 && c< 107) c = c+75 ;  
  166. word = chr( c);  
  167. s .= word ;  
  168. }  
  169. return s;  
  170.  
  171. //简单加密函数(与php_decrypt函数对应)  
  172. function php_encrypt(str)  
  173. {  
  174. encrypt_key = 'abcdefghijklmnopqrstuvwxyz1234567890';  
  175. decrypt_key = 'ngzqtcobmuhelkpdawxfyivrsj2468021359';  
  176. if ( strlen(str) == 0) return false;  
  177. for (i=0; i<strlen(str); i ++){  
  178. for (j=0; j <strlen(encrypt_key); j ++){  
  179. if (str[i] == encrypt_key [j]){  
  180. enstr .= decrypt_key[j];  
  181. break;  
  182. }  
  183. }  
  184. }  
  185. return enstr;  
  186.  
  187. //简单解密函数(与php_encrypt函数对应)  
  188. function php_decrypt(str)  
  189. {  
  190. encrypt_key = 'abcdefghijklmnopqrstuvwxyz1234567890';  
  191. decrypt_key = 'ngzqtcobmuhelkpdawxfyivrsj2468021359';  
  192. if ( strlen(str) == 0) return false;  
  193. for (i=0; i<strlen(str); i ++){  
  194. for (j=0; j <strlen(decrypt_key); j ++){  
  195. if (str[i] == decrypt_key [j]){  
  196. enstr .= encrypt_key[j];  
  197. break;  
  198. }  
  199. }  
  200. }  
  201. return enstr;  
  202. }  
  203. ?> 

分享:PHP从数组里筛选出重复的数据
用PHP程序实现从数组里筛选出重复的数据 ?php num = count(array); if(num) { sort(array); } if(num!=0) { m = array[0]; n = 0; kind=1; echo array[0].----------; for(z=0;znum;z++) { if(m!=array[z]) { echo array[z-1]. ; echo array[z]; kind=0;

来源:模板无忧//所属分类:PHP教程/更新时间:2012-06-18
相关PHP教程