0

私はコードから始めます:

$checkIpaddresses = $wpdb->get_results( $wpdb->prepare("SELECT affiliateID, source FROM am_ipaddress WHERE affiliateID = $affiliateID"));

foreach ($checkIpaddresses as $ipaddress) { 
    $ipSource = explode(",", $ipaddress->source);
}

$newIP = ",".$ipAddress;
array_push($newIP, $ipSource);

print_r($ipSource);

,データベースに、 (カンマ)で区切られた IP アドレスのリストを含む列があります。データベースからそのリストを取得し、新しい IP アドレスを追加して、IP アドレスの新しいリストで列を更新できるようにしたいと考えています。

上記のコードでこのエラーが発生しています。array_push() expects parameter 1 to be array.

の値は$ipAddressです$_SERVER['REMOTE_ADDR'];

4

1 に答える 1

1

まず、これが 1 行だけを返す場合、. は必要ありませんforeach

$ipSource = explode(",", $checkIpaddresses[0]->source);  // Get the 1st row as an array

2 つ目は、新しい IP アドレスをアレイに追加する作業が複雑すぎることです。

$ipSource[] = $ipAddress;

それでおしまい。これで、$ipSourceアレイに新しい IP アドレスが含まれます。

(PS を使用implode(',', $ipSource)して、配列をコンマ区切りの文字列に変換します)

于 2012-12-03T20:07:58.497 に答える