-1

如果我有一个如下所示的 MySQL 查询:

SELECT Content FROM AP_Data WHERE Title='Featured' or Title='Carousel'

是否可以使用 PHP 将变量转换为类似

echo $Row['Featured']['Content'];
echo $Row['Carousel']['Content'];

我希望通过这样做,我可以节省时间,而不会用多个查询轰炸服务器。这只是我需要的查询的一小部分。

4

3 回答 3

2

首先让我们更新您的查询以包含Title字段。

SELECT Content, Title FROM AP_Data WHERE Title='Featured' or Title='Carousel'

循环遍历结果时,您可以构建数组以满足您的需求

<?php
while($row = your_query_result){

  //If you have one Content per Title   
  $array[$row['Title']] = $row['Content'];

  //If you have multiple Contents per Title
  $array[$row['Title']][] = $row['Content'];

}
?>
于 2013-09-16T20:24:01.013 回答
0

Featured并且Carousel不是列名,它们只是列中的值。

你可以这样做。

    SELECT Content,Title FROM AP_Data WHERE Title='Featured' or Title='Carousel'

和代码

if  ($Row['Title'] == 'Featured') 
    {echo $Row['Content']; // content of featured
    } 
else{
    echo $Row['Content']; //content of carousel
    }
于 2013-09-16T20:15:48.410 回答
0

不,它不是那样工作的。但是,如果您将 Title 添加到查询中,如下所示:

SELECT Title,Content FROM AP_Data WHERE Title='Featured' or Title='Carousel'

然后,您可以构建一个这样的数组。您还可以按标题排序,以便所有轮播结果都排在第一位。

于 2013-09-16T20:19:37.023 回答