PHP code example of brekitomasson / laravel-model-finder
1. Go to this page and download the library: Download brekitomasson/laravel-model-finder library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
brekitomasson / laravel-model-finder example snippets
declare(strict_types = 1);
namespace App\Tools;
use BrekiTomasson\LaravelModelFinder\CanFindModelEntries;
use Illuminate\Database\Eloquent\Model;
class CountryFinder
{
use CanFindModelEntries;
protected static array $queryKeys = [
'alpha2',
'alpha3',
'name',
'short_name',
];
protected static Model|string $queryModel = \App\Models\World\Country::class;
public static function find(mixed $value) : Model
{
// TODO: Implement find() method.
}
}
public static function find(mixed $value) : Country
{
// First, we 'clean' the value by removing any trailing or leading spaces, squishing extra spaces down to
// single spaces, casting the result to string, etc.
$value_object = new \BrekiTomasson\LaravelModelFinder\DataObjects\ValueObject($value);
// Then, we generate the Cache Helper using the Value Object we've just generated. This will allow us to query
// the cache for the search criteria you've entered.
$cache = self::getCacheHelper($value_object);
// If we've already got the results for this search in our cache, we can return it as is.
if ($cache->exists()) {
return $cache->get();
}
// Perform the search and store the result in $result. This will throw a ModelNotFoundException if no result is
// found or a MultipleRecordsFoundException if two or more results are found.
$result = self::searchInModel($value_object);
// Return $result, ensuring we also store it in the cache for future use.
return $cache->put($result);
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.