我有一个数组:
$arr = array(c,b,a);
另一个阵列:
$string = array(a,a,b);
如何做到这一点给我一个看起来像这样的数组:
$arr2 = array(2,2,1);
抱歉我的英语不好。
答案 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);