0

私がやろうとしていること:
この方法で、コンマで区切られた単一の文字列で名前のリスト (複数の場合) を取得します。

  • Britney Spears, Lady Gaga, Miley Cyrus

どうしたの:

  • 私たちはループの中にいます。
  • celebritiesこれらを投稿に関連付けようとしていますID

$idしたがって、これはループごとに一意です。1 つのID
に 複数の有名人の名前を付けることができます。

クエリ:

$array = $wpdb->get_results("SELECT name
FROM celebrities
WHERE id = " . $id . "");

PHP コード:

if (is_array($array) && $array != null) {
    foreach($array as $single) {
        $array = $single->name . ',';
    }
}
else {
    $array = $array->name;
}

問題:

私のコードでは、ループごとに 1 人の有名人に制限されています (データベースは、別の有名人も存在する必要があることを示していますが)。

name複数の有名人が存在するかどうかを確認し、コンマで区切られた単一の文字列内にそれらをまとめ たいだけです。

望ましい出力:

私が達成しようとしていることの簡単な概要は次のとおりです。

  • array(0) (有名人なし) =// SHOW NOTHING
  • array(1) (有名人の名前が 1 つ見つかりました) =echo $name
  • array(2) (複数の有名人) =foreach($names as $name)

Var_dump:

むしろ、配列構造の複雑さを示したいだけです。

array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1620 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(2) {
    [0] = >
        object(stdClass) #1683 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
[1] = >
    object(stdClass) #1611 (1) {
    ["name"]= >
    string(10)
"Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1614 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1690 (1) {
    ["name"]= >
        string(6)
    "Miley Cyrus"
}
}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1598 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(0) {}
array(4) {
    [0] = >
        object(stdClass) #1722 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
[1] = >
    object(stdClass) #1706 (1) {
    ["name"]= >
    string(6)
"Madonna"
}
[2] = >
    object(stdClass) #1668 (1) {
    ["name"]= >
    string(10)
"Lady Gaga"
}
[3] = >
    object(stdClass) #1663 (1) {
    ["name"]= >
    string(10)
"Lady Gaga"
}
}
array(4) {
    [0] = >
        object(stdClass) #1615 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
[1] = >
    object(stdClass) #1708 (1) {
    ["name"]= >
    string(6)
"Madonna"
}
[2] = >
    object(stdClass) #1723 (1) {
    ["name"]= >
    string(10)
"Lady Gaga"
}
[3] = >
    object(stdClass) #1726 (1) {
    ["name"]= >
    string(10)
"Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1598 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1663 (1) {
    ["name"]= >
        string(6)
    "Miley Cyrus"
}
}
array(1) {
    [0] = >
        object(stdClass) #1722 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1734 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1598 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1750 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1751 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1716 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1776 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1795 (1) {
    ["name"]= >
        string(6)
    "Miley Cyrus"
}
}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1647 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1784 (1) {
    ["name"]= >
        string(6)
    "Miley Cyrus"
}
}
array(1) {
    [0] = >
        object(stdClass) #1776 (1) {
    ["name"]= >
        string(6)
    "Miley Cyrus"
}
}
array(1) {
    [0] = >
        object(stdClass) #1611 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1676 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1781 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(0) {}
array(0) {}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1715 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1813 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1826 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1828 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1717 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1765 (1) {
    ["name"]= >
        string(6)
    "Miley Cyrus"
}
}
array(1) {
    [0] = >
        object(stdClass) #1769 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1848 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1690 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1660 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1821 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1717 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1766 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1836 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(0) {}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1765 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1826 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(0) {}
array(0) {}
array(0) {}
array(0) {}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1843 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(0) {}
array(2) {
    [0] = >
        object(stdClass) #1854 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
[1] = >
    object(stdClass) #1820 (1) {
    ["name"]= >
    string(5)
"Beyonce"
}
}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1814 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1847 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1866 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1820 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1814 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1847 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(2) {
    [0] = >
        object(stdClass) #1875 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
[1] = >
    object(stdClass) #1821 (1) {
    ["name"]= >
    string(6)
"Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1786 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1880 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1746 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1815 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1817 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1811 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1874 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1819 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1798 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1820 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1802 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1853 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1741 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1867 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1820 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(0) {}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1688 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1919 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(0) {}
array(0) {}
array(0) {}
array(0) {}
array(0) {}
array(0) {}
array(0) {}
array(0) {}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1889 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(2) {
    [0] = >
        object(stdClass) #1923 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
[1] = >
    object(stdClass) #1927 (1) {
    ["name"]= >
    string(6)
"Madonna"
}
}
array(2) {
    [0] = >
        object(stdClass) #1811 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
[1] = >
    object(stdClass) #1904 (1) {
    ["name"]= >
    string(6)
"Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1910 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1889 (1) {
    ["name"]= >
        string(6)
    "Miley Cyrus"
}
}
array(1) {
    [0] = >
        object(stdClass) #1927 (1) {
    ["name"]= >
        string(6)
    "Miley Cyrus"
}
}
array(1) {
    [0] = >
        object(stdClass) #1904 (1) {
    ["name"]= >
        string(6)
    "Miley Cyrus"
}
}
array(1) {
    [0] = >
        object(stdClass) #1843 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1860 (1) {
    ["name"]= >
        string(6)
    "Miley Cyrus"
}
}
array(2) {
    [0] = >
        object(stdClass) #1889 (1) {
    ["name"]= >
        string(5)
    "Beyonce"
}
[1] = >
    object(stdClass) #1684 (1) {
    ["name"]= >
    string(6)
"Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1843 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(2) {
    [0] = >
        object(stdClass) #1811 (1) {
    ["name"]= >
        string(5)
    "Beyonce"
}
[1] = >
    object(stdClass) #1900 (1) {
    ["name"]= >
    string(6)
"Madonna"
}
}
array(2) {
    [0] = >
        object(stdClass) #1904 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
[1] = >
    object(stdClass) #1926 (1) {
    ["name"]= >
    string(6)
"Madonna"
}
}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1915 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(2) {
    [0] = >
        object(stdClass) #1829 (1) {
    ["name"]= >
        string(5)
    "Beyonce"
}
[1] = >
    object(stdClass) #1932 (1) {
    ["name"]= >
    string(10)
"Lady Gaga"
}
}
array(0) {}
array(2) {
    [0] = >
        object(stdClass) #1889 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
[1] = >
    object(stdClass) #1952 (1) {
    ["name"]= >
    string(5)
"Beyonce"
}
}
array(0) {}
array(0) {}
array(2) {
    [0] = >
        object(stdClass) #1915 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
[1] = >
    object(stdClass) #1829 (1) {
    ["name"]= >
    string(6)
"Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1932 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1892 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(3) {
    [0] = >
        object(stdClass) #1899 (1) {
    ["name"]= >
        string(5)
    "Beyonce"
}
[1] = >
    object(stdClass) #1929 (1) {
    ["name"]= >
    string(5)
"Beyonce"
}
[2] = >
    object(stdClass) #1805 (1) {
    ["name"]= >
    string(6)
"Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1886 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1829 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1802 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(2) {
    [0] = >
        object(stdClass) #1932 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
[1] = >
    object(stdClass) #1941 (1) {
    ["name"]= >
    string(6)
"Madonna"
}
}
array(0) {}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1836 (1) {
    ["name"]= >
        string(5)
    "Beyonce"
}
}
array(1) {
    [0] = >
        object(stdClass) #1947 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(2) {
    [0] = >
        object(stdClass) #1917 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
[1] = >
    object(stdClass) #1954 (1) {
    ["name"]= >
    string(6)
"Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1902 (1) {
    ["name"]= >
        string(5)
    "Beyonce"
}
}
array(1) {
    [0] = >
        object(stdClass) #1836 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(2) {
    [0] = >
        object(stdClass) #1970 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
[1] = >
    object(stdClass) #1842 (1) {
    ["name"]= >
    string(5)
"Beyonce"
}
}
array(0) {}
array(1) {
    [0] = >
        object(stdClass) #1878 (1) {
    ["name"]= >
        string(5)
    "Beyonce"
}
}
array(2) {
    [0] = >
        object(stdClass) #1802 (1) {
    ["name"]= >
        string(5)
    "Beyonce"
}
[1] = >
    object(stdClass) #1969 (1) {
    ["name"]= >
    string(6)
"Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1961 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(2) {
    [0] = >
        object(stdClass) #1836 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
[1] = >
    object(stdClass) #1970 (1) {
    ["name"]= >
    string(5)
"Beyonce"
}
}
array(1) {
    [0] = >
        object(stdClass) #1902 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
}
array(1) {
    [0] = >
        object(stdClass) #1979 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1860 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(1) {
    [0] = >
        object(stdClass) #1946 (1) {
    ["name"]= >
        string(6)
    "Madonna"
}
}
array(3) {
    [0] = >
        object(stdClass) #1926 (1) {
    ["name"]= >
        string(10)
    "Lady Gaga"
}
[1] = >
    object(stdClass) #1848 (1) {
    ["name"]= >
    string(5)
"Beyonce"
}
[2] = >
    object(stdClass) #1912 (1) {
    ["name"]= >
    string(6)
"Madonna"
}
}
array(0) {}

理由もなく混乱していると思いますが、行き詰まっています。

4

2 に答える 2

0

問題はここにあると思います:

foreach($array as $single) {
    $array = $single->name . ',';
}

$arrayループが最初に実行されるときは、ループ内で新しい値を割り当てるだけの配列です。

代わりにこれを試してください:

$names = array();
foreach ($array as $single) {
    $names[] = $single->name;
}
echo implode(', ', $names);
于 2013-06-11T12:10:22.897 に答える
0

あなたの例では、常に1つの名前(たとえば、データベースからの最後の名前)を取得するため、ループするときに別の配列に配置する必要があるため、私はデールに同意します

于 2013-06-11T12:16:27.303 に答える