PHP добавляет одинарные кавычки в строку через запятую

Я знаю, что делал это раньше. Я не уверен, почему я изо всех сил пытаюсь сделать что-то такое простое.

Все, что я пытаюсь сделать, это добавить одиночную кавычку в строку через запятую.

Процесс php изначально выглядит так:

<?php
$checknumber = mysqli_real_escape_string($dbc,trim($_POST['checknumber']));

$splitnumber = preg_replace('/\n$/','',preg_replace('/^\n/','',preg_replace('/[\r\n]+/',"\n",$checknumber )));

$numbers = "'" . implode("', '", $splitnumber ) ."'";

echo $checknumber;
echo $splitnumber;
echo $numbers;
?>

Результаты выглядят так:

// $checknumber
AMD111111,AMD222222,AMD333333

// $splitnumber
AMD111111,AMD222222,AMD333333

// $numbers
''

Мне нужны результаты чисел $, чтобы выглядеть так:

'AMD111111','AMD222222','AMD333333'

Самое смешное, что я использую фрагмент кода, который я использовал до того, как это сработает. Так что я в недоумении, почему код здесь не работает.

1

Решение

Функция implode () требует массив в качестве второго аргумента.
Похоже, ваш $ splitnumber — это простая строка, а не массив строк, как это должно быть.
Попробуйте разделить ваш $ splitnumber запятыми, используя функцию explode (), и поместите результат этого в функцию implode.

Должно выглядеть так (не проверено):

$splitnumber = ...;
$splittedNumbers = explode(",", $splitnumber);
$numbers = "'" . implode("', '", $splittedNumbers) ."'";

Вероятно, есть более чистое решение, просто заменив все вхождения на ‘,’.

2

Другие решения

Ваш имплоз не настроен правильно.

$numbers = "'" . implode("','", $splitnumber) . "'";
-1

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector