2017-05-08 7 views
0

私は以下のような配列を持っています 私はPHPのスラブid値を提供する場合は、配列のキーインデックスを見つけることは可能ですか?phpのオブジェクトの配列のプロパティで検索するには?

Array 
     (
      [0] => incentiveSlab Object 
       (
        [slabId] => 1 
        [templateId] => 1 
        [startPoint] => 0 
        [endPoint] => 1000000 
        [value] => 0 
       ) 

      [1] => incentiveSlab Object 
       (
        [slabId] => 2 
        [templateId] => 1 
        [startPoint] => 1000000 
        [endPoint] => 2500000 
        [value] => 0.5 
       ) 


     ) 

答えて

0

私はあなたのデータ構造がArray_Index

  • 例:として使用slabId

    • 変化し、提案します。

      アレイ

      [0] => NULL 
      
          [1] => incentiveSlab Object 
           (
            [slabId] => 1 
            [templateId] => 1 
            [startPoint] => 0 
            [endPoint] => 1000000 
            [value] => 0 
           ) 
      
          [2] => incentiveSlab Object 
           (
            [slabId] => 2 
            [templateId] => 1 
            [startPoint] => 1000000 
            [endPoint] => 2500000 
            [value] => 0.5 
           ) 
      

    それとも、連想配列

    3

    そのような何か:

    function getIndex($array, $slabId) { 
        foreach($array as $index => $item) { 
         if($item->slabId == $slabId) 
          return $index; 
        } 
    } 
    
    +0

    を使用slabIdにあまり差異がある場合は、私が組み込ま探していました機能 –

    0

    それは上記の回答のように発見された場合に解決策は、インデックスを返す必要があります。しかし、一致するものがなければのような他の標準関数のように一致するものがなければ何かを返します。一致するものがなければfalseを返します。そうMax答えがあることを、少し、変更することがあります。

    function getIndex($array, $slabId) { 
        foreach($array as $index => $item) { 
         if($item->slabId == $slabId) 
          return $index; 
        } 
        return false; // or return -1 
    } 
    
    関連する問題