2012-06-13 6 views
2

У меня есть один массив, который заполняется mysql_query. Значения, которые находятся в этом массиве я хочу поставить в одну сплошную строку, например:PHP-массив в одну строку

$array = array(1, 2, 3, 4, 5); 

INSERT INTO 'new_slovmas'.'$tabulka'('$array[0]', '$array[1]', '$array[3]') 
     VALUES ('$r_1', '$r_2', '$r_3')"; 

Sense в один стол более 50 столбцов я не хочу, чтобы заполнить его вручную, но WHILE или FOR. Так я думал о вводе значения в одну строку, как это:

$array = array("'1',", "'2',", "'3',", "'4',", "'5',"); 

так что теперь у меня есть это:

echo $array[2]; => '3', 

По циклу я не буду для достижения иметь несколько записей в одной переменной.

$str = $array[0], $array[1] ... $array[xy]; 

INSERT INTO 'new_slovmas'.'$tabulka'('$str') 
     VALUES ('$r_1', '$r_2', '$r_3')"; 

ответ

5

функция взрываться Используйте implode()

$string = implode(',', array(1, 2, 3, 4, 5)); // $string = 1,2,3,4,5 
+1

Фактически это должно быть $ string = "'" .implode (....). "'"; – TigerTiger

+0

ok, как насчет этого массива '$ stlpec [] = $ row ['column_name'];' я не знаю значений в нем. Как он будет выглядеть с функцией implode? Он не принимает 'implode (',', $ stlpec [$ i]);' –

+0

Поскольку массивы не хранятся в столбцах базы данных, вы фактически не работаете с массивом. Вам нужно будет определить, какие данные есть, прежде чем вы сможете планировать что-либо с ним делать. –

3

PHP будет распаковать массив в строку для использования в JavaScript. Попробуйте это:

$str = implode(',',$array); 
+0

-1? почему downvote? – jcho360

+0

Извините, ошибка ... –

0

Использование:

join(",", $array); 

Кроме того, убедитесь, чтобы избежать ваши ценности, прежде чем вставить их в базу данных. Вы делаете это, если одно из ваших значений имеет одну цитату (') или что-то еще хуже (например, правильный SQL), что приведет к сбою вашего запроса. Вы можете использовать mysql_real_escape_string (...) или mysqli_real_escape_string (...) для этого

+0

'join()' является псевдонимом 'implode()' –

Смежные вопросы