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

PHP5ÃæÏò¶ÔÏó£ºObject Cloning

PHP4:
<?
$sample1 = new StdClass();
$sample1->name = "Hasin";
$sample2 = $sample1;
$sample2->name = "Afif";
echo $sample1->name;
?>
In PHP4 it works differently; it will output Hasin, as both are different from 
each other.
PHP5:
<?
$sample1 = new StdClass();
$sample1->name = "Hasin";
$sample2 = $sample1;
$sample2->name = "Afif";
echo $sample1->name;
?>
The output is Afif
PHP5:
<?
$sample1 = new stdClass();
$sample1->name = "Hasin";
$sample2 =clone $sample1;
$sample2->name = "Afif";
echo $sample1->name;
?>
The output now would be Hasin.
__clone·½·¨µÄʹÓÃ
ĬÈϵØ,ÓÃ__clone·½·¨½«½¨Á¢Ò»¸öÓëÔ­¶ÔÏóÓµÓÐÏàͬÊôÐԺͷ½·¨µÄ¶ÔÏó. Èç¹ûÄãÏëÔÚ¿Ë¡ʱ¸Ä±äĬÈϵÄÄÚÈÝ,ÄãÒªÔÚ__cloneÖи²Ð´(ÊôÐÔ»ò·½·¨).
¿Ë¡µÄ·½·¨¿ÉÒÔûÓвÎÊý,µ«Ëüͬʱ°üº¬thisºÍthatÖ¸Õë(thatÖ¸Ïò±»¸´ÖƵĶÔÏó). Èç¹ûÄãÑ¡Ôñ¿Ë¡×Ô¼º,ÄãҪСÐĸ´ÖÆÈκÎÄãÒªÄãµÄ¶ÔÏó°üº¬µÄÐÅÏ¢,´Óthatµ½this. Èç¹ûÄãÓÃ__cloneÀ´¸´ÖÆ. PHP²»»áÖ´ÐÐÈκÎÒþÐԵĸ´ÖÆ,
ÏÂÃæÏÔʾÁËÒ»¸öÓÃϵÁÐÐòÊýÀ´×Ô¶¯»¯¶ÔÏóµÄÀý×Ó:
class ObjectTracker //¶ÔÏó¸ú×ÙÆ÷
{
private static $nextSerial = 0;
private $id;
private $name;
function __construct($name) //¹¹Ô캯Êý
{
$this->name = $name;
$this->id = ++self::$nextSerial;
}
function __clone() //¿Ë¡
{
$this->name = "Clone of $this->name";
$this->id = ++self::$nextSerial;
}
function getId() //»ñÈ¡idÊôÐÔµÄÖµ
{
return($this->id);
}
function getName() //»ñÈ¡nameÊôÐÔµÄÖµ
{
return($this->name);
}
}
$ot = new ObjectTracker("Zeev's Object");
$ot2 = clone$ot;
//Êä³ö: 1 Zeev's Object
print($ot->getId() . " " . $ot->getName() . "
");
//Êä³ö: 2 Clone of Zeev's Object
print($ot2->getId() . " " . $ot2->getName() . "
");
?>


Ïà¹ØÎĵµ£º

Á¬Ôضþ£ºphp 3des¼ÓÃÜ

3DES£¨¼´Triple DES£©ÊÇDESÏòAES¹ý¶ÉµÄ¶Ô³ÆÐÔ¼ÓÃÜËã·¨£¬ËüʹÓÃ3Ìõ64λµÄÃÜÔ¿¶ÔÊý¾Ý½øÐÐÈý´Î¼ÓÃÜ¡£ÊÇDESµÄÒ»¸ö¸ü°²È«µÄ±äÐΡ£ËüÒÔDESΪ»ù±¾Ä£¿é£¬Í¨¹ý×éºÏ·Ö×é·½·¨Éè¼Æ³ö·Ö×é¼ÓÃÜËã·¨¡£±ÈÆð×î³õµÄDES£¬3DES¸üΪ°²È«¡£
PHPÀûÓÃÀ©Õ¹¿âMcryptÀ´ÊµÏÖDES¼ÓÃÜ£¬ÕâÖÖ¼ÓÃܵĺô¦Ö÷ÒªÊDz»Í¬µÄÓïÑÔÆ½Ì¨Êý¾Ý¿ÉÒÔ½øÐн»»¥¼ÓÃÜ´«Ê䣬·ÀÖ¹ ......

PHP5.1.5_Apache2.2.3_MySQL5.0.24°²×°ÅäÖÃ

ËùÐèÈí¼þ£¨×¢Òâ°æ±¾£¡£©£º
Apache2.2.3
PHP5.1.5
MySQL5.0.24
ÕâÈý¸öÈí¼þ¶¼ÊÇÃâ·ÑµÄ£¬¿É´Ó¹ÙÍøÉÏÏÂÔØ£¬Ä¿Ç°ÎÒËùÓеÄÈí¼þÃûΪ£º
apache_2.2.3-win32-x86-no_ssl.msi
mysql-5.0.24-win32.zip
php-5.1.5-Win32.zip
»ùÓÚwindows²Ù×÷ϵͳ£¬ÔÚWindows XPϰ²×°Ê¹Óãº
1¡¢°²×°¹ý³Ì£º
Ê×ÏȰ²×°Apache·þÎñÆ÷£¬Ë«»÷apa ......

Apache2.2 php5.2 mysql ÅäÖ÷½·¨¡¾¼ò¡¿

Apache
PHP
MySQL

°´ÕÕͨ³£µÄ·½·¨£¨¿ÉÒÔÔÚÍøÉϺÜÈÝÒ×ËÑË÷µ½£©È«²¿°²×°Íê³Éºó£¬
1£¬ÐÞÕýhttpd.conf
¿É°´ÕÕÍøÂçÉÏ¿ÉËÑË÷µ½µÄapache°²×°½Ì³ÌÐ޸ľßÌåÄÚÈÝ¡£ÕâÒ»²½Ö÷ÒªÊÇÅäÖÃapache±¾ÉíµÄ²ÎÊý¡£
2£¬¼ÓÈëÖ§³Öphp5ºÍmysqlµÄ´úÂëµ½httpd.conf
LoadFile G:/server/php5/libmysql.dll
LoadModule php5_module G:/serve ......

ÖØÈ¼ÄãµÄPHP°²È«Ö®»ð

¶ÔÓڽű¾°²È«Õâ¸ö»°ÌâºÃÏñÓÀԶûÍêûÁË£¬Èç¹ûÄã¾­³£µ½¹úÍâµÄ¸÷ÖÖ¸÷ÑùµÄbugtraqÉÏ£¬Äã»á·¢ÏÖÓÐÒ»°ëÒÔÉ϶¼ºÍ½Å±¾Ïà¹Ø£¬ÖîÈçSQL
injection£¬XSS£¬Path Disclosure£¬Remote commands executionÕâÑùµÄ×ÖÑ۱ȱȽÔÊÇ£¬ÎÒÃÇ¿´ÁËÖ®ºóµÄÓÃ;ÄѵÀ½ö½öÊÇ×¥È⼦?¶ÔÓÚÎÒÃÇÏë×öweb°²È«µÄÈËÀ´Ëµ£¬×îºÃ¾ÍÊÇÄÃÀ´Ñ§Ï°
£¬¿ÉÊÇÍòÎï×¥¸ùÔ´£¬ÎÒà ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ