[解決済み] 一次元のスカラー配列をdqlのクエリ結果として取得するには?
2022-06-20 12:11:38
質問
Auctionテーブルのidカラムから値の配列を取得したいです。 これが生のSQLであれば、私は書くでしょう。
SELECT id FROM auction
しかし、Doctrineでこれを行い、実行すると。
$em->createQuery("SELECT a.id FROM Auction a")->getScalarResult();
こんな感じの配列になります。
array(
array('id' => 1),
array('id' => 2),
)
代わりに、このような配列を取得したい。
array(
1,
2
)
Doctrine を使ってそれを行うにはどうしたらよいでしょうか?
どのように解決するのですか?
PHP 5.5
を使用することができます。
array_map
を使用することができ、1つの配列に1つの項目しかないので、エレガントに
'current'
をコールバックとして使うことができます。
クロージャ
.
$result = $em->createQuery("SELECT a.id FROM Auction a")->getScalarResult();
$ids = array_map('current', $result);
参照 Petr Sobotka氏の回答を以下に示します。 を参照してください。
PHP >= 5.5
として
jcbwlkr さんの回答は以下の通りです。
を使用することをお勧めします。
array_column
.
関連
-
[解決済み】move_uploaded_fileは、「failed to open stream: Permission denied" というエラーが出る
-
[解決済み】不明なMySQLサーバーのホスト
-
[解決済み】新しいPHPMailerはPHPMailerAutoload.phpが必要?
-
[解決済み】警告:mysql_fetch_array()はパラメータ1がリソースであることを期待、ブール値は[重複]で与えられる]
-
[解決済み] 多次元配列の値によるソート方法
-
[解決済み] MySQLで'insert if not exists'を行うにはどうしたらいいですか?
-
[解決済み] mysql_real_escape_string() を回避する SQL インジェクション
-
[解決済み] クエリビルダーのSQLクエリを文字列として出力するにはどうすればよいですか?
-
[解決済み】PHPの'foreach'は実際どのように動作するのですか?
-
[解決済み】PHPパスワードのハッシュとソルトの安全性について
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】PHP定数「PHP_EOL」はいつ使うの?
-
[解決済み】子テーマのCSSが親テーマをオーバーライドしない
-
[解決済み】mysqli_select_db()は、パラメータ1がmysqliであることを期待し、文字列が与えられる。
-
[解決済み】PHPの予期しないT_VARIABLEとは何ですか?
-
[解決済み] Uncaught SyntaxError: JSON の位置 1 に予期しないトークン o があります。
-
MacでPHPを実行した際に、メモリサイズが134217728バイトも消費される問題の解決方法について
-
[解決済み】Wordpressの子テーマのstyle.cssが効かない。
-
[解決済み] mysqli_fetch_assoc() は、パラメータ 1 が mysqli_result であることを期待し、boolean が与えられる [重複] 。
-
[解決済み】mysqli::query(): mysqli をフェッチできない
-
[解決済み] PHPの配列を別の配列にコピーする関数はありますか?