From fa1a382dffbd8e786fba7111441ed3c3da706e31 Mon Sep 17 00:00:00 2001 From: Sergey Biryukov Date: Sat, 7 Feb 2015 19:44:13 +0000 Subject: [PATCH] Remove unnecessary `array_shift()` usage in `get_terms()` for better performance. props bswatson, VolodymyrC. fixes #31182. git-svn-id: https://develop.svn.wordpress.org/trunk@31365 602fd350-edb4-49c9-b593-d223f7449a82 --- src/wp-includes/taxonomy.php | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/src/wp-includes/taxonomy.php b/src/wp-includes/taxonomy.php index 6deb0030d4..142ef28c64 100644 --- a/src/wp-includes/taxonomy.php +++ b/src/wp-includes/taxonomy.php @@ -2013,28 +2013,27 @@ function get_terms( $taxonomies, $args = '' ) { } } } - reset( $terms ); $_terms = array(); if ( 'id=>parent' == $_fields ) { - while ( $term = array_shift( $terms ) ) { - $_terms[$term->term_id] = $term->parent; + foreach ( $terms as $term ) { + $_terms[ $term->term_id ] = $term->parent; } } elseif ( 'ids' == $_fields ) { - while ( $term = array_shift( $terms ) ) { + foreach ( $terms as $term ) { $_terms[] = $term->term_id; } } elseif ( 'names' == $_fields ) { - while ( $term = array_shift( $terms ) ) { + foreach ( $terms as $term ) { $_terms[] = $term->name; } } elseif ( 'id=>name' == $_fields ) { - while ( $term = array_shift( $terms ) ) { - $_terms[$term->term_id] = $term->name; + foreach ( $terms as $term ) { + $_terms[ $term->term_id ] = $term->name; } } elseif ( 'id=>slug' == $_fields ) { - while ( $term = array_shift( $terms ) ) { - $_terms[$term->term_id] = $term->slug; + foreach ( $terms as $term ) { + $_terms[ $term->term_id ] = $term->slug; } }