php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
PHP Datei Frage


 
Kalysto
04-02-2018, 20:51 
 
Hallo zusammen,

Ich habe eine Frage ich habe folgende Datei:
# Delete System Ordner
#-------------------------------------------------------------------------
# Angabe um Löschung der System Ordner zu erlauben
# "1" = Nein
# "2" = Ja
DeleteSys="2"

# Delete Backup Ordner
#-------------------------------------------------------------------------
# Angabe um Löschung der Backup Ordner zu erlauben
# "1" = Nein
# "2" = Ja
DeleteBackup="1"

# Nach der Sicherung wird...
#-------------------------------------------------------------------------
# Angabe wie mit den Verschlüsselten Ordnern nach Backup verfahren werden soll
# "1" = ...nichts verschlüsseln
# "2" = ...nur das Ziel verschlüsseln
# "3" = ...nur die Quelle verschlüsseln
# "4" = ...Quelle und Ziel ausgehäng
DECRYPT="1"

# Exportschlüssel
#-------------------------------------------------------------------------
KeyFile=""

ich würde nun gerne die Datei var_import einlesen und mit den jeweiligen "Bash" Variablen Arbeiten sprich mit:
DeleteSys
DeleteBackup
DECRYPT
KeyFile

gibt es hier eine Möglichkeit diese mit PHP anzusprechen ??
würde mich über Hilfe freuen.

danke vorab ;)

 
Kalysto
09-02-2018, 19:42 
 
keiner eine Idee ?????

 
fireweasel
27-03-2018, 13:05 
 
(Sorry, dass das ein paar Wochen gedauert hat.)
keiner eine Idee ?????
Hier ist eine Idee:

function varImport(
$filePath /// str() local path
) {
if (!is_resource($file = fopen($filePath, 'rb'))) {
return null; // could not open file
}
for ($vars = array(); !feof($file); ) {
if (
preg_match(
'/\A\s*([A-Za-z][A-Za-z0-9]*)="([^"]*)"/', // parses name="value" pairs only
fgets($file),
$h
)
) {
$vars[$h[1]] = $h[2];
}
}
return $vars;
}

// ein einfacher Test
$vars = varImport(__DIR__ . '/_test_var_import.txt');
var_dump($vars);

Kurze Funktionszusammenfassung:
* Lese die Datei Zeile für Zeile ein (fgets());
* ignoriere jede Zeile, die nicht das richtige name="value"-Muster enthält (!preg_match());
* für alle anderen Zeilen: füge einen Eintrag zum $vars-Array hinzu

Der Test mit deiner Beispieldatei sollte folgendes Array erzeugen:
array(4) {
["DeleteSys"] => string(1) "2"
["DeleteBackup"] => string(1) "1"
["DECRYPT"] => string(1) "1"
["KeyFile"] => string(0) ""
}

- -

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