xml

xml trasforma XML in un albero indirizzabile: percorsi puntati per gli elementi, @name per gli attributi e #text per il testo dell’elemento.

DatiVersione 1.1.6Stabile
lil-terminal

Panoramica

xml applica lo stesso flusso mirato ai file XML: percorsi di elementi e attributi, ricerca, modifica atomica di un nodo, validazione del documento e visualizzazione dell’XML normalizzato completo.

Elementi, attributi e testo sono nodi distinti

config.@env e config.application.name selezionano nodi XML differenti. La sintassi compatta serve per XML semplici senza sostituire XPath o un editor XML completo; è richiesta PHP DOM.

Sintassi

lil-terminal
xml <file> [key|options] · xml dump <file>

Riferimento

xml <file>

mostrare i dati XML

xml <file> <key>

mostrare un elemento, attributo (@name) o #text esatto tramite percorso

xml dump <file>

mostrare il testo sorgente XML normalizzato

-f <text|mask> [-k|-v]

cercare corrispondenze in chiavi o valori; * e ? attivano una maschera

-w <key> : <value>

scrivere un valore e normalizzare il file XML

-w <key> < <file>

scrivere un valore letto da un altro file

-d <key>

eliminare un valore tramite percorso puntato

-c

convalidare il file XML

Come si usa

Inizia con xml config/app.xml per elencare i percorsi e aggiungi un percorso puntato per un valore. -f cerca chiavi e valori, -k solo chiavi e -v solo valori. -c convalida e dump mostra XML ricostruito. In Base, -w <key> : <value> modifica, < <file> legge un altro file e -d <key> elimina un nodo. Fai prima una copia.

Limiti e sicurezza

La riscrittura può perdere commenti, namespace, contenuti misti, spaziatura e ordine originali. DTD ed entità esterne vengono rifiutati. Serve PHP DOM; Minimum mostra solo il file completo. Per mantenere il testo esatto usa edit o code.

Anteprima interattiva del sandbox

Esegui gli esempi preparati direttamente nella pagina. I risultati sono predefiniti e mostrati nel browser; sul server non viene eseguito alcun comando del terminale.

Aprire il file e riutilizzarlo con $

Installa e gestisci

Installa la versione compatibile corrente. Scegli Base per tutte le funzioni o Minimum per il pacchetto ridotto; usa upgrade per aggiornare un modulo già installato.

Base e Minimum sono due pacchetti della stessa release corrente del modulo.

Pacchetto Base

Installa il pacchetto completo con riferimento locale e tutte le modalità pubblicate.

install xml
Pacchetto Minimum

Installa il pacchetto ridotto. Il riferimento locale è omesso; help <cmd> -i apre il riferimento server corrente.

install xml -m
Versione pubblica esatta

Installa esattamente questa versione pubblicata.

install xml -v 1.1.6
Controlla o aggiorna

upgrade controlla la compatibilità e sostituisce il blocco solo quando serve.

upgrade xml
Rimuovi modulo

Rimuove il blocco estensione senza toccare core e altri moduli.

install xml -u

Esempi

Gli esempi sono copiabili ma il sito non li esegue. Controlla percorsi, permessi e opzioni distruttive.

Aprire il file e riutilizzarlo con $
xml config/app.xml
config.@env               production
config.application.name   lil-shop
config.application.debug  true
config.database.host      localhost
config.database.port      3306
Mostrare un elemento, attributo (@name) o #text esatto tramite percorso
xml config/app.xml config.application.name
lil-shop
Mostrare un elemento, attributo (@name) o #text esatto tramite percorso
xml config/app.xml config.@env
production
Mostrare un elemento, attributo (@name) o #text esatto tramite percorso
xml config/app.xml config.database.port
3306
Cercare corrispondenze in chiavi o valori; * e ? attivano una maschera
xml config/app.xml -f "config.database.*" -k
config.database.host  localhost
config.database.port  3306
Cercare corrispondenze in chiavi o valori; * e ? attivano una maschera
xml config/app.xml -f "localhost" -v
config.database.host  localhost
Cercare corrispondenze in chiavi o valori; * e ? attivano una maschera
xml config/app.xml -f "debug"
config.application.debug  true
Scrivere un valore e normalizzare il file XML
xml config/app.xml -w config.database.port : 3307
config.database.port  3307
Scrivere un valore letto da un altro file
xml config/app.xml -w config.application.name < config/from-value.txt
config.application.name  new-shop
Eliminare un valore tramite percorso puntato
xml config/app.xml -d config.application.debug
config.@env              production
config.application.name  lil-shop
config.database.host     localhost
config.database.port     3306
Gestire un file mancante
xml config/app.xml -c
Valid XML
Mostrare il testo sorgente XML normalizzato
xml dump config/app.xml
<?xml version="1.0" encoding="UTF-8"?>
<config env="production">
  <application>
    <name>lil-shop</name>
    <debug>true</debug>
  </application>
  <database>
    <host>localhost</host>
    <port>3306</port>
  </database>
</config>
Mostrare un elemento, attributo (@name) o #text esatto tramite percorso
xml config/app.xml unknown.key
Path not found
Convalidare il file XML
xml config/invalid.xml -c
Invalid XML
Mostrare i dati XML
xml config/missing.xml
File not found
Scrivere un valore e normalizzare il file XML
xml config/app.xml -w config.database.port
Value required after : or <
Eliminare un valore tramite percorso puntato
xml config/app.xml -d config
XML data must have exactly one root element
Scrivere un valore e normalizzare il file XML
xml config/app.xml -w config.missing.child : 5
Parent path is not a collection

File usato in questo esempio: sandbox/config/app.xml

L’esempio usa un file o una directory dell’area di documentazione protetta /sandbox/.

<?xml version="1.0" encoding="UTF-8"?>
<config env="production">
  <application><name>lil-shop</name><debug>true</debug></application>
  <database><host>localhost</host><port>3306</port></database>
</config>

Documentazione correlata

Versione pubblica attuale

v1.1.62026-11-01

Rifinitura di produzione

Versione stabile attuale di xml. xml trasforma XML in un albero indirizzabile: percorsi puntati per gli elementi, @name per gli attributi e #text per il testo dell’elemento.