首頁 >後端開發 >php教程 >android studio 使用 使用php重新實作PHP腳本引擎內建函數

android studio 使用 使用php重新實作PHP腳本引擎內建函數

WBOY
WBOY原創
2016-07-29 08:36:281692瀏覽

// 實在無聊,突發奇想,想把PHP裡面部分已經提供封裝好的函數重新使用PHP實現一遍, 
// 於是便有了下面的程式碼主要實現了PHP中部分字串處理函數,同時實現了一些PHP中 
// 沒有,但是同樣有作用的字符串處理函數同樣的這些函數,也能夠使用其他語言來實  
// 現,比如用C/VBScript/Perl等等,那麼你就能夠有一個自己的函數庫.              
// 以下函數不一定能夠成功運作,只是為了學習而已。
//                                                 
// 若無特別聲明,全部是由於heiyeluren原創使用任何函數都請保留作者資訊  ()
/**
 * 字串函數重構
 *
 * 版權所有 (c) 2005 heiyeluren 
 * 作者:heiyeluren@163.com>
 * Id: StringFunctions.php,v 0.1 e 2005-5-29 23:21 heiyeluren Exp $
**/
function strlen1($str)
{
 if ($str == '')
  return00 ; 0;
 while (1)
 {
  if ($str[$count] != NULL)
  {
 ++> else
   break;
 }
 return $count;
}
// }}}
// {{{ substr()
/
function substr1($str, $start, $length=0)
{
 if ($str == '')
  return;
 == '')
  return;   return;
 if (($length != NULL) && ($start > 0) && ($length > strlen($str)-$$d); if (($length != NULL) && ($start  strlen($str)+$start))
  return==; $length = (strlen($str) - $start);
 if ($start  {
  for ($i=(strlen($str)+$start); (strlen($str)+$start+$length); $i++)
  {
   $substr .= $str[$i];
  if 0)
 {
  for ($i=$start; $i  {
   $substr .= >  }
 }
 if ($length  {
  for ($i=$start; $i  {
   $substr .= $str[$i];
  }
 }
 return $substr)
}
// }}
// }}
// {{{ strrev()
/**
 * 反轉字串順序
 *
 * @param string $str 需要反轉字串變數
 * @return string  > * @create 2005- 5-24
 * @modified 2005-5-24 
 * @author heiyeluren 
 iyeluren 
 iyeluren */
函數 strrev1($str)
{
 if ($str == '') 
回傳0;
for ($i=(strlen($str)-1); $i>=0; $i--)
{
$rev_str.= $str[$i];
 }
 回傳$rev_str;
}
// }}}
// {{{ strcmp()
/**
 * 字串比較
 *
 * @param string $s1 第一個 字串
 * @param string  str1  str2, str1 = str2,
 *    return 0, 其他, return false
 * @version v0.1 <.> * @modified 2005-5-24 
 * @author heiyeluren ;
 */
函數strcmp1 ($s1, $s2)
{
if (strlen($s1) return -1;
if (strlen($s1) > strlen($s2 ))
return 1;
 for ($i=0; $i {
  if ($s1[$i] == {
  if ($s1[$i] == $s2[ $i])
   繼續;
  否則
   返回false;
 }
 回 0;
}
////{str} (), strstr(), strpos()
/**
 * 查找字串的第一次出現
 *
 * @param string $str 父字串
 * @param string 在下列位置尋找子字串父字串第一個位置,
 *    如果找不到,則回傳false
 * @version v0.4
 * @create 2005-5-24
 * @create 2005-5-24
* @modified 2005-5-29 
 * @作者heiyeluren
 */
函數 strchr1($str , $substr)
{
$m = strlen($str);
 $n = strlen($substr);
 如果($m   回傳false;
for ($i=0; $i {
$sub = substr($str, $i, $n);
  if (strcmp($sub, $substr) == 0)
  ;
 }
 回傳false;
}
// }}}
// {{{ str_replace()
/**
 * 用替換字串
 *
 * @param string $substr  需要替換子字串變數
 * @param string $ $str父字串
 * @return string   回傳取代新父字串
 * @version v0.2
 * @create 2005-5-24  * @create 2005-5-24  * * @author heiyeluren ;
 */
函數_replace1 ($substr, $newsubstr, $str)
{
 $m = strlen($str);
 $n = strlen($substr);
 $x = strlen($newsstr);
if (strchr($str, $substr) == false)
回傳false;
for ($i=0; $i {
  $i = strchr($str, $substr);
  $str = str_delete($str, $i, $n);
, $newstr);
 }
 回傳$str;
}
// }}}}
/************ 以下串處理函數是PHP沒有的,自己寫著玩 ***************/
// {{{ insert_str(), delete_str(), index_str()
/**
 * 基本字串操作
 *
 * @param string $str 需要取得子字串變數
 * @param int  遠需要取得字串長度
 * @return string  返回子字串
 * @version v0.1
 * @create 2005-5-24
 * @create 2005-5-24
 * @create 2005-5-24
 * * @author heiyeluren < ;hyeiyeluren@163.com>
 */
function str_insert($str $i, $substr)
{
for($j=0; $j {
  $startstr .= $str[$j];
  $startstr .= $str[$j];
  $startstr .= $str[$j];
}
for ($j=$i; $j {
  $laststr .= $str[$j];
 }  str = ($startstr . $substr . $laststr);
 回傳$str;
}
函數str_delete($str, $i, $j)
{
for ($c =0; $c {
  $開始str.=$str[$c];
 }
for ($c=($i+$j); $c {
  $laststr .= $str[$c];
 }
 $str = ($startstr  }
 $str = ($startstr  . > 回傳$str;
}
// }}}
// {{{ strcpy()
/**
 * 使用指定子字串取代字串
 *
 * @param string $str 需要取得子字串變數
 * @param int   param int  $length需要取得字串長度
 * @return string  返回子字串
 * @version v0.1
 * @create2005-5 27 
 * @作者 heiyeluren 
 */
函數strcpy($s1, $s2 )
{
 if (strlen($s1) == NULL)
  回傳;
 if (!isset($s2))
 ; $i {
  $s2[] = $s1[$i];
 }
 返回$s2;
}
// }}}
// {{{ strcat()
/**
 * 使用指定子字串取代字串
 *
 * @param string $str 需要取得子字串變數
 * @param int   param int  $length需要取得字串長度
 * @return string  返回子字串
 * @version v0.1
 * @create2005-5 27 
 * @作者  heiyeluren 
 */
 函數 strcat($s1, $s2)
 {
 if ($s1))
  回傳;
 if (!isset($s2))
  回傳;
 $newstr = $}$
//}}}
// {{{ php_encode(), php_decode()
/**
 * 簡單字串編碼/解碼函數
 *
 * @param string $str 需要編碼/編碼字串變數
 * @return string  在字串
 * *  之後編碼/編碼
 * @create 2005-3-11
 * @modified 2005-5-24 
 * @author heiyeluren /* 字串編碼函數*/
php_encode ($str)
{
if ($str=='' && strlen($str)>128)
回傳false;
 for($i=0; $i {
  $c = ord($str[$i]);
  if ($c>31 && $c  ($c>
  if ($c>106 && $c   $c -= 75;
  $word = chr($c);
 回傳$s; 
}
/* 字串解碼函數*/
函數php_decode($str)
{
if ($str=='' && strlen($ str)>128)
  回傳false;
 for($i=0; $i {
  $c= ord($word); 🎜>  if ($c>106 && $c   $c = $c-20;
  if ($c>31 && $c  $word = chr($c);
  $s .= $word;
 } 
 返回$s; 
}
/ {{{ php_encrypt(), php_decrypt()
/**
 * 簡單字串加密/解密函數
 *
 * @param string $str 需要加密字串變數 
 * @return .1
 * @create 2005-5-27
 * @modified 2005-5-29 
 * @author heiyeluren mm;*/
/* 定義加密金鑰*/
$encrypt_key = 'abcdefghijklmnopqrstuvw ngzqtcobmuhelkpdawxfyivrsj2468021359';
/* 字串加密函數*/
函數php_encrypt($str)
{
 f$encrypt_strkey, $delenpt==o; )
  回傳false;
for ($i=0; $i {
  for ($j=0; $j  {
   if ($str[$i] == $encrypt_key[$j])
   {
休息;
   }
  }
 }
 return $enstr;
}
/* 字串 函數* 🎜> 全域 $encrypt_key, $decrypt_key;
 if (strlen($str) == 0)
  返回false;
for ($i=0 $ )
 {
  for ($j=0; $j  {
   if ($str[$i]  {
   if ($str[$i] == )
   {
    $enstr .= $encrypt_key[$j];
    休息;   }> 🎜> // }}}
如果程式碼不正常的話,建議查看一下連接,是我在blogchina的部落格:
http://heiyeluren.blogchina.com/1741318.html

以上就介紹了android studio 使用php重新實作PHP腳本引擎內建函數,包含了android studio使用方面的內容,希望對PHP教學有興趣的朋友有幫助。


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn