Chinaz.com - ¤¤°ê¯¸ªø¯¸

°Î¦W§ë½Z §ë½Z«ü«n RSS­q¾\ ¯¸ªø¸ê°T³q§i:
·j¯Á: ±zªº¦ì¸m¡G¥D­¶>ºôµ¸½sµ{>PHP½sµ{>¾\Ū¸ê°T¡GPHP¶}µo¤j«¬¶µ¥Øªº¤èªk¡GOOP«ä·Q

PHP¶}µo¤j«¬¶µ¥Øªº¤èªk¡GOOP«ä·Q

2008-07-30 15:07:28 ¨Ó·½:¤¬Ápºô §@ªÌ:½s¿è¾ã²z ¡i¤j ¤¤ ¤p¡j µû½×¡G4 ±ø

­±¦V¹ï¶H½sµ{ªº·§©À¡G

¤£¦Pªº§@ªÌ¤§¶¡»¡ªk¥i¯à¤£¤@¼Ë¡A¦ý¬O¤@­ÓOOP»y¨¥¥²¶·¦³¥H¤U´X¤è­±¡G

©â¶H¼Æ¾ÚÃþ«¬©M«H®§«Ê¸Ë¡BÄ~©Ó¡B¦hºA

¦bPHP¤¤¬O³q¹LÃþ¨Ó§¹¦¨«Ê¸Ëªº¡G

¥N½X:


<?php
class Something {
// ¦bOOPÃþ¤¤¡A³q±`²Ä¤@­Ó¦r²Å¬°¤j¼g
var $x;
function setX($v) {
// ¤èªk¶}©l¬°¤p¼g³æµü¡AµM«á¨Ï¥Î¤j¼g¦r¥À¨Ó¤À¹j³æµü¡A¨Ò¦pgetValueOfArea()
$this->x=$v;
}
function getX() {
return $this->x;
}
}
?>

·íµM§A¥i¥H«ö¦Û¤wªº³ß¦n¶i¦æ©w¸q¡A¦ý³Ì¦n«O«ù¤@ºØ¼Ð·Ç¡A³o¼Ë·|§ó¦³®Ä¡C

¼Æ¾Ú¦¨­û¦bÃþ¤¤¨Ï¥Î"var"Án©ú¨Ó©w¸q¡A¦bµ¹¼Æ¾Ú¦¨­û½á­È¤§«e¡A¥¦­Ì¬O¨S¦³Ãþ«¬ªº¡C¤@­Ó¼Æ¾Ú¦¨­û¥i¥H¬O¤@­Ó¾ã¼Æ¡A¤@­Ó¼Æ²Õ¡A¤@­Ó¬ÛÃö¼Æ²Õ(associative array)©ÎªÌ¬O¤@­Ó¹ï¶H¡C

¤èªk¦bÃþ¤¤³Q©w¸q¦¨¨ç¼Æ§Î¦¡¡A¦b¤èªk¤¤³X°ÝÃþ¦¨­ûÅܶq®É¡A§AÀ³¸Ó¨Ï¥Î$this->name¡A§_«h¹ï¤@­Ó¤èªk¨Ó»¡¡A¥¦¥u¯à¬O§½³¡Åܶq¡C

¨Ï¥Înew¾Þ§@²Å¨Ó³Ð«Ø¤@­Ó¹ï¶H¡G


$obj=new Something;

µM«á§A¥i¥H¨Ï¥Î¦¨­û¨ç¼Æ³q¹L¡G


$obj->setX(5);
$see=$obj->getX();

¦b³o­Ó¨Ò¤l¤¤¡AsetX¦¨­û¨ç¼Æ±N5½á­Èµ¹¹ï¶Hªº¦¨­ûÅܶqx(¤£¬OÃþªº)¡AµM«ágetXªð¦^¥¦ªº­È5¡C

§A¥i¥H¶H¡G$obj->x=6¨º¼Ë³q¹LÃþ¤Þ¥Î¤è¦¡¨Ó¦s¨ú¼Æ¾Ú¦¨­û¡A³o¤£¬O¤@­Ó«Ü¦nªºOOP²ßºD¡C§Ú±j¯P«ØÄ³³q¹L¤èªk¨Ó¦s¨ú¦¨­ûÅܶq¡C¦pªG§A§â¦¨­ûÅܶq¬Ý¦¨¬O¤£¥i³B²zªº¡A¨Ã¥B¥u³q¹L¹ï¶H¥y¬`¨Ó¨Ï¥Î¤èªk¡A§A±N¬O¤@­Ó¦nªºOOPµ{§Ç­û¡C¤£©¯ªº¬O¡APHP¤£¤ä«ùÁn©ú¨p¦³¦¨­ûÅܶq¡A©Ò¥H¤£¨}¥N½X¦bPHP¤¤¤]¬O¤¹³\ªº¡C

Ä~©Ó¦bPHP¤¤«Ü®e©ö¹ê²{¡A¥u­n¨Ï¥ÎextendÃöÁä¦r¡C

¥N½X:


<?php
class Another extends Something {
var $y;
function setY($v) {
$this->y=$v;
}
function getY() {
return $this->y;
}
}
?>

"Another"Ãþªº¹ï¶H²{¦b¾Ö¦³¤F¤÷Ãþ(Something)ªº¥þ³¡ªº¼Æ¾Ú¦¨­û¤Î¤èªk¡A¦Ó¥BÁÙ¥[¤W¤F¦Û¤wªº¼Æ¾Ú¦¨ ­û©M¤èªk¡C

§A¥i¥H¨Ï¥Î

¥N½X:


$obj2=new Something;
$obj2->setX(6);
$obj2->setY(7);

PHP²{¦bÁÙ¤£¤ä«ù¦h­«Ä~©Ó¡A©Ò¥H§A¤£¯à±q¨â­Ó©Î¨â­Ó¥H¤WÃþ¬£¥Í¥X·sªºÃþ¨Ó¡C

§A¥i¥H¦b¬£¥ÍÃþ¤¤­«©w¸q¤@­Ó¤èªk¡A¦pªG§Ú­Ì¦b"Another"Ãþ¤¤­«©w¸q¤FgetX¤èªk¡A§Ú­Ì´N¤£¯à¨Ï ¥Î"Something"¤¤ªºgetX¤èªk¤F¡C¦pªG§A¦b¬£¥ÍÃþ¤¤Án©ú¤F¤@­Ó»P°ò¬£¦P¦Wªº¼Æ¾Ú¦¨­û¡A¨º¤\·í§A³B²z¥¦®É¡A ¥¦±N“ÁôÂÔ°òÃþªº¼Æ¾Ú¦¨­û¡C

§A¥i¥H¦b§AªºÃþ¤¤©w¸qºc³y¨ç¼Æ¡Cºc³y¨ç¼Æ¬O¤@­Ó»PÃþ¦W¦P¦Wªº¤èªk¡A·í§A³Ð«Ø¤@­ÓÃþªº¹ï¶H®É·|³Q½Õ ¥Î¡A¨Ò¦p¡G

¥N½X:


<?php
class Something {
var $x;
function Something($y) {
$this->x=$y;
}
function setX($v) {
$this->x=$v;
}
function getX() {
return $this->x;
}
}
?>

©Ò¥H§A¥i¥H³Ð«Ø¤@­Ó¹ï¶H¡A³q¹L¡G


$obj=new Something(6);

ºc³y¨ç¼Æ·|¦Û°Ê¦a§â6½á­Èµ¹¼Æ¾ÚÅܶqx¡Cºc³y¨ç¼Æ©M¤èªk³£¬O´¶³qªºPHP¨ç¼Æ¡A©Ò¥H§A¥i¥H¨Ï¥Î¯Ê¬Ù°Ñ¼Æ¡C


function Something($x="3",$y="5")

±µµÛ¡G


$obj=new Something(); // x=3 and y=5
$obj=new Something(8); // x=8 and y=5
$obj=new Something(8,9); // x=8 and y=9

¯Ê¬Ù°Ñ¼Æ¨Ï¥ÎC++ªº¤è¦¡¡A©Ò¥H§A¤£¯à©¿²¤Yªº­È¡A¦Óµ¹X¤@­Ó¯Ê¬Ù°Ñ¼Æ¡A°Ñ¼Æ¬O±q¥ª¨ì¥k½á­Èªº¡A¦pªG¶Ç¤Jªº°Ñ¼Æ¤Ö©ó­n¨Dªº°Ñ¼Æ®É¡A¨ä§@ªº±N¨Ï¥Î¯Ê¬Ù°Ñ¼Æ¡C

·í¤@­Ó¬£¥ÍÃþªº¹ï¶H³Q³Ð«Ø®É¡A¥u¦³¥¦ªººc³y¨ç¼Æ³Q½Õ¥Î¡A¤÷Ãþªººc³y¨ç¼Æ¨S³Q½Õ¥Î¡A¦pªG§A·Q½Õ¥Î°òÃþªººc³y¨ç¼Æ¡A§A¥²¶·­n¦b¬£¥ÍÃþªººc³y¨ç¼Æ¤¤Åã¥Ü½Õ¥Î¡C¥i¥H³o¼Ë°µ¬O¦]¬°¦b¬£¥ÍÃþ¤¤©Ò¦³¤÷Ãþªº¤èªk³£¬O¥i¥Îªº¡C

Tags¡GPHP¶}µo   PHP¶µ¥Ø   OOP«ä·Q  
³d¥ô½s¿è¡G¤ô¦â¬Ó´Â
  • ½Ð¤å©ú°Ñ»P°Q½×¡A¸T¤îº©½|§ðÀ»¡C ¥Î¤á¦W¡G ¡]·sª`¥U¡^ ±K½X¡G °Î¦W¡G
    µû½×Á`¼Æ¡G ±ø [ ¬d¬Ý¥þ³¡ ] ºô¤Íµû½×
    Ãö©ó§Ú­Ì - Áp«Y§Ú­Ì - ¼s§iªA°È - ¤Í±¡Ãì±µ - ºô¯¸¦a¹Ï - ª©ÅvÁn©ú - ¤H¤~©Û¸u - À°§U