0

私は配列にブランド情報がある次の関数を持っています。ブランド名をこの関数に渡すと、これらの情報を含む配列を取得する必要があります。

function brand_info($brand)
{
    $brands_list=array ( 
    'lg'=>
    array(
    'name'           => 'LG Phone Company',
    'country'        =>  'country',
    'founded_year'   =>  '2001'
    ),
    'nokia'=>
    array(
    'name'           => 'Nokia Phone Company',
    'country'        =>  'country',
    'founded_year'   =>  '2001'
    )
    );


    if(in_array($brand,$brands_list))
    {
        // return array containg company info
    }
}

これは、これらの情報を表示できる配列を返す必要があります。

$brand_info=brand_info($brand_name);
echo $brand_info['name'];

これを行う最良の方法は何ですか?

4

4 に答える 4

3

ブランド名を渡す場合は、これで十分です。

function brand_info($brand)
{
    $brands_list=array ( 
    'lg'=>
    array(
    'name'           => 'LG Phone Company',
    'country'        =>  'country',
    'founded_year'   =>  '2001'
    ),
    'Nokia'=>
    array(
    'name'           => 'Nokia Phone Company',
    'country'        =>  'country',
    'founded_year'   =>  '2001'
    )
    );

    if (array_key_exists($brand,$brands_list)) {
      return $brands_list[$brand];
    } else {
      return false;
    }
}

$brandinfo = brand_info('Nokia');
echo $brandinfo['name']; // will print "Nokia Phone Company"
于 2012-05-18T10:19:06.560 に答える
1

May seem trivial but...

return $brands_list[$brand]
于 2012-05-18T10:19:52.073 に答える
1
function brand_info($brand)
{
    $brands_list=array ( 
    'lg'=>
    array(
    'name'           => 'LG Phone Company',
    'country'        =>  'country',
    'founded_year'   =>  '2001'
    ),
    'nokia'=>
    array(
    'name'           => 'Nokia Phone Company',
    'country'        =>  'country',
    'founded_year'   =>  '2001'
    )
    );


    if(in_array($brand,$brands_list))
    {
        return $brand_list[$brand];
    }else{
        return null;
    }
}

その後

$info = brand_info($my_brand);
if(!is_null($info)){ echo $info['name']; }
于 2012-05-18T10:23:29.787 に答える
1
function brand_info($brand) {
    $brands_list=array (
        'lg'=>
            array(
                    'name'           => 'LG Phone Company',
                    'country'        =>  'country',
                    'founded_year'   =>  '2001'
            ),
        'Nokia'=>
            array(
                    'name'           => 'Nokia Phone Company',
                    'country'        =>  'country',
                    'founded_year'   =>  '2001'
            )
    );


    foreach ($brands_list as $brandname=>$info) {
        if($brandname==$brand) {
            return $info;
        }
    }
    return array();
}
于 2012-05-18T10:32:00.553 に答える