对于每个循环不能按预期使用对象

I'm looping through an object, and when an object key equals a string, it echoes something. However, it's not working when in an if statement.

$get_categories = get_categories(); // gets an object (with the key)

foreach ($get_categories as $key) {
    $each_cat = $key->name;
    echo $each_cat; // echoes 'beauty', 'celebrity', 'lifestyle'
    if ($each_cat == 'fashion') { // this is FALSE, even though it prints 'fashion' above
        echo 'Yes, this is the fashion string'; // this does not get printed
    }
}

This is the object it's looping through:

ARRAY (SIZE=7)
  0 => 
    OBJECT(STDCLASS)[311]
      PUBLIC 'TERM_ID' => &STRING '9' (LENGTH=1)
      PUBLIC 'NAME' => &STRING 'BEAUTY' (LENGTH=6)
      PUBLIC 'SLUG' => &STRING 'BEAUTY' (LENGTH=6)
      PUBLIC 'TERM_GROUP' => STRING '0' (LENGTH=1)
      PUBLIC 'TERM_TAXONOMY_ID' => STRING '9' (LENGTH=1)
      PUBLIC 'TAXONOMY' => STRING 'CATEGORY' (LENGTH=8)
      PUBLIC 'DESCRIPTION' => &STRING '' (LENGTH=0)
      PUBLIC 'PARENT' => &STRING '0' (LENGTH=1)
      PUBLIC 'COUNT' => &STRING '1' (LENGTH=1)
      PUBLIC 'CAT_ID' => &STRING '9' (LENGTH=1)
      PUBLIC 'CATEGORY_COUNT' => &STRING '1' (LENGTH=1)
      PUBLIC 'CATEGORY_DESCRIPTION' => &STRING '' (LENGTH=0)
      PUBLIC 'CAT_NAME' => &STRING 'BEAUTY' (LENGTH=6)
      PUBLIC 'CATEGORY_NICENAME' => &STRING 'BEAUTY' (LENGTH=6)
      PUBLIC 'CATEGORY_PARENT' => &STRING '0' (LENGTH=1)
  1 => 
    OBJECT(STDCLASS)[310]
      PUBLIC 'TERM_ID' => &STRING '11' (LENGTH=2)
      PUBLIC 'NAME' => &STRING 'CELEBRITY' (LENGTH=9)
      PUBLIC 'SLUG' => &STRING 'CELEBRITY' (LENGTH=9)
      PUBLIC 'TERM_GROUP' => STRING '0' (LENGTH=1)
      PUBLIC 'TERM_TAXONOMY_ID' => STRING '11' (LENGTH=2)
      PUBLIC 'TAXONOMY' => STRING 'CATEGORY' (LENGTH=8)
      PUBLIC 'DESCRIPTION' => &STRING '' (LENGTH=0)
      PUBLIC 'PARENT' => &STRING '0' (LENGTH=1)
      PUBLIC 'COUNT' => &STRING '3' (LENGTH=1)
      PUBLIC 'CAT_ID' => &STRING '11' (LENGTH=2)
      PUBLIC 'CATEGORY_COUNT' => &STRING '3' (LENGTH=1)
      PUBLIC 'CATEGORY_DESCRIPTION' => &STRING '' (LENGTH=0)
      PUBLIC 'CAT_NAME' => &STRING 'CELEBRITY' (LENGTH=9)
      PUBLIC 'CATEGORY_NICENAME' => &STRING 'CELEBRITY' (LENGTH=9)
      PUBLIC 'CATEGORY_PARENT' => &STRING '0' (LENGTH=1)
  3 => 
    OBJECT(STDCLASS)[308]
      PUBLIC 'TERM_ID' => &STRING '4' (LENGTH=1)
      PUBLIC 'NAME' => &STRING 'FASHION' (LENGTH=7)
      PUBLIC 'SLUG' => &STRING 'FASHION' (LENGTH=7)
      PUBLIC 'TERM_GROUP' => STRING '0' (LENGTH=1)
      PUBLIC 'TERM_TAXONOMY_ID' => STRING '4' (LENGTH=1)
      PUBLIC 'TAXONOMY' => STRING 'CATEGORY' (LENGTH=8)
      PUBLIC 'DESCRIPTION' => &STRING '' (LENGTH=0)
      PUBLIC 'PARENT' => &STRING '0' (LENGTH=1)
      PUBLIC 'COUNT' => &STRING '4' (LENGTH=1)
      PUBLIC 'CAT_ID' => &STRING '4' (LENGTH=1)
      PUBLIC 'CATEGORY_COUNT' => &STRING '4' (LENGTH=1)
      PUBLIC 'CATEGORY_DESCRIPTION' => &STRING '' (LENGTH=0)
      PUBLIC 'CAT_NAME' => &STRING 'FASHION' (LENGTH=7)
      PUBLIC 'CATEGORY_NICENAME' => &STRING 'FASHION' (LENGTH=7)
      PUBLIC 'CATEGORY_PARENT' => &STRING '0' (LENGTH=1)
  5 => 
    OBJECT(STDCLASS)[306]
      PUBLIC 'TERM_ID' => &STRING '10' (LENGTH=2)
      PUBLIC 'NAME' => &STRING 'LIFESTYLE' (LENGTH=9)
      PUBLIC 'SLUG' => &STRING 'LIFESTYLE' (LENGTH=9)
      PUBLIC 'TERM_GROUP' => STRING '0' (LENGTH=1)
      PUBLIC 'TERM_TAXONOMY_ID' => STRING '10' (LENGTH=2)
      PUBLIC 'TAXONOMY' => STRING 'CATEGORY' (LENGTH=8)
      PUBLIC 'DESCRIPTION' => &STRING '' (LENGTH=0)
      PUBLIC 'PARENT' => &STRING '0' (LENGTH=1)
      PUBLIC 'COUNT' => &STRING '3' (LENGTH=1)
      PUBLIC 'CAT_ID' => &STRING '10' (LENGTH=2)
      PUBLIC 'CATEGORY_COUNT' => &STRING '3' (LENGTH=1)
      PUBLIC 'CATEGORY_DESCRIPTION' => &STRING '' (LENGTH=0)
      PUBLIC 'CAT_NAME' => &STRING 'LIFESTYLE' (LENGTH=9)
      PUBLIC 'CATEGORY_NICENAME' => &STRING 'LIFESTYLE' (LENGTH=9)
      PUBLIC 'CATEGORY_PARENT' => &STRING '0' (LENGTH=1)
  6 => 
    OBJECT(STDCLASS)[305]
      PUBLIC 'TERM_ID' => &STRING '1' (LENGTH=1)
      PUBLIC 'NAME' => &STRING 'NONE' (LENGTH=4)
      PUBLIC 'SLUG' => &STRING 'NONE' (LENGTH=4)
      PUBLIC 'TERM_GROUP' => STRING '0' (LENGTH=1)
      PUBLIC 'TERM_TAXONOMY_ID' => STRING '1' (LENGTH=1)
      PUBLIC 'TAXONOMY' => STRING 'CATEGORY' (LENGTH=8)
      PUBLIC 'DESCRIPTION' => &STRING '' (LENGTH=0)
      PUBLIC 'PARENT' => &STRING '0' (LENGTH=1)
      PUBLIC 'COUNT' => &STRING '2' (LENGTH=1)
      PUBLIC 'CAT_ID' => &STRING '1' (LENGTH=1)
      PUBLIC 'CATEGORY_COUNT' => &STRING '2' (LENGTH=1)
      PUBLIC 'CATEGORY_DESCRIPTION' => &STRING '' (LENGTH=0)
      PUBLIC 'CAT_NAME' => &STRING 'NONE' (LENGTH=4)
      PUBLIC 'CATEGORY_NICENAME' => &STRING 'NONE' (LENGTH=4)
      PUBLIC 'CATEGORY_PARENT' => &STRING '0' (LENGTH=1)
  8 => 
    OBJECT(STDCLASS)[303]
      PUBLIC 'TERM_ID' => &STRING '16' (LENGTH=2)
      PUBLIC 'NAME' => &STRING 'TOP' (LENGTH=3)
      PUBLIC 'SLUG' => &STRING 'TOP' (LENGTH=3)
      PUBLIC 'TERM_GROUP' => STRING '0' (LENGTH=1)
      PUBLIC 'TERM_TAXONOMY_ID' => STRING '16' (LENGTH=2)
      PUBLIC 'TAXONOMY' => STRING 'CATEGORY' (LENGTH=8)
      PUBLIC 'DESCRIPTION' => &STRING '' (LENGTH=0)
      PUBLIC 'PARENT' => &STRING '0' (LENGTH=1)
      PUBLIC 'COUNT' => &STRING '2' (LENGTH=1)
      PUBLIC 'CAT_ID' => &STRING '16' (LENGTH=2)
      PUBLIC 'CATEGORY_COUNT' => &STRING '2' (LENGTH=1)
      PUBLIC 'CATEGORY_DESCRIPTION' => &STRING '' (LENGTH=0)
      PUBLIC 'CAT_NAME' => &STRING 'TOP' (LENGTH=3)
      PUBLIC 'CATEGORY_NICENAME' => &STRING 'TOP' (LENGTH=3)
      PUBLIC 'CATEGORY_PARENT' => &STRING '0' (LENGTH=1)
  9 => 
    OBJECT(STDCLASS)[302]
      PUBLIC 'TERM_ID' => &STRING '8' (LENGTH=1)
      PUBLIC 'NAME' => &STRING 'TRENDS' (LENGTH=6)
      PUBLIC 'SLUG' => &STRING 'TRENDS' (LENGTH=6)
      PUBLIC 'TERM_GROUP' => STRING '0' (LENGTH=1)
      PUBLIC 'TERM_TAXONOMY_ID' => STRING '8' (LENGTH=1)
      PUBLIC 'TAXONOMY' => STRING 'CATEGORY' (LENGTH=8)
      PUBLIC 'DESCRIPTION' => &STRING '' (LENGTH=0)
      PUBLIC 'PARENT' => &STRING '4' (LENGTH=1)
      PUBLIC 'COUNT' => &STRING '1' (LENGTH=1)
      PUBLIC 'CAT_ID' => &STRING '8' (LENGTH=1)
      PUBLIC 'CATEGORY_COUNT' => &STRING '1' (LENGTH=1)
      PUBLIC 'CATEGORY_DESCRIPTION' => &STRING '' (LENGTH=0)
      PUBLIC 'CAT_NAME' => &STRING 'TRENDS' (LENGTH=6)
      PUBLIC 'CATEGORY_NICENAME' => &STRING 'TRENDS' (LENGTH=6)
      PUBLIC 'CATEGORY_PARENT' => &STRING '4' (LENGTH=1)

Try as

foreach ($get_categories as $key=>$val) {
    $each_cat = $val->name;
    echo $each_cat; // echoes 'beauty', 'celebrity', 'lifestyle'
    if ($each_cat == 'fashion') { // this is FALSE, even though it prints 'fashion' above
        echo 'Yes, this is the fashion string'; // this does not get printed
    }
}

Here $key is the array indexes 0,1,2... The $val is the corresponding values for those keys which is an Object.

So doing $key->name will not return anything in this example.

if ($each_cat == 'fashion') 

block of code is correct as your echo shows they are all in lower case, if you are looking at the variable dump they are all in CAPS including the PUBLIC, Key name etc. They should not get capitalized.