Как посчитать выводимые в key значения?

Рейтинг: 1Ответов: 1Опубликовано: 11.09.2014

Здравствуйте!

Есть кусок кода

if (substr($key,0,4) == "AIR/" && in_array(substr($key,4,3),array("123","321","567","894","111","222","564","864")))
{
echo "\n* $key *\n";

который выводит в конце концов значения в таком виде:

* AIR/564-0000906c * * AIR/321-00008cab * * AIR/222-0000806f * * AIR/111-00009067 *

Скажите, пожалуйста, как мне считать $key перед выводом. Мне надо получать число сколько там значений, разделителем служит звездочка *, потому что оно выводит все в одну строку, и я не знаю, как такое можно посчитать.
Я думал, может, считать сколько в строке будет AIR/ встречаться, такое число и выйдет, но у меня все равно не выходит. Пробовал считать через count($key), но оно выводит 1, потому что оно, наверно, считает всю строку)

Помогите.

Пробовал так:

$n = $n + 1;

echo "\n* $n *\n"; выводит

* 1 * * 2 * * 3 * * 4 *

Мне нужно получить конечное число 6, ведь если даже сделаю каунт $n, оно мне единицы выведет.

Ответы

▲ 1

Я понял вашу задачу так:

$str = '* AIR/564-0000906c * * AIR/321-00008cab * * AIR/222-0000806f * * AIR/111-00009067 *';
$count = preg_match_all('/AIR\/[\d]{3}-[0-9a-z]{8}/', $str, $matches);
echo $count; // 4