Надо чтобы в нее попала переменная с 1 и при каждом ее исполнении прибавлялась.
Глобальную переменную использовать не выйдет - функция в функции (а та тоже в функции), переменная может быть уже занята.
если в create_function пишу $i=1, то он при каждом вызове 1, а мне надо чтобы прибавлялось в ней, вообщем так:
function input($contentri) {
function contentinput($contentri) {
$contentr=preg_replace_callback($pattern,
create_function(
'$matches',
'здесь код, где нужно узнавать, сколько раз функция уже была вызвана'
Спустя 20 минут, 53 секунды (2.10.2011 - 11:43) caballero написал(а):
почему это глобальная не выйдет?
если preg_replace_callback в разных местах и хочешь считать отдельно то сделай глобальный массив
если preg_replace_callback в разных местах и хочешь считать отдельно то сделай глобальный массив
Спустя 54 минуты, 4 секунды (2.10.2011 - 12:37) AquaGen написал(а):
ой, ну я специально засунул кусок когда в функцию, чтобы можно было его везде использовать, а теперь собственно не получается функцию просто использовать.
можно как-нибудь я не знаю, "получить" переменную не глобальную, а из функции выше? (в смысле из функции, в которой эта функция)
можно как-нибудь я не знаю, "получить" переменную не глобальную, а из функции выше? (в смысле из функции, в которой эта функция)
Спустя 7 минут, 54 секунды (2.10.2011 - 12:45) Guest написал(а):
тогда почитай про замыкания (дельта функции ) в PHP
через create function никтто уже не делает
через create function никтто уже не делает
Спустя 3 часа, 54 минуты, 23 секунды (2.10.2011 - 16:39) Winston написал(а):
AquaGen
Почему не весь код показал ?
Почему не весь код показал ?
Цитата (AquaGen @ 2.10.2011 - 11:22) |
мне надо чтобы прибавлялось в ней, |
Напиши
static $i = 0;
И потом инкременти.
Guest
Цитата (Guest @ 2.10.2011 - 12:45) |
тогда почитай про замыкания (дельта функции ) в PHP |
А ты знаешь в какой версии PHP они появились ?
И то, что еще очень много серверов используют PHP < 5.3
Спустя 15 часов, 30 минут, 8 секунд (3.10.2011 - 08:09) linker написал(а):
Guest
Делаю, ибо не у каждого хостера имеется PHP 5.3 и выше.
Делаю, ибо не у каждого хостера имеется PHP 5.3 и выше.
Спустя 2 дня, 8 часов, 11 минут, 42 секунды (5.10.2011 - 16:21) AquaGen написал(а):
Цитата (Winston @ 2.10.2011 - 13:39) |
AquaGenstatic $i = 0; И потом инкременти. |
что? я перед функцией в которой стоит global $I прописал, все равно он не получает этот $i
Спустя 5 минут, 14 секунд (5.10.2011 - 16:26) m4a1fox написал(а):
ну так наверно надо прибавлять 1 каждый раз при вызове! Наверно. так $i++
Спустя 1 час, 42 минуты, 22 секунды (5.10.2011 - 18:09) Winston написал(а):
AquaGen
Попробуй
Попробуй
function input($contentri) {
function contentinput($contentri) {
$contentr=preg_replace_callback($pattern,
create_function(
'$matches',
'static $i = 0; return isset($matches) ? $i++ : $i;'