Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

[ת] Óà SWIG ¹¹½¨ PHP À©Õ¹

×÷ÕߣºMartin Streicher, Èí¼þ¿ª·¢ÈËÔ±, Pixel, Byte, and Comma
¾¡¹Ü±àдһ¸ö PHP À©Õ¹²¢²»ÊǺÜÀ§ÄÑ£¬¶ø SWIG µÄÈ·½øÒ»²½¼ò»¯ÁËÕâÏîÈÎÎñ£¬ÕâÖ÷ÒªÊÇÒòΪËü×Ô¶¯»¯Á˽áºÏ PHP Óë C »ò C++ ËùÐèµÄ¹¤×÷¡£Èô¸ø¶¨¶ÔÒ»¸öº¯ÊýµÄÃè»æ — º¯ÊýµÄÃû³Æ¼°ÆäÐβΠ— SWIG ¾Í»áÉú³ÉÒ»¸ö°ü×°³ÌÐòÀ´½« PHP ÓëµÍ²ã´úÂëÁ¬½ÓÆðÀ´¡£
SWIG ÐèҪһЩǰÌáÌõ¼þ¡£SWIG µÄһЩ×îа汾ÐèÒª PHP µÄ°æ±¾ÊÇ V5¡£´ËÍ⣬»¹ÐèÒªÓÐÒ»¸ö C/C++ ±àÒëÆ÷£¬±ÈÈç GNU Compiler Collection (GCC)£¬ÒÔ¼° PHP Module Development Kit (MDK)¡£ÌرðÊÇÄú»¹ÒªÓÐÓë PHP °²×°Ïà¹ØµÄÍ·Îļþ¡£Èç¹ûÄúʹÓõÄÊÇ Ubuntu Linux ® »òÒ»¸ö Debian µÄ±äÌå²¢ÇÒÒѾ­´ÓÒ»¸ö°ü´æ´¢¿â°²×°ÁË PHP V5£¬ÄÇôһ°ã¶øÑÔÄú¾Í¿ÉÒÔʹÓà Advanced Packaging Tool (APT) Ìí¼Ó MDK ÁË¡£ÀýÈ磬ÔÚ Ubuntu ÄÚºË 9.10 ÉÏ£¬¼üÈë apt-get install sudo apt-get install --install-recommends --yes php5-dev¡£
½ØÖ¹µ½ 2009 Äêµ×£¬SWIG µÄ×îа汾ÊÇ V1.3.40£¨²Î¼û ²Î¿¼×ÊÁÏ£©¡£ÏÂÔØ tarball £¨Ò»¸öÓÉ gzip ѹËõÁ赀 TAR Îļþ£©£¬½«Ëü½âѹËõ£¬È»ºóÕë¶ÔÄúµÄϵͳÅäÖÃÕâЩ´úÂ룬¹¹½¨²¢°²×°Õâ¸öÈí¼þ¡££¨ÒªÏëÕÒµ½ËùÓеÄÅäÖÃÑ¡ÏÔËÐÐ ./configure --help£©¡£Çåµ¥ 1 ÌṩÁËÏÂÔØ¡¢½âѹËõºÍ°²×° SWIG ËùÐèµÄÃüÁî¡£
Çåµ¥ 1. ÏÂÔØ¡¢½âѹËõºÍ°²×° SWIG

$ wget http://prdownloads.sourceforge.net/swig/swig-1.3.40.tar.gz
$ tar xzf swig-1.3.40.tar.gz
$ cd swig-1.3.40
$ ./configure
$ make
$ sudo make install
$ which swig
/usr/local/bin/swig
¹¹½¨Ò»¸öÀ©Õ¹
ÈÃÎÒÃǹ¹½¨Ò»¸öÀ©Õ¹À´Óà Linux mcrypt ¿â¼ÓÃܺͽâÃÜÏûÏ¢¡£PHP ÌṩÁËÒ»¸ö mcrypt ¿â£¬µ«Ëü²»¹ýÊǶԴ˿âµÄ C °æ±¾ÉÔ×÷ÐÞÊκóµÄ½á¹û¡£ÏÖÔÚ£¬ÈÃÎÒÃǹ¹½¨Á½¸ö¸üΪ¼ò½àµÄ·½·¨£ºÒ»¸öÓÃÀ´¼ÓÃÜ×Ö·û´®£¬ÁíÒ»¸öÓÃÀ´½âÃÜ×Ö·û´®¡£
ÔÚ Ubuntu »òÓëÆäÏàËÆµÄϵͳÉÏ£¬Äú¿ÉÒÔÓà APT °²×°Ç¡µ±µÄ mcrypt ¿âºÍÍ·Îļþ£º$ sudo apt-get install libmcrypt-dev libmcrypt4 mcrypt libmhash2¡£
ÈôÄúÄþÔ¸´ÓÍ·¿ªÊ¼¹¹½¨£¬»òÕßÄúµÄ·Ö²¼°æÄÚ²»°üÀ¨ mcrypt£¬ÄÇô¿ÉÒÔ´ÓËüµÄÖ÷Ò³ÉÏÏÂÔØÔ´´úÂ루²Î¼û ²Î¿¼×ÊÁÏ£©¡£Ìæ´úÁË crypt µÄ mcrypt ʵÓóÌÐòÒ²ÒÀÀµÓÚ libmhash£¬Òò´Ë±ØÐëÔÚ±àÒë mcrypt ֮ǰ¹¹½¨ libmhash¡£Çåµ¥ 2 ¸ø³öÁ˹¹½¨ libmhash ËùÐèµÄ´úÂë¡£
Çåµ¥ 2. ¹¹½¨ libmhash

$ # libmhash
$ wget http://sourceforge.net/projects/mhash/files/mhash/0.9.9.9/\


Ïà¹ØÎĵµ£º

PHPÊý¾Ý½á¹¹——¶þ·Ö²éÕÒÓë˳Ðò²éÕÒ

<?php
//--------------------
// »ù±¾Êý¾Ý½á¹¹
//--------------------
//¶þ·Ö²éÕÒ£¨Êý×éÀï²éÕÒij¸öÔªËØ£©
function bin_sch($arr, $low, $high, $k) {
if($low<=$high) {
$mid = intval(($low+$high)/2);
if($arr[$mid] == $k) {
return $mid;
} elseif($k<$ ......

PHPÊý¾Ý½á¹¹——ÏßÐÔ±íµÄɾ³ý

function delete_array_element($arr,$i) {
$len = count($arr);
for($j=$i; $j<$len; $j++) {
$arr[$j] = $arr[$j+1];
}
array_pop($arr);//½«Êý×éµÄ×îºóÒ»¸öµ¥Ôªµ¯³ö
return $arr;
}
for($i=0; $i<10; $i++) {
$arr1[$i] = $i+1;
}
print_r($arr1);
echo "< ......

php·ÖÒ³º¯Êý

<?php
function page ( $totalPage , $currentPage,$url ,$halfPer=5)
{
$total=$totalPage-1;
$re="<td><a href="\" mce_href="\""$url\" onclick=\"page=prompt('¹²{$totalPage}Ò³\\n×Ô¶¨ÒåÌø×ªµ½µÚ¼¸Ò³£º','');if(page>0&&page<$total)location.href=this.href+'='+(page-1);r ......

php urlencode()

ÔÚPHPÖÐÓÐurlencode()¡¢urldecode()¡¢rawurlencode()¡¢rawurldecode()ÕâЩº¯ÊýÀ´½â¾öÍøÒ³
URL±àÂë½âÂëÎÊÌâ¡£
ÔÚASPµÄʱºòURL±àÂë½âÂëºÜÊÇÄÕ»ð£¬Server.urlencode²»Ì«ºÃÓã¬Óöµ½utf-8±àÂëµÄµØÖ·¸üÊÇÂé
·³¡£ÄãÒª»ñÈ¡°Ù¶È¡¢Googleµã»÷µ½ÍøÕ¾µÄÍøÖ·Á´½ÓÖеĹؼü×Ö£¬ÒªÐ´ÉÏÒ»¶Ñ×Ô¶¨Ò庯ÊýÀ´µÃµ½urldecodeµÄЧ¹û¡£
ժ¼һƪ¹Ø ......

³É¾ÍPHP¸ßÊÖµÄÎå¸ö±ØÓÉ֮·

¾­³£ÓÐһЩ¾­Ñé²»×ãµÄPHP¿ª·¢ÈËÔ±ÔÚFreenodeµÄphp
IRCƵµÀÉÏÎÊÎÊÌâ¡£Èç¹ûÎÊÌâºÜËöË飬»òÕß´ð°¸ÏÔ¶øÒ×¼û£¬»ò±íÏÖµÃÏóÒ»¸ö²ËÄñ£¬ºÜ¿ìËûÃǾͻᷢÏÖ»áÊܵ½ÈçÏÂһЩ»Ø¸´µÄÅں䣺“È¥¶Á¸ÃËÀµÄÊÖ²áÈ¥°É”£¬“ºÃ
ºÃȥѧһѧPHP°É”£¬“ÎÒÃDz»ÊÇÄã¸öÈ˵ĵ¼Ê¦”»ò¸üÖ±½ÓµÄ“ÄãÐèÒª³ÉΪһ¸ö¸üºÃµ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ