Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.php > #4352

Re: PHP Array zusammensetzen anhand von Strings (keys)

From Ralph Stahl <post@rstahl.de>
Newsgroups de.comp.lang.php
Subject Re: PHP Array zusammensetzen anhand von Strings (keys)
Date 2018-04-10 14:21 +0200
Message-ID <fj3oi2FqtikU1@mid.individual.net> (permalink)
References (1 earlier) <fj3eseFonipU1@mid.individual.net> <pai145$inp$1@news.albasani.net> <fj3i7dFpfmkU1@mid.individual.net> <pai4j0$bcj$1@news.albasani.net> <pai5sv$95g$1@news.albasani.net>

Show all headers | View raw


Jan Novak schrieb:
> Am 10.04.18 um 12:45 schrieb Klaus Ketelaer:
>> 
>> Ich vermute mal, er sucht etwas in der Art von
>> 
>> function meineFunktion($meinKey) { $meineKeys =
>> explode('.',$meinKey);
>> 
>> return $Test[$meineKeys[0]],[$meineKeys[1]][$meineKeys[2]]; }
> 
> 
> Ja so in etwa. Sorry, aus eigener Sicht ist immer alles "ganz klar"
> :-)
> 
> Dein Code ist statisch. Ich kenne aber die Anzahl der Keys nicht. In
> dem obigen Beispiel sind es 3, es könnten aber auch mehr oder
> weniger sein. Deshalb meine Frage nach dem "zusammensetzen" anhand
> der Keys als String.
> 
> Hier ein Beispiel eines arrays:
> 
> $test = [
>    'MASK' => [
>      'login' => [
>        'welcome' => 'hallo',
>        'name' => 'ein name',
>      ],
>      'test' => [
>        'bla' => [
> 	'blub' => "was auch immer",
>      ],
>    ],
> ];

> ein Aufruf wäre also zum Beispiel
> 
> meineFunktion("MASK.login.welcome")
> 
> ein anderer eben
> 
> meineFunktion("MASK.test.bla.blub")
> 
> Letztendlich ist meine Frage: Wie bekomme ich aus z.B. dem String
> "MASK.test.bla.blub" den Wert "was auch immer" zurück über die                   
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^

Was ja nun wieder kein Key, sondern ein Value (Wert) in deinem Beispiel 
ist. Einige dich bitte mal auf die Begriffe ;-). Jetzt ist die 
Fragestellung zwar klarer, aber andersrum als zu Anfang.

Ich werde das Gefühl nicht los, dass dein Lösungsansatz schon in puncto 
Datenstruktur irgendwie unpraktikabel ist, um es mal vorsichtig 
auszudrücken. Dreh doch mal spaßeshalber deine Idee rum und drücke deine 
beiden Beispiele oben (beide Komponenten von $test = ...) in 
gleichartigen Aufrufen von meineFunktion() aus. Du wirst ein Problem 
finden, stimmts? Die Teilarrays MASK[] und test[] haben unterschiedliche 
Struktur und könnten noch viel komplizierter sein - sowas lässt sich 
vielleicht gar nicht über einen einfachen String "MASK.test.bla.blub" 
abbilden.

Wozu auch? Warum übergibst du nicht einfach gleich den gesuchten 
Array-Key und gibst, sofern vorhanden, den Wert zurück? Dann könntest du 
auch gleich die ganze Funktion weglassen :-) und direkt auf den Wert 
zugreifen, sofern er existiert...

Ralph

Back to de.comp.lang.php | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

PHP Array zusammensetzen anhand von Strings (keys) Jan Novak <repcom@gmail.com> - 2018-04-10 11:06 +0200
  Re: PHP Array zusammensetzen anhand von Strings (keys) Ralph Stahl <post@rstahl.de> - 2018-04-10 11:36 +0200
    Re: PHP Array zusammensetzen anhand von Strings (keys) Jan Novak <repcom@gmail.com> - 2018-04-10 11:45 +0200
      Re: PHP Array zusammensetzen anhand von Strings (keys) Ralph Stahl <post@rstahl.de> - 2018-04-10 12:33 +0200
        Re: PHP Array zusammensetzen anhand von Strings (keys) Klaus Ketelaer <noreply@spambouncer.de> - 2018-04-10 12:45 +0200
          Re: PHP Array zusammensetzen anhand von Strings (keys) Jan Novak <repcom@gmail.com> - 2018-04-10 13:07 +0200
            Re: PHP Array zusammensetzen anhand von Strings (keys) Ralph Stahl <post@rstahl.de> - 2018-04-10 14:21 +0200
  Re: PHP Array zusammensetzen anhand von Strings (keys) Niels Braczek <nbraczek@bsds.de> - 2018-04-10 14:04 +0200
    Re: PHP Array zusammensetzen anhand von Strings (keys) Jan Novak <repcom@gmail.com> - 2018-04-10 15:01 +0200
  Re: PHP Array zusammensetzen anhand von Strings (keys) Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2018-04-11 02:20 +0200
    Re: PHP Array zusammensetzen anhand von Strings (keys) Niels Braczek <nbraczek@bsds.de> - 2018-04-11 13:37 +0200
      Re: PHP Array zusammensetzen anhand von Strings (keys) Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2018-04-12 04:18 +0200

csiph-web