Exemplo padrão
function memoize($func)
{
return function () use ($func) {
static $cache = [];
$args = func_get_args();
$key = serialize($args);
$cached = true;
se (!isset($cache[$key])) {
$cache[$key] = $func(...$args);
$cached = false;
}
return ['result' => $cache[$key], 'cached' => $cached];
};
}
$memoizedAdd = memoize(
função ($num) {
return $num + 10;
}
);
var_dump($memoizedAdd(5)); // ['result' => 15, 'cached' => false]
var_dump($memoizedAdd(6)); // ['result' => 16, 'cached' => false]
var_dump($memoizedAdd(5)); // ['result' => 15, 'cached' => true]
Exemplo sombrio
function memoize($func)
{
return function () use ($func) {
static $cache = [];
$args = func_get_args();
$key = serialize($args);
$cached = true;
se (!isset($cache[$key])) {
$cache[$key] = $func(...$args);
$cached = false;
}
return ['result' => $cache[$key], 'cached' => $cached];
};
}
$memoizedAdd = memoize(
função ($num) {
return $num + 10;
}
);
var_dump($memoizedAdd(5)); // ['result' => 15, 'cached' => false]
var_dump($memoizedAdd(6)); // ['result' => 16, 'cached' => false]
var_dump($memoizedAdd(5)); // ['result' => 15, 'cached' => true]
Exemplo de Coy
function memoize($func)
{
return function () use ($func) {
static $cache = [];
$args = func_get_args();
$key = serialize($args);
$cached = true;
se (!isset($cache[$key])) {
$cache[$key] = $func(...$args);
$cached = false;
}
return ['result' => $cache[$key], 'cached' => $cached];
};
}
$memoizedAdd = memoize(
função ($num) {
return $num + 10;
}
);
var_dump($memoizedAdd(5)); // ['result' => 15, 'cached' => false]
var_dump($memoizedAdd(6)); // ['result' => 16, 'cached' => false]
var_dump($memoizedAdd(5)); // ['result' => 15, 'cached' => true]
Exemplo de funky
function memoize($func)
{
return function () use ($func) {
static $cache = [];
$args = func_get_args();
$key = serialize($args);
$cached = true;
se (!isset($cache[$key])) {
$cache[$key] = $func(...$args);
$cached = false;
}
return ['result' => $cache[$key], 'cached' => $cached];
};
}
$memoizedAdd = memoize(
função ($num) {
return $num + 10;
}
);
var_dump($memoizedAdd(5)); // ['result' => 15, 'cached' => false]
var_dump($memoizedAdd(6)); // ['result' => 16, 'cached' => false]
var_dump($memoizedAdd(5)); // ['result' => 15, 'cached' => true]
Exemplo da Okaidia
function memoize($func)
{
return function () use ($func) {
static $cache = [];
$args = func_get_args();
$key = serialize($args);
$cached = true;
se (!isset($cache[$key])) {
$cache[$key] = $func(...$args);
$cached = false;
}
return ['result' => $cache[$key], 'cached' => $cached];
};
}
$memoizedAdd = memoize(
função ($num) {
return $num + 10;
}
);
var_dump($memoizedAdd(5)); // ['result' => 15, 'cached' => false]
var_dump($memoizedAdd(6)); // ['result' => 16, 'cached' => false]
var_dump($memoizedAdd(5)); // ['result' => 15, 'cached' => true]
Exemplo de luz solarizada
function memoize($func)
{
return function () use ($func) {
static $cache = [];
$args = func_get_args();
$key = serialize($args);
$cached = true;
se (!isset($cache[$key])) {
$cache[$key] = $func(...$args);
$cached = false;
}
return ['result' => $cache[$key], 'cached' => $cached];
};
}
$memoizedAdd = memoize(
função ($num) {
return $num + 10;
}
);
var_dump($memoizedAdd(5)); // ['result' => 15, 'cached' => false]
var_dump($memoizedAdd(6)); // ['result' => 16, 'cached' => false]
var_dump($memoizedAdd(5)); // ['result' => 15, 'cached' => true]
Exemplo de amanhã à noite
function memoize($func)
{
return function () use ($func) {
static $cache = [];
$args = func_get_args();
$key = serialize($args);
$cached = true;
se (!isset($cache[$key])) {
$cache[$key] = $func(...$args);
$cached = false;
}
return ['result' => $cache[$key], 'cached' => $cached];
};
}
$memoizedAdd = memoize(
função ($num) {
return $num + 10;
}
);
var_dump($memoizedAdd(5)); // ['result' => 15, 'cached' => false]
var_dump($memoizedAdd(6)); // ['result' => 16, 'cached' => false]
var_dump($memoizedAdd(5)); // ['result' => 15, 'cached' => true]
Exemplo desta noite
function memoize($func)
{
return function () use ($func) {
static $cache = [];
$args = func_get_args();
$key = serialize($args);
$cached = true;
se (!isset($cache[$key])) {
$cache[$key] = $func(...$args);
$cached = false;
}
return ['result' => $cache[$key], 'cached' => $cached];
};
}
$memoizedAdd = memoize(
função ($num) {
return $num + 10;
}
);
var_dump($memoizedAdd(5)); // ['result' => 15, 'cached' => false]
var_dump($memoizedAdd(6)); // ['result' => 16, 'cached' => false]
var_dump($memoizedAdd(5)); // ['result' => 15, 'cached' => true]