当属性可用时,您应该始终使用方法而不是直接访问属性。
方法是对象的“API”,通过使用它们,您无需担心对象数据的内部结构,从理论上讲,它允许对对象进行设计,使其内部结构可以更改,而不会影响使用它的代码。在许多代码中,如果没有方法,属性实际上是不可能访问的。为了向后兼容,WooCommerce还没有做到这一点,并且很可能不会出于同样的原因更改数据结构,但它的最佳实践和您应该养成使用这些方法的习惯。
特别是在WooCommerce中,它还确保价值通过woocommerce_product_get_name
过滤器,这意味着该值将正确反映用户可能正在运行的其他插件所做的任何修改。例如,用户可能正在运行使用woocommerce_product_get_price
筛选以将价格转换为其他货币的适当值。如果您的代码使用$product->price
而不是$product->get_price()
那么您将在该上下文中使用不正确的值。