2015-06-07 130 views
-1

我知道以前有类似的问题,但我并不完全满意答案。另外,我正在寻找更好/更简单的方法来做到这一点。通过函数循环访问PHP PDO查询结果

基本上没有这样的一个表:

id object  Desc 
1 Apple  Fruit 
2 Orange  Fruit 
3 cabbage Vegetable 

这样的功能:

function description($object) 
{ 
if ($object == apple) 
return "Red like an apple"; 

if($object == orange) 
return "Orange like an orange"; 

if($object == cabbage) 
return "green like a cabbage"; 
} 

我想执行某种选择所有的PHP PDO返回

id object     Desc 
1 red like an apple  Fruit 
2 orange like an orange Fruit 
3 green like a cabbage Vegetable 

有关完成此操作的最佳方法的任何想法?

+0

请不要要求现成的答案在这里。 –

+0

顺便说一下,如果($ object =='apple')'适合作为其字符串,if($ object == apple)'错误。 –

+0

这只是一个例证。我显然不会在我的代码 – Ram

回答

0

这是我能找到的最好的方法。

$results = $stmt->fetchAll(PDO::FETCH_ASSOC); 
foreach($results as $result){ 
$result['object'] = description($result['object']); 
$myresult[] = $result; } 

echo json_encode($myresult); 
+0

另一种方式http://php.net/manual/en/function.array-map.php – Mihai

+0

感谢您的回答!我有2个后续问题:1.是否有办法将回调限制在关联数组中的特定索引? (在我的情况下,仅索引“对象”)2.如果您为每个索引而不是仅仅索引一个索引,性能会受损吗? – Ram

+0

没有看到你有一个特定的键,你是对的。 – Mihai