Laravel voegt een voorvoegsel toe aan alle gemaakte sleutels. Dat voorvoegsel wordt gedefinieerd in de redis
config in database.php
.
'prefix' => env('REDIS_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_').'_database_'),
Ik heb nog niet naar de broncode gekeken, maar wanneer laravel naar sleutels zoekt, verwacht het waarschijnlijk het voorvoegsel en voegt dat toe aan wat je hebt doorgegeven aan keys
of get
. Dus als je keys('key_name')
het zoekt naar prefix_key_name
daarom get
null
geretourneerd en keys
heeft mijn sleutel die via Python is gemaakt niet geretourneerd, in tegenstelling tot de sleutel die via Laravel is gemaakt. Ik denk dat scan
werkt een beetje anders en geeft alle sleutels terug, ongeacht het voorvoegsel.
Als u de standaard van uw prefix instelt op null ('prefix' => env('REDIS_PREFIX', null
) dan wordt uw sleutel teruggegeven.
Met behulp van get
en voeg het voorvoegsel toe, zoals dit Redis::get('prefix_key_name')
werkt niet.