闲来将平时用的调试代码

print_r(get_class_methods(get_class($temp_object)));

稍微修改了下,然后加到了index.php 文件中,方便调试Magento时使用

如下:

  1. function objInfo($temp_obj){ //show object class methods data information 
  2.     $temp_class = get_class($temp_obj);  
  3.     if(!$temp_class) { 
  4.         echo "\$$temp_obj  is not an object ~!<br>"
  5.         print_r($temp_obj); 
  6.         echo "<hr>"
  7.         return 0; 
  8.     } 
  9.     $details = ''
  10.     $temp_methods = get_class_methods($temp_class); 
  11.     $details .= ('The Object of Class: '.$temp_class.' --totaly has '.count($temp_methods).' Methods<hr>'); 
  12.     $temp_vars = get_class_vars($temp_class); 
  13.     foreach($temp_methods as $temp_method){ 
  14.         $details .= ("\$object->".$temp_method."()<br>");   
  15.     } 
  16.     $details .= '<hr>'
  17.     if(in_array('debug',$temp_methods)) { 
  18.         $details .= '<h2>debug() method returns</h2><hr>'
  19.         $temp_data = $temp_obj->debug(); 
  20.         foreach($temp_data as $_var => $_value){ 
  21.             if(!is_array($_value))  $details .= ($_var.' === '.$_value."<hr>"); 
  22.             else { 
  23.                 $details .= $_var ." === array ("
  24.                 foreach($_value as $t_var => $t_value
  25.                     $details .=  (' ['.$t_var.' = '.$t_value.'] '); 
  26.                 $details .= ')'
  27.             } 
  28.         } 
  29.     } 
  30.     if(in_array('getData',$temp_methods)) { 
  31.         $details .= '<h2>getData() method returns</h2><hr>'
  32.         $temp_data = $temp_obj->getData(); 
  33.         foreach($temp_data as $_var => $_value){ 
  34.             $details .= ($_var.' === '.$_value."<hr>"); 
  35.         } 
  36.     }  
  37.     print_r($details); 
  38.     return 1; 
  39. }//objInfo end; 

使用说明,如在product/view.phtml中查看 $_product 相关可用方法

 

  1. objInfo($_product);