这可能被认为是一个非常愚蠢的问题,但我正在为一个网站组建一个简单的模板系统,并试图跟踪我的变量使用情况并保持一切都干净整洁.
你能告诉我以下方法是否有任何优点/缺点:
简单的var:
$tpl_title = 'my title'
$tpl_desc = 'my text'
Run Code Online (Sandbox Code Playgroud)
数组:
$tpl['title'] = 'my title'
$tpl['desc'] = 'my text'
Run Code Online (Sandbox Code Playgroud)
宾语:
$tpl->title = 'my title'
$tpl->desc = 'my text'
Run Code Online (Sandbox Code Playgroud)
我喜欢对象方法最好,因为它看起来很干净,当html中的echo而不是数组和afaik它可以以类似数组的方式使用?但是,我想知道的是,以这种方式使用对象是否被视为不良做法或引入不必要的开销?
我会认为这是不必要的开销。以面向对象的方式做你正在谈论的事情只意味着在你的类中你只会创建一堆变量......就像你在第一个例子中指定的那样。
在我看来,数组是最好的方法。您只使用一个变量……您也可以将其集成到您的类中。所以不是 $tpl->title,你可能有 $tpl->text['title']
在理想情况下,每个变量都应该属于一个对象,而不是用于临时目的的方法的本地变量.然而,我们并不是生活在理想的世界中,特别是我们的编程语言远非如此.根据具体情况,选择最佳方式,让您的生活更轻松.如果您正在使用模板的东西,通常将所有数据保存在数组和extract数组中以获得独立变量.
所以是的,对象方法是最好的,尝试尽可能多地使它发生而不花费大量时间来做这件事.
此外,如果你喜欢物体,并希望有巧妙的->方法,你可以做到
$object = (object)$array;
Run Code Online (Sandbox Code Playgroud)
这会将您的数组转换为对象.
希望有所帮助.
| 归档时间: |
|
| 查看次数: |
10874 次 |
| 最近记录: |