如何使用数组中的值将其作为关键字来选择它


How can i use the values in my array to make it as a key word to select it

嗨,我有这个想法,使用我在数据库中获得的数组值作为选择其中一个的键,我不知道如何获取它,但我有以下代码:

<?php
include('connect.php');
$currentDate = date('Y-m-d');
$query = "SELECT * FROM  sms_in WHERE  sent_dt = '2015-01-15'";
$data = mysqli_query($cxn, $query) or die ("Couldn't execute query");
while ($row = mysqli_fetch_assoc($data))
  {
    $arr[] = $row['sms_text'];
  }
$arr= implode(' ' , $arr);
$Numeric = preg_replace('/[0-9]/', '', $arr);
$arr = explode(' ', $Numeric);
print_r($arr);

?>

它给了我这样的数组

阵列 ( [0] => ACI [ 1 ] => TEM [2] => SAL [3] => OXY )

我被困在那个上面

我想要得到的只是数字。

例如,如果我选择 ACI,它将从其以前的值 1ACI 中给我值 1

这是前一个数组

阵列 ( [0] => 1ACI [1] => 2TEM [2] => 3SAL [3] => 4OXY )

我的想法可能吗??我希望我已经足够清楚了...如果没有,请告诉我,我会详细说明。提前感谢您的回复!

我建议你做这样的事情:

<?php
    $arr = array(
        '1ACI',
        '2TEM',
        '3SAL',
        '4OXY',
    );
    $new_arr = array();
    foreach ($arr as $val) {
        $key = preg_replace('/[0-9]/', '', $val);
        $new_arr[$key] = preg_replace('/[A-Z]/', '', $val);
    }
    print_r($new_arr);
?>

该代码将具有以下输出:

Array ( [ACI] => 1 [TEM] => 2 [SAL] => 3 [OXY] => 4 )

因此,您可以使用方括号选择所需的项目,例如$new_arr['ACI']将返回1

下面是一个如何通过循环获取所需数组的示例:

$arr = array('ACI', 'TEM', 'SAL', 'OXY');
foreach($arr as $key => &$value) {
    $key++;
    $value = $key.$value;
}

print_r($arr);

阵列 ( [0] => 1ACI [1] => 2TEM [2] => 3SAL [3] => 4OXY )