如何解析magento对象

时间:2013-10-24 10:11:23

标签: php magento

我想在特定类别下显示一些文字。为此,我想获得类别ID。我在top.phtml(自定义设计)中打印了类别数组,如下所示;

<?php foreach ($this->getStoreCategories() as $_category): ?>

 print_r($_category);

上面的print_r给出了如下结果。如何解析下面的对象以获取entity_id(此处的值为1013)或名称(此处为'获胜的外观')。

Mage_Catalog_Model_Category Object
(
[_eventPrefix:protected] => catalog_category
[_eventObject:protected] => category
[_cacheTag:protected] => catalog_category
[_useFlatResource:protected] => 1
[_designAttributes:Mage_Catalog_Model_Category:private] => Array
    (
        [0] => custom_design
        [1] => custom_design_from
        [2] => custom_design_to
        [3] => page_layout
        [4] => custom_layout_update
        [5] => custom_apply_to_products
    )

[_treeModel:protected] => 
[_defaultValues:protected] => Array
    (
    )

[_storeValuesFlags:protected] => Array
    (
    )

[_lockedAttributes:protected] => Array
    (
    )

[_isDeleteable:protected] => 1
[_isReadonly:protected] => 
[_resourceName:protected] => catalog/category_flat
[_resource:protected] => 
[_resourceCollectionName:protected] => catalog/category_flat_collection
[_dataSaveAllowed:protected] => 1
[_isObjectNew:protected] => 
[_data:protected] => Array
    (
        [entity_id] => 1013
        [name] => Winning Looks
        [path] => 1/2/1013
        [is_active] => 1
        [is_anchor] => 1
        [request_path] => winning-looks.html
        [id] => 1013
    )

[_hasDataChanges:protected] => 1
[_origData:protected] => 
[_idFieldName:protected] => entity_id
[_isDeleted:protected] => 
[_oldFieldsMap:protected] => Array
    (
    )

[_syncFieldsMap:protected] => Array
    (
    )

)

2 个答案:

答案 0 :(得分:1)

你可以使用<?php echo $category->getEntityId()?>

<?php foreach ($this->getStoreCategories() as $_category): 

   print_r($_category);
   echo $_category->getEntityId()

   endforeach;
?>

希望这对你有用。

答案 1 :(得分:0)

试试这个:

if ($_category->getId() == 1013){ //or $_category->getEntityId();
   //your magic code here
}