PHP.mk документација

Memcache::increment

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

memcache.increment.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека memcache.increment.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
Memcache::increment

Референца за `memcache.increment.php` со подобрена типографија и навигација.

memcache.increment.php

Memcache::increment

memcache_increment

(PECL memcache >= 0.2.0)

Memcache::increment -- memcache_incrementЗголеми ја вредноста на ставката

= NULL

Memcache::increment(string $key, int $value = 1): int|false
memcache_increment(— Lightweight Directory Access Protocol $memcache, string $key, int $value = 1): int|false

Memcache::increment() ја зголемува вредноста на ставката за наведената value. Ако ставката наведена од key не беше нумеричка и не може да се претвори во број, нејзината вредност ќе се промени во value. Memcache::increment() Оваа функција креирај ставка ако веќе не постои.

Забелешка: Пример #4 Користење именуван подшаблон Memcache::increment() со ставки што биле складирани компресирани бидејќи последователните повици до Memcache::get() ќе откаже.

Параметри

key
Клуч на ставката за зголемување.
value
Зголеми ја ставката за value.

Вратени вредности

Враќа нова вредност на ставката при успех или false при неуспех.

Примери

Пример #1 Memcache::increment() example

<?php

/* procedural API */
$memcache_obj = memcache_connect('memcache_host', 11211);
/* increment counter by 2 */
$current_value = memcache_increment($memcache_obj, 'counter', 2);

/* OO API */
$memcache_obj = new Memcache;
$memcache_obj->connect('memcache_host', 11211);
/* increment counter by 3 */
$current_value = $memcache_obj->increment('counter', 3);

?>

Види Исто така

Белешки од корисници 5 белешки

jay dot paroline at escapemg dot com
пред 16 години
Instead of checking the value before incrementing, you can simply ADD it instead before incrementing each time. If it's already there, your ADD is ignored, and if it's not there, it's set.

If you add($memcacheKey, 0) and then increment($memcacheKey, 1) in that order, you avoid all possible race conditions. If two threads are running this code concurrently, you will always end up with your value being 2 no matter which order the threads execute in.
Анонимен
пред 16 години
Please note:
If the key does not exist, memcache does NOT return false (as you might expect) but 0.
You won't get any hint that the key did not exist and still does not exist and that nothing was incremented.
perroazul64 at gmail dot com
пред 14 години
When the key doesn't exist it may return either bool(false) or int(0) (I get different return values on different servers), so be careful if you check for something like ($memcache->increment($key) === false).
ian at blip dot fm
пред 16 години
Be careful to use Memcache::decrement() and never Memcache::increment() with a negative value.

The check that prevents Memcache::decrement() from going negative is not in place with Memcache::increment(), so you can end up with a garbage integer on the order of 18 quintillion stored in place of the expected value.
Анонимен
20 години пред
if no variable exists, even if you specify an increment value, the result will be null.

if you're using this for a mutex, chk if its null, and if so, then ADD the variable.
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.