Berkeley 5.0.21ÌṩµÄPHPÀ©Õ¹µÄBug
½ñÌì×°Á˸öBerkeley 5.0.21½øÐвâÊÔ¡£
˳Àû±àÒëÁË×Ô´øµÄphp_db4Ä£¿éºó£¬½øÐвâÊÔ¡£·¢ÏÖdel²Ù×÷±¨´í£º
illegal flag specified to DB->del
<?php
dl('db4.so');
$db = new Db4();
$db->open(null, 'info.db', 'info');
$db->put('key', 'value');
var_dump($db->del('key'));
$db->close();
$db->delµÄ·µ»ØÖµÊÇ22¡£Ò²¾ÍÊDzÎÊý´íÎó¡£
֮ǰû½Ó´¥¹ýBDB£¬Ò²²»ÖªµÀÕý²»Õý³£¡£µ«»³ÒÉÊDz»ÊÇÒòΪphpÊÇÖ§³Ö4.xϵÁеģ¬Òò´Ë½øµ½phpÄ£¿éµÄ´úÂë¿´ÁËһϡ£
phpµÄdelµÄʵÏֺܼòµ¥£º
/* {{{ proto bool DB4::del(string $key [, object $txn])
*/
ZEND_NAMED_FUNCTION(_wrap_db_del)
{
DB *db = NULL;
DB_TXN *txn = NULL;
zval *txn_obj = NULL;
u_int32_t flags; // ³ö´íÐУºÎ´³õʼ»¯£¡¸ÄΪ u_int32_t flags = 0;
DBT key;
char *keyname;
int keylen;
getDbfromThis(db);
if(zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|O", &keyname, &keylen,
&txn_obj, db_txn_ce) == FAILURE)
{
return;
}
if(txn_obj) {
getDbTxnfromThis(txn);
flags = 0;
}
memset(&key, 0, sizeof(DBT));
key.data = keyname;
key.size = keylen;
RETURN_LONG(db->del(db, txn, &key, flags));
}
/* }}} */
ÒòΪÎÒûÓд«µÝtxn¶ÔÏó£¬Òò´Ëtxn_objÅжÏΪfalse,³ö´íÔÒò¾ÍºÜ¼òµ¥ÁË£º
flagsû³õʼ»¯¡£
¿´ÆðÀ´µÍ¼¶´íÎó˶¼»á·¸¡£
ÐÞÕýºó²âÊÔÕý³£¡£
Ïà¹ØÎĵµ£º
¿´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”, ......
µ¼¶Á£º ¡¡
¡¡Apache: ¡¡
¡¡¿ªÆô httpd.conf£¬¼ÓÈëÒÔÏÂÁ½ÐÐ: ¡¡
¡¡QUOTE: ¡¡
¡¡ServerTokens ProductOnly ¡¡
¡¡ServerSignature Off ¡¡
¡¡PHP: ¡¡
¡¡Òþ²Ø PHP °æ±¾¾ÍÊÇÒþ²Ø "X-Powered-By: PHP/5.1.2-1+b1" Õâ¸ö£¬¿ªÆô php.ini£¬¼ÓÈë: ¡¡
¡¡QUOTE: ¡¡
¡¡expose_php = Off ¡¡
¡¡Apache ½ûֹĿ¼ä¯ÀÀ: ¡¡
¡¡½ûֹĿ ......
<?php
$s = <<<html
<html>
<head>
<title>nested tag test</title>
<mce:script type="text/javascript"><!--
alert('fdsafdasfasd');
// --></mce:script>
</head>
<body>
<div id=0>
<div id=1><img name="im ......