次のようなKey-Valueテーブルの配列があります(DBから直接取得されます)。
$application_strings = array(
array('key' => 'building_type', 'value' => 'Building Type'),
array('key' => 'application', 'value' => 'Application'),
);
/* would print_r like so:
Array(
[0] => Array([key] => 'building_type', [value] => 'Building Type'),
[1] => Array([key] => 'application', [value] => 'Application')
)
*/
そしてそれを次のようなものに変換したいと思います
$strings = array(
'building_type' => 'Building type',
'application' => 'Application',);
/* would print_r like so:
Array(
[building_type] => 'Building Type',
[application] => 'Application'
)
*/
私の現在のアプローチは次のようになります。
$strings_statement = DB::getDB()->prepare(
"SELECT `key`, `value` FROM `strings`
WHERE `lang` = (SELECT `lang` FROM `sites` WHERE `key`=:key)");
$strings_statement->execute(array(':key' => 12345));
$application_strings = $strings_statement->fetchAll(PDO::FETCH_ASSOC);
$strings = array();
foreach($application_strings as $string) {
$strings[$string['key']] = $string['value'];
}
これはより短く/より良く行うことができますか?