数组字符串为下划线和小写

时间:2014-10-15 15:52:11

标签: arrays string cakephp cakephp-2.0 cakephp-3.0

我有这个数组,需要小写值并快速添加下划线,因为这可能包含数千个结果。我正在使用cakephp 3.0 beta btw。

到目前为止我所拥有的:

$a = [
    (int) 0 => 'Dasdf',
    (int) 1 => 'FasDfgh',
    (int) 2 => 'CdfDhy',
    (int) 3 => 'WrdTghte',
    (int) 4 => 'StdFgh',
]

我意识到我可能会离开,但这些是我正在考虑使用的功能。我也意识到我的用法可能已经过时了。

$res = Hash::map($a, '{n}', array($this, 'noop'));
$underscore = Inflector::underscore('{Foo}');
$res = Hash::extract($a['{n}'] , Inflector::humanize($underscore) );

这是我需要的结果:     $ a = [         (int)0 => ' dasdf&#39 ;,         (int)1 => ' fas_dfgh&#39 ;,         (int)2 => ' cdf_dhy&#39 ;,         (int)3 => ' wrd_tghte&#39 ;,         (int)4 => ' std_fgh&#39 ;,     ]

1 个答案:

答案 0 :(得分:1)

成千上万的结果应该不是什么大问题 - 这是非常轻松的逻辑。

$strings = array('Dasdf', 'FasDfgh', 'CdfDhy');
foreach($strings as &$string) {
    $string = strtolower(Inflector::underscore($string));
}