在PHP中将数组转换为一行

时间:2013-10-02 19:02:41

标签: php mysql arrays image

我的PHP代码中的数组有问题。我正在尝试将图像中的颜色添加到MySQL数据库中。

这是一个PHP:

$image = isset( $_GET['image'] ) ? $_GET['image'] : null;

$colors_of_image = new ColorsOfImage( $image );
$colors = $colors_of_image->getProminentColors();

现在问题。 print_r结果将是这样的:

print_r($colors);
//Results
Array ( [0] => #996633 [1] => #999999 [2] => #424153 [3] => #E7D8B1 [4] => #663300 [5] => #FFFFFF [6] => #000000 [7] => #999900 [8] => #FF9900 [9] => #666600 [10] => #FFCC33 [11] => #CC6633 [12] => #660000 )

我需要将这些数组转换为一行,然后将结果添加到MySQL。结果应该是这样的:

#996633 #999999 #424153 #E7D8B1 #E7D8B1 #663300 #FFFFFF ...

MySQL部分:

$db->query("
INSERT INTO
 colors (photo_id, color) 
 VALUES('{$PhotoID}', '{$image_colors}')
");

我如何将所有颜色数组转换为一个常规字符串并将该字符串添加到数据库?

1 个答案:

答案 0 :(得分:6)

使用implode()

$image_colors = implode(' ', $colors);

仅供参考,这可能不是存储数据的最佳方式。