Php 如何在symfony 1.4的条令查询中从数组键中删除表名
如何从结果中的键中删除表名Php 如何在symfony 1.4的条令查询中从数组键中删除表名,php,doctrine,symfony-1.4,Php,Doctrine,Symfony 1.4,如何从结果中的键中删除表名 $query = Doctrine_Core::getTable('Apps') ->createQuery('a') ->select("DATE_FORMAT(`created_at`,'%Y/%m') as Month,count(*) as Applications") ->groupBy(" year(`created_at`) , month(`created_at`)"); $qu
$query = Doctrine_Core::getTable('Apps')
->createQuery('a')
->select("DATE_FORMAT(`created_at`,'%Y/%m') as Month,count(*) as Applications")
->groupBy(" year(`created_at`) , month(`created_at`)");
$query->setHydrationMode(Doctrine::HYDRATE_NONE);
给了我类似的东西
{
"a_Month": "2012/09",
"a_Applications": "3447"
},
{
"a_Month": "2012/10",
"a_Applications": "565"
},
{
"a_Month": "2012/11",
"a_Applications": "689"
}...
我需要买点像这样的东西
{
"Month": "2012/09",
"Applications": "3447"
},
{
"Month": "2012/10",
"Applications": "565"
},
{
"Month": "2012/11",
"Applications": "689"
}...
在没有表名的情况下,有什么方法可以做到这一点吗?我不太了解原则,所以可能有一些本地的东西,但您可以尝试一下(
$arr
是您的结果数组):
内部原则使用自己的列名来构建查询。您指定的列名将在水合过程中应用于结果。因为您使用了
hydroge\u NONE
,所以在结果集上没有水合作用,因此您得到了学说的名称
使用
hydration\u数组
模式,您将得到一个包含您自己分配的键的数组。非常好,我确实尝试过这个,但我没有意识到水合作用也在我正在使用的代码的其他地方设置
array_map(function ($k, $v) use (&$arr){
$ke = str_replace("a_", "", $k);
$arr[$ke] = $v;
unset($arr[$k]);
}, array_keys($arr), $arr);