Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使用array_map和intval将以10为基数的数组转换为以16为基数的数组?_Php_Callback_Callable_Array Map - Fatal编程技术网

Php 如何使用array_map和intval将以10为基数的数组转换为以16为基数的数组?

Php 如何使用array_map和intval将以10为基数的数组转换为以16为基数的数组?,php,callback,callable,array-map,Php,Callback,Callable,Array Map,我尝试使用intval将数字数组转换为基数16,并希望了解如何将第二个参数传递给interval,默认情况下使用基数10 array_map('intval', [1, 2, "12", "15" , "99"]); 在我搜索google并阅读php.net文档之前,我无法解决此问题。您可以定义自己的匿名函数: array_map(function ($value) { return intval($value, 16); }, [1, 2, "12", "15", "99"]); 演示:感

我尝试使用
intval
将数字数组转换为基数16,并希望了解如何将第二个参数传递给interval,默认情况下使用基数10

array_map('intval', [1, 2, "12", "15" , "99"]);

在我搜索google并阅读php.net文档之前,我无法解决此问题。

您可以定义自己的匿名函数:

array_map(function ($value) { return intval($value, 16); }, [1, 2, "12", "15", "99"]);

演示:

感谢Jeto解决了我在
中遇到的问题,使用
发送更多参数$base=16;数组映射(函数($value)使用($base){return intval($value,$base);}[1,2,“12”,“15”,“99”])@Jeto我认为这是不正确的,这不把值当作已经在base 16中了吗?将
intval
更改为
base\u convert
您就很好了。@msg“已经在base 16中”是什么意思?这只是使用基数16获取数组中每个项的整数值。除非我不明白这个问题。@AliYousefi他想从10进制转换为16进制
intval
返回一个以10为基数的数字。@msg您是对的,这是错误的。如果他真的想转换,那么
base\u convert
听起来不错,但在他的开场白中,他只想找到一种方法,将第二个arg传递到
intval
,从而得到这个答案。