2011-01-24 53 views
6

哪一个是从性能视图(CPU使用率和等)更好?使用太多的变量或单个关联数组或通常是一个数组?变数太多VS阵列

这一个:

$ld_linkdump_title   = get_option('ld_linkdump_title'); 
$ld_linkdump_widget_title = get_option('ld_linkdump_widget_title'); 
$nw_option     = get_option('ld_open_nw'); 
$ld_open_branding   = get_option('ld_open_branding'); 
$ld_stylesheet_option  = get_option('ld_stylesheet'); 
$ld_number_of_links  = get_option('ld_number_of_links'); 
$ld_number_of_links_widget = get_option('ld_number_of_links_widget'); 
$ld_number_of_rss_links = get_option('ld_number_of_rss_links'); 
$ld_number_of_links_be  = get_option('ld_number_of_links_be'); 
$ld_repeated_link   = get_option('ld_repeated_link'); 
$ld_linkdump_fd   = get_option('ld_linkdump_fd'); 
$ld_linkdump_rss_desc  = get_option('ld_linkdump_rss_desc'); 
$ld_branding_bg   = get_option('ld_branding_bg'); 
$ld_archive_days   = get_option('ld_archive_days'); 
$ld_archive_pid   = get_option('ld_archive_pid'); 
$ld_show_counter   = get_option('ld_show_counter'); 
$ld_show_description  = get_option('ld_show_description'); 
$ld_show_description_w  = get_option('ld_show_description_w'); 
$ld_send_notification  = get_option('ld_send_notification'); 
$ld_auto_approve   = get_option('ld_auto_approve'); 
$ld_short_url    = get_option('ld_short_url'); 

或本:

$options['ld_linkdump_title'] = get_option('ld_linkdump_title'); 
$options['ld_linkdump_widget_title'] = get_option('ld_linkdump_widget_title'); 
$options['nw_option']     = get_option('ld_open_nw'); 
. 
. 
. 
+8

如果用这两种方法你关注的是严格的性能相关的,那么你就是在浪费你的大脑的CPU周期。这是过早的优化。 – 2011-01-24 18:36:39

回答

2

我不认为你应该从性能的角度考虑这个,而是看它从可读性的角度来看。第二个版本收集一些东西到一个存储机制中;从可读性的角度来看,它是优越的。

这不是问题,但是从性能的角度来看,我不能想象第二个成本太大,如果有的话,当然不足以克服可读性的利益。

0

这是一个简单的性能优化。我不会太担心。使用关联数组可能比使用直接变量要慢。

0

我严重怀疑它永远不会不要紧,但如果它会,它取决于你以后的数值做什么。

0

的性能差异可以忽略不计。应该使用关联数组,以便更好的组织和更容易的遍历。