PHP:替换mySQL结果数组中的值

PHP:替换mySQL结果数组中的值,php,arrays,associative-array,Php,Arrays,Associative Array,我正在尝试替换$data数组中以下结果集的一部分,例如,我想用千位分隔符格式化价格,并添加一个可变超链接而不是详细信息 查询本身可以工作,我知道如何根据需要修改值,但我不知道如何替换数组中的值,或者最好只将修改后的值传递给数组 注意:我需要在PHP中完成这项工作,而不是直接在mySQL中完成 $stmt = $conn->prepare("SELECT itemId, price, details FROM offers WHERE itemId LIKE 'DE%' ORDER

我正在尝试替换$data数组中以下结果集的一部分,例如,我想用千位分隔符格式化价格,并添加一个可变超链接而不是详细信息

查询本身可以工作,我知道如何根据需要修改值,但我不知道如何替换数组中的值,或者最好只将修改后的值传递给数组

注意:我需要在PHP中完成这项工作,而不是直接在mySQL中完成

$stmt = $conn->prepare("SELECT itemId, price, details FROM offers WHERE itemId LIKE 'DE%' ORDER BY itemId");
$stmt->execute();
$resultX = $stmt->get_result(); 
$rowCountX = $resultX->num_rows;
$data = array();

while($rows = $resultX->fetch_assoc()) {
    $data[] = $rows; // array that I want to change
}
更新:

例如: itemId:b500->应为b500//不变 价格:1500->应该是1500 详情:第123项->

有人能帮我吗

谢谢, 汤姆

你可以这样做: $data=数组

while($rows = $resultX->fetch_assoc()) {
    $input_data = array();
    $input_data['price']= formatIndian($rows['price']);
    $input_data['details']= "<a href='' > ". $row['details']."</a>";
    $data[]= $input_data;
}
注意:formatIndian只是将数字转换为Indian格式的任何函数,您可以这样做: $data=数组

while($rows = $resultX->fetch_assoc()) {
    $input_data = array();
    $input_data['price']= formatIndian($rows['price']);
    $input_data['details']= "<a href='' > ". $row['details']."</a>";
    $data[]= $input_data;
}

注意:formatIndian只是将数字转换为Indian格式的任何函数,不确定我是否理解该问题,但如果您想在代码上显示之前更改值,或返回视图,只需执行以下操作:

$stmt = $conn->prepare("SELECT itemId, price, details FROM offers WHERE itemId LIKE 'DE%' ORDER BY itemId");
$stmt->execute();
$resultX = $stmt->get_result(); 
$rowCountX = $resultX->num_rows;
$data = array();
$rows = $resultX->fetch_all(MYSQLI_ASSOC);
foreach($rows as $row) {
    $row['price'] =  number_format( $row['price'] , 2 , "" , "," );
    $row['details'] = '<a href="#linkhere">'.$row['details'].'</a>';
    $data[] = $row; // array that I want to change
}

不确定我是否理解这个问题,但如果您想在代码上显示之前更改值,或返回视图,只需执行以下操作:

$stmt = $conn->prepare("SELECT itemId, price, details FROM offers WHERE itemId LIKE 'DE%' ORDER BY itemId");
$stmt->execute();
$resultX = $stmt->get_result(); 
$rowCountX = $resultX->num_rows;
$data = array();
$rows = $resultX->fetch_all(MYSQLI_ASSOC);
foreach($rows as $row) {
    $row['price'] =  number_format( $row['price'] , 2 , "" , "," );
    $row['details'] = '<a href="#linkhere">'.$row['details'].'</a>';
    $data[] = $row; // array that I want to change
}

您能添加示例输入和输出吗?@aviboy2006:谢谢。这是一个一般性问题,但我提供了一些示例。您能添加示例输入和输出吗?@aviboy2006:谢谢。这是一个一般性问题,但我提供了一些例子。