【问题标题】:Adding values to MySQL results array将值添加到 MySQL 结果数组
【发布时间】:2016-05-18 13:07:58
【问题描述】:

我正在使用它来将 MySQL 结果放入一个数组中

$var = array();
$sql = "SELECT doc as document ,part, `desc`, price, qty, total FROM parts LIMIT 10";

$result = mysqli_query($con, $sql);

while($obj = mysqli_fetch_object($result)) {        
$var[] = $obj;  
}

效果很好。是否可以为每一行添加一个值?类似的东西

$var = array();
$sql = "SELECT doc as document ,part, `desc`, price, qty, total FROM parts LIMIT 10";

$result = mysqli_query($con, $sql);

while($obj = mysqli_fetch_object($result)) {        
$var[] = $obj;  
array_push($var['url'] = $url);
}

【问题讨论】:

    标签: php mysql arrays json array-push


    【解决方案1】:

    您应该将 url 附加到 $obj 中,然后将 $obj 存储到 $var 数组中:

    while($obj = mysqli_fetch_object($result)) {  
      $obj->url = $url;     // first store url into obj
      $var[] = $obj;  
    }
    

    【讨论】:

    • 谢谢 - 但我收到致命错误:不能在这一行使用 stdClass 类型的对象作为数组 $obj['url'] = 'ggggg';
    • 是的!完美的。非常感谢
    • @JayeshChitroda:如果 $obj->url = $url; 工作而不是 $obj['url'] = $url; 请在答案中更新相同的内容。这对那些将来寻找相同答案的人会有所帮助,他们可能会错过您的 cmets 并仅检查您的答案。
    【解决方案2】:

    希望这会有所帮助。

    while($obj = mysqli_fetch_object($result)) {        
        $var[] = array($obj,'url'=>$url);
    }
    

    【讨论】:

    • 谢谢 - 但这会将 url 放在行数据之外 - {{"document":"IH767898","part":"EHA320","desc":" 1.4 HH 11\/2 ","price":"10.31","qty":"1","total":"10.31","corder":"Frank"},"url":"www.test.com"}
    猜你喜欢
    • 2022-10-25
    • 2017-12-27
    • 2018-06-28
    • 2021-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-20
    • 1970-01-01
    相关资源
    最近更新 更多