BMH×Ó´®²éÕÒËã·¨(PHPʵÏÖ)
´úÂëinterface StringSearchable
{
public function search($substring, $buffer);
}
class BoyerMooreStringSearch implements StringSearchable
{
public $substring = null;
public $buffer = '';
public $jumpTable = array();
protected $results = array();
public function __construct()
{
}
public function __destruct()
{
}
public function search($substring, $buffer)
{
$this->results = array();
$this->substring = $substring;
$this->buffer = $buffer;
$this->deriveJumpTable();
$substringLen = strlen($this->substring);
$currentCharIndex = $substringLen - 1;
$bufferLen = strlen($this->buffer);
while ($currentCharIndex < $bufferLen) {
for ($i = $substringLen - 1; $i >= 0; $i--) {
&nb
Ïà¹ØÎĵµ£º
¼¸ÌìûÓиüеÄblogÕâÁ½ÌìÔÚд¸öС¶«Î÷ÍæÍæ
ÏÖÔÚÊÇ»ù±¾ÄÜÓÃÁË
×î½üûʲôÊÂ×ö£¬¾ÍÏëµ½Á˲鿴·þÎñ¶ËĿ¼µÄС³ÌÐòÍæÍæ
ÏÖÔڲ鿴ÒѾдÍêÁË·¢ÉÏÀ´¸ø´ó¼Ò¿´¿´
demoµØÖ·
http://www.web-jia.com/demo/folder/demo.html
ÎÒ·ÖÏíµÄ´úÂë»¶Ó´ó¼ÒÀ´ÏÂÔØ°¡
ÏÂÔØ¿ÉÒÔµ½
http://www.web-jia.com/viewthread.php?tid=2832&ext ......
Ò»¡¢Apache HTTP Server °²×°£º
ÔËÐÐApache .msi Îļþ£¬°²×°³ÌÐò½«ÒªÇóÄãÌîдÈçÏÂÄÚÈÝ£º
1. Network Domain¼üÈëÄãµÄ·þÎñÆ÷£¨»òÕßÊÇÄã¼´½«×¢²áµÄ·þÎñÆ÷£©µÄDNS ÓòÃû¡£ÀýÈ磬ÄãµÄ·þÎñÆ÷µÄDNSÓòÃûÈ«³ÆÊÇserver.mydomain.net,ÄãÖ»ÐèÔÚÕâÀïÊäÈëmydomain.net¡£
2. Server Name ¾ÍÊÇÄãµÄ·þÎñÆ÷µÄDNSÓòÃûÈ«³Æ£¬»¹ÊÇÉÏÃæµÄÀ ......
ÕâÀï50¸öÓÐÒæµÄPHP¹¤¾ß£¬¿ÉÒÔ´ó´óÌá¸ßÄãµÄ±à³Ì¹¤×÷£º
µ÷ÊÔ¹¤¾ß
Webgrind
Xdebug
Gubed PHP Debugger
DBG
PHP_Debug
PHP_Dyn
MacGDBp
²âÊÔºÍÓÅ»¯¹¤¾ß
PHPUnit
SimpleTest
Selenium
PHP_CodeSniffer
dBug
PHP Profile Class
Îĵµ¹¤¾ß
phpDocumentor
PHP DOX
°²È«¹¤¾ß
Securimage
£ºÑéÖ¤Â빤¾ß¡£
Scave ......
1.ÏÂÔØ°²×°mcrypt
ÏÈÈ¥http://www.sourceforge.netÏÂÔØLibmcrypt,mhash,mcrypt°²×°°ü
2 .ÏȰ²×°Libmcrypt
#tar -zxvf libmcrypt-2.5.8.tar.gz
#cd libmcrypt-2.5.8
#./configure
#make
#make install
˵Ã÷£ºlibmcriptĬÈϰ²×°ÔÚ/usr/local
3.°²×°mhash
#tar -zxvf mhash-0.9.9.9.tar.gz
#cd mhash-0.9.9.9
#./ ......
·½·¨1£ºerror_reporting (E_ALL ^ E_WARNING);
session_start();
·½·¨2£ºerror_reporting (E_ALL & ~E_NOTICE);
if (!isset($_SESSION)) {
session_start();
};
·½·¨3£º¸Äphp.ini ÖÐerror_reporting ......