Return array - multiple result
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 25/100
Rechercherichtung
Beginne damit, die im Issue gezeigten setting()->get()-Aufrufe nachzuverfolgen und zu untersuchen, wie übereinstimmende Zeilen in der Tabelle da_settings ausgewählt werden. Überprüfe anhand der Beispieldaten die Wildcard-Fälle für einen Schlüssel, einen Kontext und eine Klasse; als erledigt gilt dies, wenn jede angeforderte Übereinstimmung ein verwendbares Array zurückgibt, ohne Lookups einzelner Werte zu ändern.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
It is possible to get multiple values or an array as result?
e.g. - see code
Get all the settings from a specific key (App.theme) : setting()->get('App.theme','')
Get all the settings form a specific context : setting()->get('','user1')
Get all the settings from a specific class : setting()->get('Log')
$br='<br/>';
service('settings')->set('App.theme', 'dark', 'user1');
service('settings')->set('App.theme', 'white', 'user2');
service('settings')->set('App.theme', 'red', 'user3');
echo setting()->get('App.theme', 'user1').$br;
echo setting()->get('App.theme', 'user2').$br;
echo setting()->get('App.theme', 'user3').$br;
print_r(setting()->get('App.theme','*')).$br;
print_r(setting()->get('*','user1')).$br;
service('settings')->set('Log.location', 'site/log');
service('settings')->set('Log.date', '20220102');
service('settings')->set('Log.name', 'service');
echo setting()->get('Log.location').$br;
echo setting()->get('Log.date').$br;
echo setting()->get('Log.name').$br;
print_r (setting()->get('Log')).$br;
Sample database
-- Dumping structure for table ca70_assets.da_settings
CREATE TABLE IF NOT EXISTS `da_settings` (
`class` varchar(255) COLLATE armscii8_bin DEFAULT NULL,
`key` varchar(255) COLLATE armscii8_bin DEFAULT NULL,
`type` varchar(31) COLLATE armscii8_bin DEFAULT NULL,
`context` varchar(255) COLLATE armscii8_bin DEFAULT NULL,
`value` text COLLATE armscii8_bin DEFAULT NULL,
`created_at` datetime NOT NULL,
`updated_at` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=armscii8 COLLATE=armscii8_bin;
-- Dumping data for table ca70_assets.da_settings: ~11 rows (approximately)
INSERT INTO `da_settings` (`class`, `key`, `type`, `context`, `value`, `created_at`, `updated_at`) VALUES
('Config\\App', 'theme', 'string', 'user1', 'dark', '2023-01-02 16:10:06', '2023-01-02 16:14:10'),
('Config\\App', 'theme', 'string', 'user2', 'white', '2023-01-02 16:10:06', '2023-01-02 16:14:10'),
('Config\\App', 'theme', 'string', 'user3', 'red', '2023-01-02 16:10:06', '2023-01-02 16:14:10'),
('Log', 'location', 'string', NULL, 'site/log', '2023-01-02 16:13:08', '2023-01-02 16:14:10'),
('Log', 'date', 'string', NULL, '20220102', '2023-01-02 16:13:08', '2023-01-02 16:14:10'),
('Log', 'name', 'string', NULL, 'service', '2023-01-02 16:13:08', '2023-01-02 16:14:10');
- Vorherrschende Sprache
- PHP
- Sterne
- 95
- Forks
- 29
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Ähnliche Issues
-
FrameworkBundle SecurityBundle
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
symfony/symfony-docs#23277 ·
Maintainer antworten meist innerhalb von 3 Tagen
-
[Sync EN] hard link does not need special permissionsEvtl. vergeben @lacatoire hat das heute übernommen. Offensync-en
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 90/100
Maintainer antworten meist innerhalb von 1 Tag
-
sync-en
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 76/100
Maintainer antworten meist innerhalb von 4 Tagen
-
feature-request
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
omegaup/omegaup#10323 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 5 Tagen
-
bug mod:appointments
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
3pontos-tech/gil-benefits#303 ·