LanguageObject.php 987 Bytes
Newer Older
1
2
3
4
5
<?php

namespace App\Models;

/*
6
*	Hilfsklasse, welche zu je einer Sprache Angaben zum Pfad der jeweiligen Datei, sowie die vorhandenen Übersetzungen enthält
7
*/
8
class LanguageObject 
9
10
11
{
	public $language = "";

12
    # bspw. /home/MetaGer/resources/lang/de
13
14
	public $filePath = "";

15
	# 2D-Array der Form [$filename][$key]
16
	public $stringMap = [];
17
18
19
20
21
22
23

	public function __construct($lang, $path) 
    {
    	$this->language = $lang;
        $this->filePath = $path;
    }

24
    #Speichert Daten in $stringMap, entdimensionalisiert ggbf. $value
25
26
27
28
29
30
31
32
33
    public function saveData($filename, $key, $value)
    {	
    	if(is_array($value)) {
    		$this->deMultiDimensionalize($filename, $key, $value);
    	} else {
    		$this->stringMap[$filename][$key] = $value;
 	   }
	}

Aria Givi's avatar
Aria Givi committed
34
    #Helferfunktion für saveData
35
36
37
38
39
40
41
42
43
    private function deMultiDimensionalize($filename, $key, $value)
    {
    	foreach($value as $key2 => $value2) {
    		$this->saveData($filename, $key."#".$key2, $value2);
    	}
    }


}