質問

I have a query that I run in MySQL and it returns a result as an stdClass object as following :

array(8){
  [
    0
  ]=>object(stdClass)#36(1){
    [
      "color"
    ]=>string(7)"#a0a0a0"
  }[
    1
  ]=>object(stdClass)#35(1){
    [
      "color"
    ]=>string(7)"#e0e0e0"
  }[
    2
  ]=>object(stdClass)#30(1){
    [
      "color"
    ]=>string(7)"#f0f0f0"
  }[
    3
  ]=>object(stdClass)#37(1){
    [
      "color"
    ]=>string(7)"#f0f0f1"
  }[
    4
  ]=>object(stdClass)#34(1){
    [
      "color"
    ]=>string(7)"#404040"
  }[
    5
  ]=>object(stdClass)#38(1){
    [
      "color"
    ]=>string(7)"#c0c0c0"
  }[
    6
  ]=>object(stdClass)#39(1){
    [
      "color"
    ]=>string(7)"#e06080"
  }[
    7
  ]=>object(stdClass)#40(1){
    [
      "color"
    ]=>string(7)"#e06082"
  }
}

I would like to get the colors values. How can I loop through this object and get each hex color to store in an array?

役に立ちましたか?

解決

Easy enough. Loop through the array and access the object and the color property and assign it to a new array element:

foreach($array as $object) {
    $colors[] = $object->color;
}

他のヒント

You should be able to use a foreach loop and iterate through the array. Since each array element is an object you can do it like so:

$array = //results from query    
foreach($array as $obj) {
    echo $obj->color;
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top