Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Добрый вечер, кто подскажет, есть что то подобное метода pluck для БД.
Загрузка настроек:
private function loadSettings()
{
$this->all = Settings::select(['name', 'type', 'value', 'private'])->get()->mapWithKeys(
function(Settings $settings) {
return [$settings->name => $settings->toArray()];
});
// add config keys that should be included
foreach ($this->configKeys as $clientKey => $configKey) {
$this->set($clientKey, config($configKey));
}
}
Вывод настроек:
public function all($private = false)
{
$all = $this->all;
// filter out private (server-only) settings
if ( ! $private) {
$all = $all->filter(function($setting) use($private) {
return !$setting['private'];
});
}
return $all->pluck('value', 'name')->toArray();
}
В итоге получается:
"client_mod" => 0
"fcsecret" => null
"fcid" => null
"fc" => 1
"social" => 1
Но мне нужно еще дополнительное поле в выводе "type".
Подскажите как сделать...
Не в сети
Не в сети
Выбрать только нужные поля ты можешь через перечисление в select() - два три или сколько надо, проиндексировать полученный результат по полю можно методом keyBy()
https://laravel.com/docs/master/collect … thod-keyby
Изменено artoodetoo (16.03.2020 16:44:07)
There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
Не в сети
Страницы 1