Abo
  1. Foren
  2. Kommentare
  3. Software-Entwicklung
  4. Alle Kommentare zum Artikel
  5. › Skriptsprachen: PHP 5.5…

Strings und Arrays dereferenzieren?

Anzeige
  1. Thema

Neues Thema Ansicht wechseln


  1. Strings und Arrays dereferenzieren?

    Autor: Schattenwerk 19.11.12 - 11:38

    Persönlich freue ich mich sehr über die Features. Vor allem finally fehlt mir unglaublich häufig.

    Jedoch stelle ich mir die Umstellung mit der Dereferenzierung schon etwas anstrengend vor. Denke, dass dies ein Punkt sein wird, wo viele Leute aufschreien werden bzgl. Kompatibilität und Co.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  2. Re: Strings und Arrays dereferenzieren?

    Autor: michiw 19.11.12 - 12:26

    Also spontan Fällt mir kein Fall ein in dem dieses Sprachfeature[1] irgendwelche Probleme mit der Abwärtskompatibilität verursachen könnte.


    [1] https://wiki.php.net/rfc/constdereference

    Benutzer wird von Ihnen ignoriert. Anzeigen

  3. Re: Strings und Arrays dereferenzieren?

    Autor: Vanger 19.11.12 - 13:09

    Ich bin mir gerade nicht ganz sicher in welchen Situationen man dieses Feature praktisch sinnvoll anwenden kann... Warum sollte ich noch bei Erstellung eines Arrays auf ein einzelnes Element dieses Arrays zugreifen wollen? Wozu definiere ich dann überhaupt ein Array und verwende nicht einfach direkt das gesuchte Element?

    Benutzer wird von Ihnen ignoriert. Anzeigen

  4. Re: Strings und Arrays dereferenzieren?

    Autor: Polecat42 19.11.12 - 13:12

    Vanger schrieb:
    --------------------------------------------------------------------------------
    > Ich bin mir gerade nicht ganz sicher in welchen Situationen man dieses
    > Feature praktisch sinnvoll anwenden kann... Warum sollte ich noch bei
    > Erstellung eines Arrays auf ein einzelnes Element dieses Arrays zugreifen
    > wollen? Wozu definiere ich dann überhaupt ein Array und verwende nicht
    > einfach direkt das gesuchte Element?

    spielst Du auf das Beispiel im Link an? Das ist, wie gesagt, nur ein Beispiel, "in echt" würde man Funktionsaufrufe verwenden:

    <?php
    $value = $this->invokeSomethingThatReturnsAnArray()['thing'];
    ?>
    zum Beispiel. Ich vermisse das sehr.

    Ein anderes Beispiel wäre, wenn man Arrays als Hilfe verwendet, zB

    <?php
    $string = 'a,csv,list';
    $firstItem = explode(',', $string)[0];
    ?>

    (ginge freilich auch besser mit strtok bspw., "but you get the idea" :)



    1 mal bearbeitet, zuletzt am 19.11.12 13:14 durch Polecat42.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  5. Re: Strings und Arrays dereferenzieren?

    Autor: Polecat42 19.11.12 - 13:19

    ok, ich Idiot... die wollen das tatsächlich für Konstruktoren verwenden... ich wundere mich gerade, weil das von mir beschriebene ja schon in 5.4 geht ;)

    OK, Kommando zurück: ich verstehe vollständig Deinen Einwand und frage mich, wozu das gut sein soll...

    Benutzer wird von Ihnen ignoriert. Anzeigen

  6. Re: Strings und Arrays dereferenzieren?

    Autor: Vanger 19.11.12 - 13:32

    Der einzige Grund warum die Beispiele im Link nicht funktionieren ist, dass array() keine Funktion sondern ein Sprachkonstrukt ist. Gut, positiv daran wäre zumindest mal, dass array() sich etwas mehr wie eine Funktion verhalten würde. Da stelle ich mir aber die Frage warum man es nicht einfach direkt als Funktion implementiert. Sprachkonstrukte sind in den meisten Fällen verzichtbar und nur eine Fehlerquelle. Das hier funktioniert nämlich beispielsweise nicht:

    <?php
    $a = 'array';
    $a('foo', 'bar');
    ?>

    Ergebnis:
    > Call to undefined function array()

    Das folgende funktioniert hingegen:

    <?php
    function foo($a, $b) { echo $a.' '.$b.'!'; }
    $f = 'foo';
    $f('Hello', 'World');
    ?>

    Ergebnis:
    > Hello World!

    Benutzer wird von Ihnen ignoriert. Anzeigen

  7. Re: Strings und Arrays dereferenzieren?

    Autor: crash 19.11.12 - 14:18

    Wenn du für CSV-String/-Dateien noch mal explode()/implode() benutzt, komm ich mitm Knüppel ;)

    http://php.net/str_getcsv & http://php.net/fgetcsv

    Benutzer wird von Ihnen ignoriert. Anzeigen

  8. Re: Strings und Arrays dereferenzieren?

    Autor: Polecat42 19.11.12 - 14:46

    war doch nur ein Beispiel ;-) Ich sage: wenn nochmal jemand überhaupt CSV-Dateien/-Strings benutzt, komm *ich* middm Knüppel! :)

    Benutzer wird von Ihnen ignoriert. Anzeigen

  9. Re: Strings und Arrays dereferenzieren?

    Autor: crash 19.11.12 - 14:53

    Ach so als Export von Datenbanken ja sehr geeignet. Knüppel lieber die Leute die für ihre Schnittstellen CSV nehmen statt JSON/XML etc. ;)

    $firstItem = explode(',', $string)[0]; geht im übrigen schon immer:

    list($firstItem, ) = explode(',', $string);

    Neu ist halt nur, dass das in foreach() funktioniert.

    Benutzer wird von Ihnen ignoriert. Anzeigen

Neues Thema Ansicht wechseln


Entschuldigung, nur registrierte Benutzer dürfen in diesem Forum schreiben. Klicken Sie hier um sich einzuloggen


Anzeige
  1. Funktionsentwicklung / Algorithmenentwicklung für Parkassistenzsysteme
    Robert Bosch GmbH, Leonberg
  2. Linux-Administrator (m/w) mit Schwerpunkt Automation
    BG-Phoenics GmbH, München
  3. SAP Anwendungsentwickler (m/w) HCM
    Dürr IT Service GmbH, Bietigheim-Bissingen
  4. Department Manager Applikationsentwicklung Emission (m/w)
    AVL List GmbH, Graz (Österreich)

Detailsuche



Blu-ray-Angebote
  1. Filme für 49 EUR einkaufen & 10 EUR Sofortrabatt sichern
    (u. a. Django Unchained, The Equalizer, Fury, Who am I)
  2. VORBESTELLBAR: Die Tribute von Panem - Complete Collection [Blu-ray] [Limited Edition]
    89,99€ (Vorbesteller-Preisgarantie)
  3. Blu-rays je 7,97 EUR
    (u. a. Homefront, 96 Hours Taken 2, Sieben, Das Bourne Ultimatum, Virtuality - Killer im System)

Weitere Angebote



Haben wir etwas übersehen?

E-Mail an news@golem.de


Astronomie: Die lange Suche nach Planet X
Astronomie
Die lange Suche nach Planet X
  1. Planet X Es könnte den neunten Planeten geben
  2. Weltall Woher stammt das Wow-Signal?
  3. Raumsonden und Teleskope Sieht der Weltraum wirklich so aus wie auf Fotos?

Arduino 101 angetestet: Endlich ein genuines Bastelboard von Intel
Arduino 101 angetestet
Endlich ein genuines Bastelboard von Intel
  1. Kosmobits Neues Arduino-Set gewinnt Preis auf der Spielwarenmesse
  2. Bastelsets und Spielzeug Spiel- und Lern-Ideen für Weihnachten
  3. MKR1000 Kräftiger Arduino mit integriertem WLAN

Rise of the Tomb Raider im Technik-Test: Lara sieht einfach klasse aus
Rise of the Tomb Raider im Technik-Test
Lara sieht einfach klasse aus
  1. Rise of the Tomb Raider Lara im Überlebenskampf
  2. Rise of the Tomb Raider PC-Lara erscheint bereits im Januar 2016
  3. Rise of the Tomb Raider im Test Lara und das ewige Leben im ewigem Eis

  1. Daybreak Game Company: Zombiespiel H1Z1 wird aufgeteilt
    Daybreak Game Company
    Zombiespiel H1Z1 wird aufgeteilt

    Noch gibt es nur ein H1Z1, ab Mitte Februar sind es zwei: Das Entwicklerstudio Daybreak Game Company will dann ein Überlebens- und ein Actionspiel anbieten. Die Community hat es offenbar so gewollt.

  2. Twitter: Neue Sortierung der Timeline kommt
    Twitter
    Neue Sortierung der Timeline kommt

    Twitter folgt bei der Sortierung der Timeline wohl dem großen Konkurrenten Facebook: Bereits in den kommenden Tagen soll die Timeline nicht mehr grundsätzlich chronologisch sortiert werden - sondern zumindest auf Wunsch auch so, wie Algorithmen es richtig finden.

  3. Error 53: Unautorisierte Ersatzteile sperren iPhone
    Error 53
    Unautorisierte Ersatzteile sperren iPhone

    Eine ältere Fehlermeldung von Apple sorgt für neue Diskussionen: Ab iOS 9 sorgen unautorisierte Komponenten - etwa für den Touch-ID-Fingerabdrucksensor - in einem iPhone für die Fehlermeldung "Error 53". Der Hersteller verteidigt dieses Vorgehen.


  1. 14:45

  2. 13:25

  3. 12:43

  4. 11:52

  5. 11:28

  6. 09:01

  7. 21:49

  8. 16:04