Strategies
Las strategies deben implementar la interfaz StrategyInterface
y declarar la función __invoke()
, que recibirá por parámetro el valor y devolverá una cadena o un array de cadenas sobre las que se crearán los indices.
<?php
use Omatech\Enigma\Strategies\Contracts\StrategyInterface;
class LikeSearch implements StrategyInterface
{
public function __invoke($input)
{
$possibilities = [];
$len = strlen($input);
for ($i = 0; $i <= $len; $i++) {
for ($j = 0; $j <= $len; $j++) {
$possibilities[] = (string) substr($input, $i, $j);
}
}
return array_filter(array_unique($possibilities));
}
}
Last updated