php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 22-12-2009, 16:24
kj187
 Registrierter Benutzer
Links : Onlinestatus : kj187 ist offline
Registriert seit: Mar 2003
Beiträge: 24
kj187 ist zur Zeit noch ein unbeschriebenes Blatt
kj187 eine Nachricht über ICQ schicken kj187 eine Nachricht über AIM schicken
Standard YAML: Werte überschreiben

Hallo zusammen,
ich hoffe das ich den richtigen Bereich getroffen habe, sofern nein, bitte verschieben :-)

Es geht um das Thema YAML
Nein, nicht das CSS Framework, sondern die Auszeichnungssprache zur Datenserialisierung. YAML Aint Markup Language

Und zwar benutzte ich diese zusammen mit dem PHP parser "Spyc".
Ich habe folgende Beispiel YAML Datei

Code:
development:
  key1: value1
  key2: value2
  key3:
    subKey1: subValue1
    subKey2: subValue2
    subKey3:
      subSubKey1: subSubValue1
      subSubKey2: subSubValue2
    subKey4: subValue4
  key4: value4
Jetzt möchte ich einen weiteren Kontext hinzufügen nämlich die Produktion. Hier müssen alle Daten die es auch im development gibt ebenfalls zur verfügung stehen. Hier gibt es 2 Möglichkeiten, setzt voraus das bei dem obigen ein Anchor gesetzt wird

Code:
development: &development
1)
Code:
production:
  <<:*development
hier werden die arrays zusammengeführt

2)
Code:
production: *development
hier wird ein alias gesetzt

Beides funktioniert super!

Jetzt möchte ich aber bestimmte Werte im production ändern. zB subSubKey1
Also gehe ich hin und schreibe folgendes

Code:
production:
  <<:*development
  key3:
    subKey3:
      subSubKey1: overwrite
Überschrieben wird, aber alles was vorher unterhalb von subKey3 war ist weg ausser das was ich gerade überschrieben habe!

Ich müsste jetzt quasie key3 und subKey3 auch einen Anchor setzten und diesen über ein Alias ansprechen. Sprich:


Code:
development: &development
  key1: value1
  key2: value2
  key3: &key3
    subKey1: subValue1
    subKey2: subValue2
    subKey3: &subKey3
      subSubKey1: subSubValue1
      subSubKey2: subSubValue2
    subKey4: subValue4
  key4: value4
---
production:
  <<:*development
  key3: *key3
    subKey3: *subKey3
      subSubKey1: overwrite

Das würde funktionieren, aber ich habe ein relativ grosses YAML file mit mehreren Konexten.. Gibts hier keine möglichkeit das ich ein Kontext komplett kopiere und trotzdem an gewissen stellen überschreiben kann ?


Über jeden Tipp ect pp würde ich mich sehr freuen !!!!

Cheers
Julian

Geändert von kj187 (22-12-2009 um 16:30 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 22-12-2009, 17:07
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Zitat:
Zitat von kj187 Beitrag anzeigen
Gibts hier keine möglichkeit das ich ein Kontext komplett kopiere und trotzdem an gewissen stellen überschreiben kann ?
Genau das machst du bereits. Du kopierst den Dev-Kontext und dann überschreibst du eine gewisse Stelle, nämlich key3. Works as designed.
Du bräuchtest eine Pfad-Notation, um key3:subKey3:subSubKey1 direkt ansprechen zu können. Afaik gibt es solch eine Notation in YAML nicht.

Du kannst Spyc erweitern. Oder du hältst den Baum flach, etwa so:
Code:
development:
  key1: value1
  key2: value2
  key3_subKey1: subValue1
  key3_subKey2: subValue2
  key3_subKey3_subSubKey1: subSubValue1
  key3_subKey3_subSubKey2: subSubValue2
  key3_subKey4: subValue4
  key4: value4
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Eine Spalte mit Werte aus einer anderen db überschreiben startman SQL / Datenbanken 2 10-01-2008 11:07
datei mit ftp überschreiben sanchez PHP Developer Forum 5 02-10-2006 15:30
Session Werte überschreiben raldolfo PHP Developer Forum 1 17-02-2005 13:43
Werte überschreiben Normi SQL / Datenbanken 1 21-09-2003 22:22
Werte aus der Tabelle überschreiben oder ersetzen??? TomFresh SQL / Datenbanken 9 15-05-2003 00:21

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 01:04 Uhr.