3

ねえ、私はFuelPHPを使っていて、こうやってやっています...

$query =
  \DB::select( 'username' )
    ->from( 'users' )
    ->execute()
    ->as_array();

以下に示すように配列を取得しています。

Array
(
  [0] => Array
  (
    [username] => daGrevis
  )

  [1] => Array
  (
    [username] => whatever
  )

  [2] => Array
  (
    [username] => foobar
  )

)

それは間違いなく私が必要とするものではありません。これが私にとっての「理想的な配列」の例です。

Array
(
  [0] => daGrevis
  [1] => whatever
  [2] => foobar
)

では、どうすれば「理想的な配列」を取得できますか?たぶん私はクエリで何か間違ったことをします...いいえの場合...配列#1を配列#2に変換するにはどうすればよいですか?多分ループを使用していますか?それとも組み込み機能がありますか?よくわかりません。

4

3 に答える 3

11

これはFuelでネイティブに行うことができます。

$query = \DB::select( 'username' )
           ->from( 'users' )
           ->execute()
           ->as_array(null, 'username');

これにより、必要なものが正確に返されます。

于 2011-03-27T21:23:41.530 に答える
4

うん、foreachループはトリックを行う必要があります:

$new_array = array();
foreach($query as $result_num => $sub_array)
{
    $new_array[$result_num] = $sub_array[username];
}
于 2011-03-27T14:36:32.060 に答える
2

次のように、foreachループを実行して変換します。

$arr2 = array();
foreach ($arr1 as &$value) {
array_push($arr2, $value[username]);
}
于 2011-03-27T14:34:40.317 に答える