Mage::registry()
Magento采用变量来存储即时数据,来减少与数据库的交互,从而速度也得到了提高

  1. register() – 添加变量,整型  字符串  数组
  2. unregister() – 销毁变量
  3. registry() – 调用存在的变量

我们如何知道默认可使用的变量有哪些呢?

在Mage 类中添加方法

 
  
  1. public static function getRegistry() { return self::$_registry; } 

在phtml中调用,并输出所需要的信息

 
  
  1. <?php $registry = Mage::getRegistry() ?>
  2. <?php if (count($registry) > 0): ?> 
  3. <h2>Store’s Current Registry</h2> 
  4. <ul> 
  5. <?php foreach($registry as $index => $value): ?> 
  6. <li> Registry['<a href="#"><?php echo $index ?>'] = (<em><?php echo gettype($value) ?></em>) <strong> 
  7. <?php if (is_object($value)): ?>
  8. <?php echo get_class($value) ?> 
  9. <?php elseif (is_array($value)): ?> Array 
  10. <?php else: ?> <?php echo $value ?> 
  11. <?php endif; ?> </strong> </li> 
  12. <?php endforeach; ?> </ul> 
  13. <?php endif; ?> 

本地测试结果如下

 
  
  1. Registry['original_include_path'] = (string) .;C:\php5\pear 
  2. Registry['application_params'] = (array) Array 
  3. Registry['_singleton/core/resource'] = (object) Mage_Core_Model_Resource 
  4. Registry['_resource_singleton/core/resource'] = (object) Mage_Core_Model_Resource_Resource 
  5. Registry['_helper/core'] = (object) Mage_Core_Helper_Data 
  6. Registry['_singleton/core/resource_setup_query_modifier'] = (object) Mage_Core_Model_Resource_Setup_Query_Modifier 
  7. Registry['_resource_singleton/core/website'] = (object) Mage_Core_Model_Resource_Website 
  8. Registry['_resource_singleton/core/store_group'] = (object) Mage_Core_Model_Resource_Store_Group 
  9. Registry['_resource_singleton/core/store'] = (object) Mage_Core_Model_Resource_Store 
  10. Registry['_resource_helper/core'] = (object) Mage_Core_Model_Resource_Helper_Mysql4 
  11. Registry['_singleton/core/cookie'] = (object) Mage_Core_Model_Cookie 
  12. Registry['controller'] = (object) Mage_Core_Controller_Varien_Front 
  13. Registry['_singleton/Mage_Cms_Controller_Router'] = (object) Mage_Cms_Controller_Router 
  14. Registry['_singleton/Amasty_Shopby_Model_Observer'] = (object) Amasty_Shopby_Model_Observer 
  15. Registry['_resource_singleton/core/url_rewrite'] = (object) Mage_Core_Model_Resource_Url_Rewrite 
  16. Registry['_singleton/core/layout'] = (object) Mage_Core_Model_Layout 
  17. Registry['_helper/core/http'] = (object) Mage_Core_Helper_Http 
  18. Registry['_singleton/core/session'] = (object) Mage_Core_Model_Session 
  19. Registry['_singleton/core/design_package'] = (object) Mage_Core_Model_Design_Package 
  20. Registry['_singleton/core/design'] = (object) Mage_Core_Model_Design 
  21. Registry['_resource_singleton/core/design'] = (object) Mage_Core_Model_Resource_Design 
  22. Registry['_singleton/core/translate'] = (object) Mage_Core_Model_Translate 
  23. Registry['_singleton/core/locale'] = (object) Mage_Core_Model_Locale 
  24. Registry['_singleton/core/translate_inline'] = (object) Mage_Core_Model_Translate_Inline 
  25. Registry['_resource_singleton/core/translate'] = (object) Mage_Core_Model_Resource_Translate 
  26. Registry['_helper/core/string'] = (object) Mage_Core_Helper_String 
  27. Registry['_singleton/log/visitor'] = (object) Mage_Log_Model_Visitor 
  28. Registry['_resource_singleton/log/visitor'] = (object) Mage_Log_Model_Resource_Visitor 
  29. Registry['_singleton/pagecache/observer'] = (object) Mage_PageCache_Model_Observer 
  30. Registry['_helper/pagecache'] = (object) Mage_PageCache_Helper_Data 
  31. Registry['_singleton/persistent/observer'] = (object) Mage_Persistent_Model_Observer 
  32. Registry['_helper/persistent'] = (object) Mage_Persistent_Helper_Data 
  33. Registry['_helper/persistent/session'] = (object) Mage_Persistent_Helper_Session 
  34. Registry['_resource_singleton/persistent/session'] = (object) Mage_Persistent_Model_Resource_Session 
  35. Registry['_singleton/persistent/observer_session'] = (object) Mage_Persistent_Model_Observer_Session 
  36. Registry['_singleton/customer/config_share'] = (object) Mage_Customer_Model_Config_Share 
  37. Registry['_singleton/customer/session'] = (object) Mage_Customer_Model_Session 
  38. Registry['_helper/catalog/product_view'] = (object) Mage_Catalog_Helper_Product_View 
  39. Registry['_helper/catalog/product'] = (object) Mage_Catalog_Helper_Product 
  40. Registry['_helper/catalog'] = (object) Mage_Catalog_Helper_Data 
  41. Registry['_singleton/eav/config'] = (object) Mage_Eav_Model_Config 
  42. Registry['_resource_singleton/eav/entity_type'] = (object) Mage_Eav_Model_Resource_Entity_Type 
  43. Registry['_resource_singleton/catalog/product'] = (object) Mage_Catalog_Model_Resource_Product 
  44. Registry['_resource_singleton/catalog/attribute'] = (object) Mage_Catalog_Model_Resource_Attribute 
  45. Registry['_resource_helper/catalog'] = (object) Mage_Catalog_Model_Resource_Helper_Mysql4 
  46. Registry['_resource_helper/eav'] = (object) Mage_Eav_Model_Resource_Helper_Mysql4 
  47. Registry['_resource_singleton/catalog/product_attribute_backend_media'] = (object) Mage_Catalog_Model_Resource_Product_Attribute_Backend_Media 
  48. Registry['_resource_singleton/catalog/product_attribute_backend_tierprice'] = (object) Mage_Catalog_Model_Resource_Product_Attribute_Backend_Tierprice 
  49. Registry['_singleton/cataloginventory/observer'] = (object) Mage_CatalogInventory_Model_Observer 
  50. Registry['_resource_singleton/cataloginventory/stock_item'] = (object) Mage_CatalogInventory_Model_Resource_Stock_Item 
  51. Registry['_singleton/cataloginventory/stock_status'] = (object) Mage_CatalogInventory_Model_Stock_Status 
  52. Registry['_resource_singleton/cataloginventory/stock_status'] = (object) Mage_CatalogInventory_Model_Resource_Stock_Status 
  53. Registry['_singleton/catalog/product_status'] = (object) Mage_Catalog_Model_Product_Status 
  54. Registry['_singleton/catalog/product_visibility'] = (object) Mage_Catalog_Model_Product_Visibility 
  55. Registry['_helper/catalog/category_flat'] = (object) Mage_Catalog_Helper_Category_Flat 
  56. Registry['_resource_singleton/catalog/category'] = (object) Mage_Catalog_Model_Resource_Category 
  57. Registry['current_category'] = (object) Mage_Catalog_Model_Category 
  58. Registry['current_product'] = (object) Mage_Catalog_Model_Product 
  59. Registry['product'] = (object) Mage_Catalog_Model_Product 
  60. Registry['_singleton/reports/event_observer'] = (object) Mage_Reports_Model_Event_Observer 
  61. Registry['_resource_singleton/reports/product_index_viewed'] = (object) Mage_Reports_Model_Resource_Product_Index_Viewed 
  62. Registry['_resource_helper/reports'] = (object) Mage_Reports_Model_Resource_Helper_Mysql4 
  63. Registry['_helper/catalog/product_flat'] = (object) Mage_Catalog_Helper_Product_Flat 
  64. Registry['_singleton/reports/session'] = (object) Mage_Reports_Model_Session 
  65. Registry['_resource_singleton/reports/event'] = (object) Mage_Reports_Model_Resource_Event 
  66. Registry['_singleton/sendfriend/observer'] = (object) Mage_Sendfriend_Model_Observer 
  67. Registry['send_to_friend_model'] = (object) Mage_Sendfriend_Model_Sendfriend 
  68. Registry['_singleton/catalog/session'] = (object) Mage_Catalog_Model_Session 
  69. Registry['_singleton/catalog/design'] = (object) Mage_Catalog_Model_Design 
  70. Registry['_singleton/customer/observer'] = (object) Mage_Customer_Model_Observer 
  71. Registry['_helper/customer'] = (object) Mage_Customer_Helper_Data 
  72. Registry['_helper/catalog/map'] = (object) Mage_Catalog_Helper_Map 
  73. Registry['_helper/catalogsearch'] = (object) Mage_CatalogSearch_Helper_Data 
  74. Registry['_helper/wishlist'] = (object) Mage_Wishlist_Helper_Data 
  75. Registry['_helper/contacts'] = (object) Mage_Contacts_Helper_Data 
  76. Registry['_singleton/tag/session'] = (object) Mage_Tag_Model_Session 
  77. Registry['_singleton/checkout/session'] = (object) Mage_Checkout_Model_Session 
  78. Registry['_helper/core/js'] = (object) Mage_Core_Helper_Js 
  79. Registry['_helper/directory'] = (object) Mage_Directory_Helper_Data 
  80. Registry['_helper/googleanalytics'] = (object) Mage_GoogleAnalytics_Helper_Data 
  81. Registry['_singleton/checkout/cart'] = (object) Mage_Checkout_Model_Cart 
  82. Registry['_helper/sales'] = (object) Mage_Sales_Helper_Data 
  83. Registry['_resource_singleton/sales/quote_item'] = (object) Mage_Sales_Model_Resource_Quote_Item 
  84. Registry['_resource_singleton/sales/quote'] = (object) Mage_Sales_Model_Resource_Quote 
  85. Registry['_helper/catalog/category'] = (object) Mage_Catalog_Helper_Category 
  86. Registry['_singleton/catalog/layer'] = (object) Mage_Catalog_Model_Layer 
  87. Registry['_helper/catalog/output'] = (object) Mage_Catalog_Helper_Output 
  88. Registry['_helper/wjtheme'] = (object) WJ_Theme_Helper_Data 
  89. Registry['_singleton/catalog/product_url'] = (object) Mage_Catalog_Model_Product_Url  

简单的使用范例

 

 
  
  1. eg: 
  2.  
  3. print_r($mage_obj->registry('_singleton/core/cookie')->getDomain()); //输出网站域名 
  4.  
  5. print_r($mage_obj->registry('_singleton/core/cookie')->getPath()); //输出网站相对路径