Ejemplo por defecto
function memoize($func)
{
return function () use ($func) {
static $cache = [];
$args = func_get_args();
$key = serialize($args);
$cached = true;
if (!isset($cache[$key])) {
$cache[$key] = $func(...$args);
$cached = false;
}
return ['result' => $cache[$key], 'cached' => $cached];
};
}
$memoizedAdd = memoize(
function ($num) {
return $num + 10;
}
);
var_dump($memoizedAdd(5)); // ['resultado' => 15, 'en caché' => false]
var_dump($memoizedAdd(6)); // ['result' => 16, 'cached' => false].
var_dump($memoizedAdd(5)); // ['resultado' => 15, 'almacenado en caché' => true].
Ejemplo oscuro
function memoize($func)
{
return function () use ($func) {
static $cache = [];
$args = func_get_args();
$key = serialize($args);
$cached = true;
if (!isset($cache[$key])) {
$cache[$key] = $func(...$args);
$cached = false;
}
return ['result' => $cache[$key], 'cached' => $cached];
};
}
$memoizedAdd = memoize(
function ($num) {
return $num + 10;
}
);
var_dump($memoizedAdd(5)); // ['resultado' => 15, 'en caché' => false]
var_dump($memoizedAdd(6)); // ['result' => 16, 'cached' => false].
var_dump($memoizedAdd(5)); // ['resultado' => 15, 'almacenado en caché' => true].
Ejemplo de Coy
function memoize($func)
{
return function () use ($func) {
static $cache = [];
$args = func_get_args();
$key = serialize($args);
$cached = true;
if (!isset($cache[$key])) {
$cache[$key] = $func(...$args);
$cached = false;
}
return ['result' => $cache[$key], 'cached' => $cached];
};
}
$memoizedAdd = memoize(
function ($num) {
return $num + 10;
}
);
var_dump($memoizedAdd(5)); // ['resultado' => 15, 'en caché' => false]
var_dump($memoizedAdd(6)); // ['result' => 16, 'cached' => false].
var_dump($memoizedAdd(5)); // ['resultado' => 15, 'almacenado en caché' => true].
Ejemplo Funky
function memoize($func)
{
return function () use ($func) {
static $cache = [];
$args = func_get_args();
$key = serialize($args);
$cached = true;
if (!isset($cache[$key])) {
$cache[$key] = $func(...$args);
$cached = false;
}
return ['result' => $cache[$key], 'cached' => $cached];
};
}
$memoizedAdd = memoize(
function ($num) {
return $num + 10;
}
);
var_dump($memoizedAdd(5)); // ['resultado' => 15, 'en caché' => false]
var_dump($memoizedAdd(6)); // ['result' => 16, 'cached' => false].
var_dump($memoizedAdd(5)); // ['resultado' => 15, 'almacenado en caché' => true].
Ejemplo de Okaidia
function memoize($func)
{
return function () use ($func) {
static $cache = [];
$args = func_get_args();
$key = serialize($args);
$cached = true;
if (!isset($cache[$key])) {
$cache[$key] = $func(...$args);
$cached = false;
}
return ['result' => $cache[$key], 'cached' => $cached];
};
}
$memoizedAdd = memoize(
function ($num) {
return $num + 10;
}
);
var_dump($memoizedAdd(5)); // ['resultado' => 15, 'en caché' => false]
var_dump($memoizedAdd(6)); // ['result' => 16, 'cached' => false].
var_dump($memoizedAdd(5)); // ['resultado' => 15, 'almacenado en caché' => true].
Ejemplo de luz solarizada
function memoize($func)
{
return function () use ($func) {
static $cache = [];
$args = func_get_args();
$key = serialize($args);
$cached = true;
if (!isset($cache[$key])) {
$cache[$key] = $func(...$args);
$cached = false;
}
return ['result' => $cache[$key], 'cached' => $cached];
};
}
$memoizedAdd = memoize(
function ($num) {
return $num + 10;
}
);
var_dump($memoizedAdd(5)); // ['resultado' => 15, 'en caché' => false]
var_dump($memoizedAdd(6)); // ['result' => 16, 'cached' => false].
var_dump($memoizedAdd(5)); // ['resultado' => 15, 'almacenado en caché' => true].
Ejemplo de mañana por la noche
function memoize($func)
{
return function () use ($func) {
static $cache = [];
$args = func_get_args();
$key = serialize($args);
$cached = true;
if (!isset($cache[$key])) {
$cache[$key] = $func(...$args);
$cached = false;
}
return ['result' => $cache[$key], 'cached' => $cached];
};
}
$memoizedAdd = memoize(
function ($num) {
return $num + 10;
}
);
var_dump($memoizedAdd(5)); // ['resultado' => 15, 'en caché' => false]
var_dump($memoizedAdd(6)); // ['result' => 16, 'cached' => false].
var_dump($memoizedAdd(5)); // ['resultado' => 15, 'almacenado en caché' => true].
Esta noche Ejemplo
function memoize($func)
{
return function () use ($func) {
static $cache = [];
$args = func_get_args();
$key = serialize($args);
$cached = true;
if (!isset($cache[$key])) {
$cache[$key] = $func(...$args);
$cached = false;
}
return ['result' => $cache[$key], 'cached' => $cached];
};
}
$memoizedAdd = memoize(
function ($num) {
return $num + 10;
}
);
var_dump($memoizedAdd(5)); // ['resultado' => 15, 'en caché' => false]
var_dump($memoizedAdd(6)); // ['result' => 16, 'cached' => false].
var_dump($memoizedAdd(5)); // ['resultado' => 15, 'almacenado en caché' => true].