сокращение массива для запроса sql - PullRequest
0 голосов
/ 30 марта 2020

у меня есть поля Dynami c, поэтому я должен поместить имена и значения столбцов в массив, а затем уменьшить массив для запроса sql, который я использую array_reduce()

Это для столбцов:

function fscol($k1,$k2)
{
    return $k1 . "," . $k2;
}
$slides_col_reduce = array_reduce($slides_col, 'fscol');
$final_fscol = substr($slides_col_reduce,1);

все работает нормально, независимо от того, сколько я выбрал имя столбца.

, но моя проблема с массивом значений:

function fslide($v1,$v2)
{
    return "'" . $v1 . ",'" . $v2 . "'";
}
$final_fslide = substr($slides_reduce,0);

, даже когда я изменяю смещение substr, это будет иметь дополнительную или меньшую базу котировок по значениям. Например:

'','Slide_1.jpg','Slide_4.jpg'

Или

'''','Slide_1.jpg','Slide_2.jpg','Slide_3.jpg','Slide_4.jpg'

Как я могу решить эту проблему?

Примечание:

Это предназначен для SQL значений столбца. Так что это вывод, который я хочу -> «Val1», «Val2», «Val3»

1 Ответ

2 голосов
/ 30 марта 2020

Вы можете использовать следующий код.


$str_fields = sprintf("'%s'", implode("','", $fields_array));

Но если ваши значения могут иметь одинарную кавычку, вы должны учитывать это. В этом случае вы можете использовать array_map.

Надеюсь, это будет полезно.

Спасибо.

...