PHP从数组中获取字母ID

时间:2017-02-07 09:17:26

标签: php arrays

我有一个数组:

$arr = array(c,b,a);

另一个阵列:

$string = array(a,a,b);

如何做到这一点给我一个看起来像这样的数组:

$arr2 = array(2,2,1);

抱歉我的英语不好。

4 个答案:

答案 0 :(得分:2)

使用array_search()可以解决问题,但如果找不到数组中的值,请记住array_search()将返回FALSE

$arr = array('c','b','a');
$string = array('a','a','b');
$new_arr = array();

foreach ( $string as $value){
    $index = array_search($value, $arr);
    if ( $index !== false ) {
        $new_arr[] = $index;
    } else {
        $new_arr[] = -1;    // used -1 to indicate a NO FIND
    }
}

print_r($new_arr);

结果

Array
(
    [0] => 2
    [1] => 2
    [2] => 1
)

答案 1 :(得分:1)

你能否使用array_keys()

/*
Plugin Name: Plugin_Name
*/


class Plugin_Name       /* Define the name of the plugin or file */
{
  public function __construct()
  {
    add_action('wp_footer', array($this, 'enqueue_js_files'));
  }

  public function enqueue_js_files()
  {
    wp_register_script('clear_local_storage', plugins_url('clear_local_storage.js', __FILE__), array('jquery'), '', true);
    wp_enqueue_script('clear_local_storage');
  }

}

答案 2 :(得分:0)

试试这个

<?php
$arr = array('c','b','a','d');
$string = array('a','a','b');
$op=array();
foreach($string as $value)
{
    $op[]=array_search($value, $arr);
}
print_r($op)
?>

输出

  

数组([0] =&gt; 2 [1] =&gt; 2 [2] =&gt; 1)

答案 3 :(得分:0)

试试这个:

<?php

$arr = array('c','b','a');

$string = array('a','a','b');

$res = [];

foreach ($string as $arr_val){
   $res[] = ((int)array_search($arr_val, $arr))+1;
}

print_r($res);