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教程