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À©Õ¹
Ïà¹ØÎĵµ£º
ÔÎÄÁ´½Ó£ºhttp://www.phpdo.net/index.php/20100410/55.html
ÔÚPHPÖиüÐÂÊý×éµÄÄÚÈÝ¿ÉÒÔÖ±½ÓÖ¸¶¨¼üÃû²¢ÇҶԸüüÃû¸³Öµ¡£ ÀýÈ磺
<?php
$php = array(“php”,”phpdo”,”phpdo.net”);
$php[2] = “www.phpdo.net”;
print_r($php);
&nbs ......
1¡¢ÔÚÅäÖÃmysqlʵÀýµÄÓïÑÔÑ¡Ïîʱ£¬Ñ¡Ôñutf-8
2¡¢ÔÚhtml,phpÒ³ÃæÖÐ ¼ÓÉÏ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />£¬Èç¹û²»ÐÐÔÙÔÚ phpÎļþ Æðʼ´¦¼Ó header("Content-Type:text/html;charset=utf-8");
3¡¢ÔÚphpÖÐ×öÊý¾Ý¿âÁ¬½Óʱ£¬ÎÒÓõÄʱpdoµÄÐÎʽ£¬Ë ......
<?
class upload{
private $name; //$_FILES['file'][name]
private $type; //$_FILES['file'][type]
privat ......
¿´yii¿ò¼ÜÔ´ÂëµÄʱºò£¬·¢ÏÖÁË
ReflectionClassÕâ¸ö·½·¨£¬²Å·¢ÏÖÔÀ´ÊÇphp5µÄж«Î÷£¬ÓÚÊÇÉÔ΢Ñо¿ÁËÏ¡£phpµÄ·´ÉäapiÒ»¹²ÓУº
class
Reflection
{ }
interface Reflector
{ }
class
ReflectionException
extends
Exception
{ }
class
Re ......
ÔÎÄÁ´½Ó£ºhttp://www.phpdo.net/index.php/20100409/54.html
ÈçºÎÔÚPHPÖд´½¨Êý×éÄØ£¿
ÔÚPHPÖÐʹÓÃarrayº¯ÊýÀ´´´½¨Ò»¸öÊý×飬ËüÔÊÐíÒ»¶¨ÊýÁ¿ÓöººÅkey=>value²ÎÊý¡£Key¿ÉÒÔÊÇinteger»òÕßstringÀàÐÍ£¬value¿ÉÒÔÊÇÈκÎÖµ¡£
ÀýÈ磺
<?php
$array = array(“php1″=>”phpdo”, ......