2012-11-03 28 views
1
<?php 

class parentClass { 

    function myChild() { 
     echo 'Child Class Name: '.__CLASS__; 
    } 
} 

class childClass extends parentClass { 

} 

$childClassObj = new childClass; 

$childClassObj->myChild(); 

輸出是如何從父類得到子類的名字在PHP

Child Class Name: parentClass 

其實,我期待的輸出

Child Class Name: childClass 

我應該怎麼做才能輸出?

+0

得到答案http://stackoverflow.com/questions/9577984/how-to-get-child-class -name-from-parent-class –

+0

你可以在每個孩子中重寫'myChild',但我想這不是你想要的 –

回答

7

您可以使用get_called_class

<?php 
    class parentClass { 

     function myChild() { 
      echo 'Child Class Name: '.get_called_class(); 
     } 
    } 

    class childClass extends parentClass { 

    } 

    $childClassObj = new childClass; 

    $childClassObj->myChild(); //childClass 
?> 
2

你有沒有嘗試過這樣的:

function myChild() { 
    echo 'Child Class Name: '.get_class($this); 
}