Я пытаюсь сжать массив как его ключей, так и значений.Я могу легко получить ключи с помощью взрыва, но обнаружил, что должен повторить свои действия для ключей.
В настоящее время я делаю это:
$values = array(
'id' => $sel['id'],
'creator_id' => $sel['creator_id'],
'campaign_id' => $sel['campaign_id'],
'save_results' => $sel['save_results'],
'send_results_url' => $sel['send_results_url'],
'reply_txt' => $sel['reply_txt'],
'allow_multiple_votes' => $sel['allow_multiple_votes']
);
$cols = '';
$vals = '';
$first = true;
foreach($values as $col => $val) {
if(!$first) {
$cols .= ', ';
$vals .= ', ';
}
$cols .= $col;
$vals .= $val;
$first = false;
}
Часть, которая беспокоит меня, такова:
foreach($values as $col => $val) {
if(!$first) {
$cols .= ', ';
$vals .= ', ';
}
$cols .= $col;
$vals .= $val;
$first = false;
}
Есть ли способ взорвать ключи массива?
Например, я мог бы сделать
$vals = implode(', ', $values);
, чтобы взорвать значения, но мне нужно сделатьэто также относится и к ключам.
Я также мог бы использовать
$keys = array();
foreach($values as $col => $val)
$keys[] = $col;
$cols = implode(', ', $keys);
$rows = implode(', ', $values);
, но мне все еще нужно, чтобы я зациклился на нем, создав другой массив, конечно, есть лучший способ, просто получитеключи?