2013-01-10 6 views
0

у меня есть массив как это:Отформатируйте ключи массива с цитатой

Array ([0] => bag [1] => resource [2] => 120 [3] => little dog [4] => 700.25 ... 

возможно ли это функция, которая возвратитесь каждый ключ с цитатой если строка, без кавычек, если это число, как

'bag','resource',120,'little dog',700.25 ... 

Благодарим за помощь!

+0

вас хотите сделать это в sql? что вы пробовали? –

ответ

0

Вы можете попробовать:

$input = array('bag', 'resource', 120, 'little dog'); 
$output = trim(json_encode($input), '[]'); 

или на основе @Rajat Garg решения:

$input = array('bag', 'resource', 120, 'little dog'); 
$data = array(); 
foreach ($input as $value) { 
    $data[] = is_numeric($value) ? $value : "'$value'"; 
} 
$output = implode($data, ','); 
+0

Для лучшего контроля я предпочитаю использовать второй вариант. Спасибо! – kingmo

+0

Вы также можете улучшить первый вариант с помощью 'array_values':' trim (json_encode (array_values ​​($ input)), '[]') ' – hsz

+0

@kingmo Если вы найдете мой ответ полезным, не забудьте принять его. – hsz

0

Используйте is_numeric, чтобы определить, если его номер, и сцепить кавычки иначе:

foreach($array as $value){ 
    if(is_numeric($value)){ 
     echo $value; 
     } else{ 
      echo "'".$value."'"; 
     } 
} 
+0

Комы отсутствуют. – hsz

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