をマージ私はこのような多次元配列を出力し、クエリを実行しています: -PHP多次元配列は問題
Array
(
[0] => Array
(
[0] => Array
(
[id] => 772
[display_name] => Test Company Ltd
[profile_page] => partners/test-company
)
)
[1] => Array
(
)
[2] => Array
(
[0] => Array
(
[id] => 772
[display_name] => Test Company Ltd
[profile_page] => partners/test-company
)
)
私たちは、当社のサイト上で、それをループできるように、アレイは、このように見えるようにしようとしています: -
Array
(
[0] => Array
(
[id] => 772
[display_name] => Test Company Ltd
[profile_page] => partners/test-company
)
)
これは、すべてSymfony2とDoctrine2を使用してPHPを使用して生成されています。私はこの作業を取得する方法をいくつか試してみましたが、私は戻ってこれです私の第一の方法に戻ってきた: - 誰かがどのようにこの問題を回避するために私を示すことができるならば、それは素晴らしいことだ
$companies = array();
foreach($postcodes as $key=>$value) {
$conn = $em->getConnection();
$query = $conn->prepare("SELECT a.id, a.display_name, a.profile_page, b.meta_data FROM companies a, `cms`.pages b WHERE b.slug = a.profile_page AND a.active = 1 AND a.postcode = ".$value." ORDER BY a.display_name ASC");
$execute = $query->execute();
$companies[] = array_replace_recursive($query->fetchAll());
}
echo '<pre>'; print_r($companies); echo '</pre>';
die();
。
私はこれを試しましたが、$企業やarray_replace_recursiveから角括弧を削除すると空の配列が表示されました。角括弧を入れてarray_replace_recursiveを削除すると、まったく同じ答えになります。 –
こんにちはAlok、それはすばらしい、それは治療を働いた。ありがとうございました。しかし、2つの値が似ているので、どのようにマージしますか? –
'foreach'で訪問したIDを追跡する必要があります。idが以前に訪れなかった場合は、配列を挿入するだけです。 –