【问题标题】:PHP array with variables inside?里面有变量的PHP数组?
【发布时间】:2013-04-08 07:27:32
【问题描述】:

我需要帮助:)

我有一个从我的数据库中获取值的 while/循环。此循环将数据库值与$_POST 输入相结合,并为每个项目生成一个$score。 代码:


while($row=mysql_fetch_assoc($res)){ 
    $score=($row["near_beach_score"]*$result_a)+
    ($row["near_city_score"]*result_b)+
    ($row["near_swim_pool_score"]*result_c)+
    ($row["near_public_transport_score"]*result_d)+
    $row["house_promote_score"];

$array_content.='array('.$row["id"].', '.$score.') ';

当 while/loop 完成时,我想要一个包含 while/loop 中生成的字符串内容的多重数组。

点赞:$complete_array = array ($array_content);

然后我想申请array_multisort

如何将$array_content 连接/插入到$complete_array = array ($array_content); 中?

感谢您有时间提供帮助。 /塞尔吉奥

【问题讨论】:

    标签: php sql multidimensional-array


    【解决方案1】:

    假设id 是一个唯一字段:

    $arr = array();
    while ($row = mysql_fetch_assoc($res)) {
        $score = ...;
        $arr[$row['id']] = $score;
    }
    

    它将$row['id'] 的值存储在键中,将$score 的值存储在值中。

    【讨论】:

    • 谢谢杰克!我按照你的建议做了,做了 arsort($arr);对我的数组进行排序。不错。
    【解决方案2】:

    试试这个:

    <?php
    $array_content = array();
    while($row=mysql_fetch_assoc($res)){
        $score=($row["near_beach_score"]*$result_a) + 
                ($row["near_city_score"]*result_b)+ 
                ($row["near_swim_pool_score"]*result_c)+ 
                ($row["near_public_transport_score"]*result_d)+ 
                $row["house_promote_score"];
    
        $array_content []=array($row["id"], $score);
    }
    

    您生成了String。如果您删除',您将获得array

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多