strtolower()在一个数组上

acc*_*man 25 php arrays string

在数组上使用strtolower()是否有办法使输出低于小写?

<?=$rdata['batch_id']?>
strtolower($rdata['batch_id'])
Run Code Online (Sandbox Code Playgroud)

s3v*_*v3n 103

正确的函数名称是strtolower().如果要在数组的每个元素上应用它,可以使用array_map():

$array = array('ONE', 'TWO');
$array = array_map('strtolower', $array);
Run Code Online (Sandbox Code Playgroud)

现在你的数组将包含'one'和'two'.

  • 如果没有编辑我的数组的内容就可以获得一个好的结果:if(!in_array(strtolower($ filename [0]),array_map('strtolower',$ filesArray))){ (2认同)
  • `array_map('mb_strtolower', $string)` 如果字符串中可能包含非英文字符:[PHP Sandbox](http://sandbox.onlinephpfunctions.com/code/5c67223f0a0a17d743d98854a1c43737996333e9) (2认同)

小智 9

如果你有一堆具有键值对的数组,并且你想将键更改为小写,那么这就是你的解决方案:

$lower_array_keys = array_change_key_case($array, CASE_LOWER);
Run Code Online (Sandbox Code Playgroud)

看看这里:http://php.net/manual/en/function.array-change-key-case.php.


waj*_*jiw 7

你的意思是strtolower?

<?php echo strtolower($rdata['batch_id']); ?>
Run Code Online (Sandbox Code Playgroud)

http://php.net/manual/en/function.strtolower.php


Ben*_*Ben 7

array_map是首选,但另一种解决方案是:

foreach($array as &$v) {
  $v = strtolower($v);
}
Run Code Online (Sandbox Code Playgroud)

请注意,&符号&可以$v修改.

  • 确保始终执行“unset($v);” 在带有 '&amp;' 的 foreach 循环之后。或者确保不再在同一范围内使用 '$v'。否则,分配给 $v 的任何新内容都将放入您的原始数组中。出错的例子:http://sandbox.onlinephpfunctions.com/code/6b6c3a779d5c43cebee4020786f6090632f33822 (2认同)

oma*_*sar 5

我建议您使用它返回一个数组,其中包含将回调应用于数组的相应array_map索引的结果。strtolower

array_map('strtolower', $rdata['batch_id']);
Run Code Online (Sandbox Code Playgroud)