日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

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

發布時間:2025/3/19 php 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ie php脚本引擎,使用php重新实现PHP脚本引擎内置函数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

使用php重新實現PHP腳本引擎內置函數

//?實在無聊,突發奇想,想把PHP里面部分已經提供封裝好的函數重新使用PHP實現一遍,

//?于是便有了下面的代碼主要實現了PHP中部分字符串處理函數,同時實現了一些PHP中

//?沒有,但是同樣有作用的字符串處理函數同樣的這些函數,也能夠使用其他語言來實

//?現,比如用C/VBScript/Perl等等,那么你就能夠有一個自己的函數庫.

//?以下函數不一定能夠成功運行,只是為了學習而已。

//

//?如果無特別聲明,全部是由于heiyeluren原創,要使用任何函數都請保留作者信息

/**

*?String?Functions?Reconstruct

*

*?Copyright?(c)?2005?heiyeluren?

*?Author:?heiyeluren?

*?$Id:?StringFunctions.php,v?0.1?e?2005-5-29?23:21?heiyeluren?Exp?$

**/

//?{{{?strlen()

/**

*?Count?string?length

*

*?@param?string?$str?need?count?length?string?variable

*?@return?int????return?count?result

*?@version?v0.1

*?@create?2005-5-24

*?@modified?2005-5-24

*?@author?heiyeluren?

*/

function?strlen1($str)

{

if?($str?==?'')

return?0;

$count?=?0;

while?(1)

{

if?($str[$count]?!=?NULL)

{

$count++;

continue;

}

else

break;

}

return?$count;

}

//?}}}

//?{{{?substr()

/**

*?Get?sub?string

*

*?@param?string?$str?need?get?sub?string?variable

*?@param?int??$start?start?get?sub?string

*?@param?int??$length?need?get?string?length

*?@return?string???return?sub?string

*?@version?v0.2

*?@create?2005-5-24

*?@modified?2005-5-25

*?@author?heiyeluren?

*/

function?substr1($str,?$start,?$length=0)

{

if?($str?==?'')

return;

if?($start?>?strlen($str))

return;

if?(($length?!=?NULL)?&&?($start?>?0)?&&?($length?>?strlen($str)-$start))

return;

if?(($length?!=?NULL)?&&?($start??strlen($str)+$start))

return;

if?($length?==?NULL)

$length?=?(strlen($str)?-?$start);

if?($start?

{

for?($i=(strlen($str)+$start);?$i

{

$substr?.=?$str[$i];

}

}

if?($length?>?0)

{

for?($i=$start;?$i

{

$substr?.=?$str[$i];

}

}

if?($length?

{

for?($i=$start;?$i

{

$substr?.=?$str[$i];

}

}

return?$substr;

}

//?}}}

//?{{{?strrev()

/**

*?Reversal?string?order

*

*?@param?string?$str?need?reversal?string?variable

*?@return?string???reversal?string

*?@version?v0.1

*?@create?2005-5-24

*?@modified?2005-5-24

*?@author?heiyeluren?

*/

function?strrev1($str)

{

if?($str?==?'')

return?0;

for?($i=(strlen($str)-1);?$i>=0;?$i--)

{

$rev_str?.=?$str[$i];

}

return?$rev_str;

}

//?}}}

//?{{{?strcmp()

/**

*?String?comparison

*

*?@param?string?$s1?first?string

*?@param?string?$s2?second?string

*?@return?int??return?-1,str1??str2,?str1?=?str2,

*????return?0,?other,?return?false

*?@version?v0.1

*?@create?2005-5-24

*?@modified?2005-5-24

*?@author?heiyeluren?

*/

function?strcmp1($s1,?$s2)

{

if?(strlen($s1)?

return?-1;

if?(strlen($s1)?>?strlen($s2))

return?1;

for?($i=0;?$i

{

if?($s1[$i]?==?$s2[$i])

continue;

else

return?false;

}

return?0;

}

//?}}}

//?{{{?strchr(),?strstr(),?strpos()

/**

*?Find?first?occurrence?of?a?string

*

*?@param?string?$str?parent?string

*?@param?string?$substr?need?match?sub?string

*?@return?int??return?find?sub?string?at?parent?string?first?place,

*????f?not?find,?return?false

*?@version?v0.4

*?@create?2005-5-24

*?@modified?2005-5-29

*?@author?heiyeluren?

*/

function?strchr1($str,?$substr)

{

$m?=?strlen($str);

$n?=?strlen($substr);

if?($m?

return?false;

for?($i=0;?$i<=($m-$n+1);?$i++)

{

$sub?=?substr($str,?$i,?$n);

if?(strcmp($sub,?$substr)?==?0)

return?$i;

}

return?false;

}

//?}}}

//?{{{?str_replace()

/**

*?Replace?all?occurrences?of?the?search?string?with?the?replacement?string

*

*?@param?string?$substr??need?replace?sub?string?variable

*?@param?string?$newsubstr?new?sub?string

*?@param?string?$str??operate?parent?string

*?@return?string???return?replace?after?new?parent?string

*?@version?v0.2

*?@create?2005-5-24

*?@modified?2005-5-29

*?@author?heiyeluren?

*/

function?str_replace1($substr,?$newsubstr,?$str)

{

$m?=?strlen($str);

$n?=?strlen($substr);

$x?=?strlen($newsubstr);

if?(strchr($str,?$substr)?==?false)

return?false;

for?($i=0;?$i<=($m-$n+1);?$i++)

{

$i?=?strchr($str,?$substr);

$str?=?str_delete($str,?$i,?$n);

$str?=?str_insert($str,?$i,?$newstr);

}

return?$str;

}

//?}}}

/************?以下串處理函數是PHP中沒有的,自己寫著玩?***************/

//?{{{?insert_str(),?delete_str(),?index_str()

/**

*?Basic?string?operate

*

*?@param?string?$str?need?get?sub?string?variable

*?@param?int??$start?start?get?sub?string

*?@param?int??$length?need?get?string?length

*?@return?string??return?sub?string

*?@version?v0.1

*?@create?2005-5-24

*?@modified?2005-5-24

*?@author?heiyeluren?

*/

function?str_insert($str,?$i,?$substr)

{

for($j=0;?$j

{

$startstr?.=?$str[$j];

}

for?($j=$i;?$j

{

$laststr?.=?$str[$j];

}

$str?=?($startstr?.?$substr?.?$laststr);

return?$str;

}

function?str_delete($str,?$i,?$j)

{

for?($c=0;?$c

{

$startstr?.=?$str[$c];

}

for?($c=($i+$j);?$c

{

$laststr?.=?$str[$c];

}

$str?=?($startstr?.?$laststr);

return?$str;

}

//?}}}

//?{{{?strcpy()

/**

*?Use?designate?sub?string??replace?string

*

*?@param?string?$str?need?get?sub?string?variable

*?@param?int??$start?start?get?sub?string

*?@param?int??$length?need?get?string?length

*?@return?string??return?sub?string

*?@version?v0.1

*?@create?2005-5-27

*?@modified?2005-5-27

*?@author?heiyeluren?

*/

function?strcpy($s1,?$s2)

{

if?(strlen($s1)?==?NULL)

return;

if?(!isset($s2))

return;

for?($i=0;?$i

{

$s2[]?=?$s1[$i];

}

return?$s2;

}

//?}}}

//?{{{?strcat()

/**

*?Use?designate?sub?string??replace?string

*

*?@param?string?$str?need?get?sub?string?variable

*?@param?int??$start?start?get?sub?string

*?@param?int??$length?need?get?string?length

*?@return?string??return?sub?string

*?@version?v0.1

*?@create?2005-5-27

*?@modified?2005-5-27

*?@author??heiyeluren?

*/

function?strcat($s1,?$s2)

{

if?(!isset($s1))

return;

if?(!isset($s2))

return;

$newstr?=?$s1?.?$s2;

return?$newsstr;

}

//?}}}

//?{{{?php_encode(),?php_decode()

/**

*?Simple?string?encode/decode?function

*

*?@param?string?$str?need?code/encode?string?variable

*?@return?string??code/encode?after?string

*?@version?v0.2

*?@create?2005-3-11

*?@modified?2005-5-24

*?@author?heiyeluren?

*/

/*?String?encode?function?*/

function?php_encode($str)

{

if?($str==''?&&?strlen($str)>128)

return?false;

for($i=0;?$i

{

$c?=?ord($str[$i]);

if?($c>31?&&?$c<107)

$c?+=?20;

if?($c>106?&&?$c<127)

$c?-=?75;

$word?=?chr($c);

$s?.=?$word;

}

return?$s;

}

/*?String?decode?function?*/

function?php_decode($str)

{

if?($str==''?&&?strlen($str)>128)

return?false;

for($i=0;?$i

{

$c?=?ord($word);

if?($c>106?&&?$c<127)

$c?=?$c-20;

if?($c>31?&&?$c<107)

$c?=?$c+75;

$word?=?chr($c);

$s?.=?$word;

}

return?$s;

}

//?}}}

//?{{{?php_encrypt(),?php_decrypt()

/**

*?Simple?string?encrypt/decrypt?function

*

*?@param?string?$str?need?crypt?string?variable

*?@return?string??encrypt/decrypt?after?string

*?@version?v0.1

*?@create?2005-5-27

*?@modified?2005-5-29

*?@author?heiyeluren?

*/

/*?define?crypt?key?*/

$encrypt_key?=?'abcdefghijklmnopqrstuvwxyz1234567890';

$decrypt_key?=?'ngzqtcobmuhelkpdawxfyivrsj2468021359';

/*?String?encrypt?function?*/

function?php_encrypt($str)

{

global?$encrypt_key,?$decrypt_key;

if?(strlen($str)?==?0)

return?false;

for?($i=0;?$i

{

for?($j=0;?$j

{

if?($str[$i]?==?$encrypt_key[$j])

{

$enstr?.=?$decrypt_key[$j];

break;

}

}

}

return?$enstr;

}

/*?String?decrypt?function?*/

function?php_decrypt($str)

{

global?$encrypt_key,?$decrypt_key;

if?(strlen($str)?==?0)

return?false;

for?($i=0;?$i

{

for?($j=0;?$j

{

if?($str[$i]?==?$decrypt_key[$j])

{

$enstr?.=?$encrypt_key[$j];

break;

}

}

}

return?$enstr;

}

//?}}}

如果代碼不清晰的話,建議查看一下連接,是我在blogchina的博客:

http://heiyeluren.blogchina.com/1741318.html

本條技術文章來源于互聯網,如果無意侵犯您的權益請點擊此處反饋版權投訴

本文系統來源:php中文網

TAG標簽:腳本

總結

以上是生活随笔為你收集整理的ie php脚本引擎,使用php重新实现PHP脚本引擎内置函数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。