2
Array ( [0] => Array ( [No.,"Ticker","Company"] => 
                        1,"A","Agilent Technologies Inc." ) 
        [1] => Array ( [No.,"Ticker","Company" ] => 
                        2,"AA","Alcoa, Inc.") 
      )

これは、print_r($arrayOne); と入力したときの出力です。会社の列、つまりAgilent Technologies IncとAlocoa、Inc.のみを取得できるようにするにはどうすればよいですか.

echo $arrayOne['Company'] と $arrayOne[0]['Company'] を試しましたが、「Array」と出力されました。

4

2 に答える 2

3

あなたが持っているのは、それぞれが1つの値しか持たない2つのサブ配列を持つ外部配列です。そのキーは 3 つの列の説明であり、その値は CSV 値です。PHP 5.3 を使用している場合は、これを使用str_getcsv()して解析し、3 番目の列を返します。

// Loop over the outer array
foreach ($arrayOne as  $subarr) {
  // Loop over the sub-arrays (though your sample only has one value each)
  // could also use array_pop()
  foreach ($subarr as $key => $csvstring) {
    // $csvstring holds the CSV value like  '1,"A","Agilent Technologies Inc."'
    // Parse it with str_getcsv()
    $cols = str_getcsv($csvstring);
    // Company name is the 3rd value, key [2]
    echo $cols[2] . "\n";
  }
}

たとえば、次の入力を使用します。

$arrayOne = array(
  array('No.,"Ticker","Company"' => '1,"A","Agilent Technologies Inc."' ), 
  array('No.,"Ticker","Company"'  => '2,"AA","Alcoa, Inc."') 
);
// The above loop prints:
Agilent Technologies Inc.
Alcoa, Inc.
于 2012-11-24T15:20:24.767 に答える
0

配列は次のようになります。

$arrayOne = array(array('no' => 1, 'ticker' => 'A', 'company' => 'Agilent Technologies Inc.'),
                  array('no' => 2, 'ticker' => 'AA', 'company' => 'Alcoa Inc.'));

echo $array[0]['company']; // will print Agilent Technologies
于 2012-11-24T15:21:46.267 に答える