如何计算数组REGEX中图像的出现次数

时间:2015-05-05 07:47:09

标签: php arrays regex

我有一个像这样的数组

ARRAY[0][DATAROOT.PROPIEDADES.FOTO1][0]
ARRAY[0][DATAROOT.PROPIEDADES.FOTO2][0]
ARRAY[0][DATAROOT.PROPIEDADES.FOTO3][0]
ARRAY[0][DATAROOT.PROPIEDADES.FOTO4][0]

我必须编写一个脚本来计算数组中照片的数量:

$x = "DATAROOT.PROPIEDADES.FOTO";

$ct = 8; // This is the number of image I am passing fixed variable

我想使用我需要的数组来找到一种计算数组的方法

列名DATAROOT.PROPIEDADES.FOTO最后包含123等。

我无法做到

for($tt=1;$tt<=$ct;$tt++)
{   
    $k=$x.$tt;     
    $result[]=$this->ARRAY[0][$k][0];
}

任何人都可以帮助我。

先谢谢

1 个答案:

答案 0 :(得分:1)

作为替代方案,您可以在父数组中获取其键具有该子字符串的那些元素:

$x = 'DATAROOT.PROPIEDADES.FOTO';
foreach($this->ARRAY[0] as $k => $value) {
    if(strpos($k, $x) !== false) {
        $result[] = $value[0];
    }
}

或者:

foreach($this->ARRAY[0] as $k => $value) {
    if(preg_match('~DATAROOT\.PROPIEDADES\.FOTO\d+~', $k)) {
        $result[] = $value[0]
    }
}