windowsÏ¿ª·¢PHPÀ©Õ¹dll£¨ÎÞÐèCygwin£©
windowsÏ¿ª·¢phpÀ©Õ¹ÍøÉϺܶà×ÊÁ϶¼ËµÐèÒªCygwin£¬ÆäʵÍêÈ«¿ÉÒÔ²»±Ø°²×°¸Ã¶«¶«¡£Ã»´í£¬ÊÇ¿ÉÒÔÔÚlinuxÏÂÉú³É¹Ç¼Üºó¿½µ½windosÏÂÀ´Ó㬵«ÊÇ£¬Èç¹ûûÓÐlinux»·¾³ÄØ£¿Ê²Ã´£¬×°ÐéÄâ»ú£¿ÎÒÔΣ¬ÄãÕ¦ÓÖÈÆ»ØÈ¥ÁË- -£¡ ³ýÁ˱àÒëÍ⣬shell»·¾³Ö÷Òª¾ÍÊÇΪÁËÉú³ÉÀ©Õ¹µÄ¹Ç¼Ü£¬Æäʵ¹Ç¼ÜÒѾÔÚphpÔ´Âë°üÖÐÁËÁË£¬ÎÒÃÇÖ»ÐèÒª°ÑÏà¹ØÃû×ÖÌæ»»Ò»Ï¼´¿ÉʹÓá£
×¼±¸£º
1¡¢phpÔ´Âë°üºÍwindowsϵĶþ½øÖưü£¬ÒÔ¼°°²×°Visual C++£¬²¢°ÑMicrosoft Visual Studio\Common\MSDev98\BinµÄ¾ø¶Ô·¾¶Ìí¼Óµ½windows»·¾³±äÁ¿
2¡¢½âѹԴÂë°üµ½d:\php_src
3¡¢½øÈëd:\php_src\extĿ¼£¬¸´ÖÆskeletonÎļþ¼Ð£¬²¢ÖØÃüÃûΪҪ¿ª·¢À©Õ¹µÄÃû×Ö£¬±¾ÀýΪ“linvo”
4¡¢°Ñ¶þ½øÖưüÖÐdevĿ¼ÏµÄphp5ts.libÎļþ£¬¿½Èëн¨µÄlinvoĿ¼
5¡¢±à¼linvoĿ¼ÖеÄphp_skeleton.h¡¢skeleton.c¡¢skeleton.dspÕâÈý¸öÎļþ£¬Ìæ»»ÄÚÈÝÖÐËùÓÐextnameΪlinvo£¬EXTNAMEΪLINVO¡££¨ÑϸñÇø·Ö´óСд£©
±àÂ룺
6¡¢±à¼php_skeleton.hÎļþ£¨Í·Îļþ£©
ÔÚPHP_FUNCTION(confirm_linvo_compiled);ÏÂÃæ±àд
PHP_FUNCTION(hello);
ÉùÃ÷Ò»¸öhelloº¯Êý
7¡¢±à¼skeleton.cÎļþ£¨Ö÷Îļþ£©
ÔÚPHP_FE(confirm_linvo_compiled, NULL) ÏÂÃæ±àд
PHP_FE(hello, NULL)
ÕâÊǺ¯ÊýÈë¿Ú£¬ÏÂÃæ¸Ãдº¯ÊýÖ÷ÌåÁË
ÕÒµ½PHP_FUNCTION(confirm_test_compiled)º¯Êý£¬¸Ãº¯ÊýÊDzâÊÔº¯Êý£¬Ôڸú¯ÊýºóÃæÐÂдһ¸öº¯Êý
PHP_FUNCTION(hello)
{
char *arg = NULL;
int arg_len, len;
char *strg;
/* ½ÓÊÕ²ÎÊý */
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &arg, &arg_len) == FAILURE) {
return;
}
len = spprintf(&strg, 0, "Hello,%s", arg);
RETURN_STRINGL(strg, len, 0);
}
¸´ÖÆ´úÂë
±àÒ룺
8¡¢ÔËÐÐcmdÃüÁîÐУ¬½øÈëd:\php_src\ext\linvoĿ¼
9¡¢ÊäÈë msdev linvo.dsp /MAKE "linvo - Win32 Release_TS"
10¡¢Èç¹ûûÓдíÎó£¬ÔòÔÚphp_srcĿ¼Ï»áÉú³ÉÒ»¸öRelease_TSÎļþ¼Ð£¬ÀïÃæ¾ÍÊDZàÒëºÃµÄphp_linvo.dllÀ©Õ¹
Ïà¹ØÎĵµ£º
<?php
//ÉùÃ÷Êý×é±äÁ¿
$arr = array('ÕÅÈý','ÀîËÄ','ÍõÎå','ÀîÃ÷');
//foreachÑ»·±éÀúÊý×é
foreach($arr as $key => $value){
//×¢Òâ“$value”ºó±ØÐëÒªÒ»¸ö¿Õ¸ñ£¬·ñÔòÊä³öµÄ½á¹û²»ÕýÈ·
echo "Öµ$value µÄϱêΪ$key<br/ ......
Magento×ñÑÒ»°ãµÄ·½·¨Ê¹ÓõÚÈý·½PHP¿â,¼´£º½«php¿â·Åµ½Ä³¸öĿ¼Ï£¬ÔÚphp.ini»ò³ÌÐòÍ·²¿Ö¸¶¨¸ÃĿ¼»òÕ߸¸Ä¿Â¼Ö¸¶¨Îªinclude_path£¬È»ºó³ÌÐòÖÐʹÓÃinclude_onceÏà¶Ô·¾¶°üº¬¾ßÌåÒýÓõÄphpÎļþ
MagentoµÄlibĿ¼ÒѾĬÈÏÖ¸¶¨Îªinclude_pathÀïÁË£¬ËùÒÔÈç¹ûÓÐ3rd°üÈçVarien·Åµ½libĿ¼ÏÂ,ÓÐÒ»¸öphpÎļþÈ«ÃûΪ$magento_h ......
³ÌÐò·Ç×èÈûģʽ£¬ÕâÀïÒ²¿ÉÒÔÀí½â³É²¢·¢¡£¶ø²¢·¢ÓÖÔÝÇÒ¿ÉÒÔ·ÖÎªÍøÂçÇëÇó²¢·¢
ºÍ±¾µØ²¢·¢
¡£
ÏÈ˵һÏÂÍøÂçÇëÇó²¢·¢
ÀíÂÛÃèÊö
¼ÙÉèÓÐÒ»¸öclient£¬³ÌÐòÂß¼ÊÇÒªÇëÇóÈý¸ö²»Í¬µÄserver£¬´¦Àí¸÷×ÔµÄÏìÓ¦¡£´«Í³Ä£Ð͵±È»ÊÇ˳ÐòÖ´ÐУ¬ÏÈ·¢Ë͵ÚÒ»¸öÇëÇ󣬵ȴýÊÕµ½ÏìÓ¦Êý¾ÝºóÔÙ·¢Ë͵ڶþ¸öÇëÇó£¬ÒÔ´ËÀàÍÆ¡£¾ÍÏñÊǵ¥ºËCPU£¬Ò»´ÎÖ»ÄÜ´ ......
¿´yii¿ò¼ÜÔ´ÂëµÄʱºò£¬·¢ÏÖÁË
ReflectionClassÕâ¸ö·½·¨£¬²Å·¢ÏÖÔÀ´ÊÇphp5µÄж«Î÷£¬ÓÚÊÇÉÔ΢Ñо¿ÁËÏ¡£phpµÄ·´ÉäapiÒ»¹²ÓУº
class
Reflection
{ }
interface Reflector
{ }
class
ReflectionException
extends
Exception
{ }
class
Re ......
²½ÖèÒ»£º´î½¨»·¾³
1£¬Ê×ÏȲ鿴ÄãµÄphpÀ©Õ¹Ä¿Â¼ÏÂÊÇ·ñÓÐphp_gettext.dllÕâ¸ö
Îļþ£¬Èç¹ûûÓУ¬Õâ¾ÍÐèÒªÄã
ÏÂÔØÒ»¸ö»òÊÇ´ÓÆäËûµØ·½¿½±´Ò»¸ö£¬È»ºó·Åµ½phpÀ©Õ¹Ä¿Â¼¡£
2£¬´ò¿ªphp.ini£¬²é
ÕÒ”;extension=php_gettext.dll“ £¬È»ºóÈ¥³ý×¢ÊÍ£¬ÖØÆôapache¡£
²½Öè¶þ:ÔÀí½²½â
¼ÙÈçÄãµÄû
Óйú¼Ê»¯µÄ³ÌÐòÀïÓÐÕâÑù ......