---
title: "Kleiner Typoscript Parser"
url: "https://www.typo3.net/d/78790-kleiner-typoscript-parser"
source: "typo3.net"
tags: ["TYPO3","TypoScript","Frage"]
created: "2008-06-24"
last_reply: "2008-06-24"
replies: 1
solved: false
page: 1
pages: 1
lang: "de"
---

# Kleiner Typoscript Parser

TYPO3 › TypoScript · 1 Antwort · gestartet 2008-06-24

## Eröffnungsbeitrag

**lucky23** · 2008-06-24 · [Beitrag #1](https://www.typo3.net/d/78790-kleiner-typoscript-parser/1)

Hi,

habe grad ein Projekt mit Joomla1.5 am laufen. Leider sind die möglichkeiten dort, bilder zu verändern etc... sehr sehr beschränkt.

Deshalb schreibe ich gerade an einem Plugin, das den Content nach Bildern durchsuchen tut. Die atttribute rausparsen und mit einem Marker überschreiben.
Danach werden die Bilder ähnlich dem cObj->IMAGE neu generiert und den Marker damit überschrieben.
Klappt alles ganz gut, allerdings hab ich es jetzt noch nicht auf die reihe bekommen, wie mit einfachen typoscript ein confArray füllen kann. Also ohne Conditions, kopieren(<), löschen(>) etc...

muss wirklich nur ganz einfacher ts sein
z.b.
imgConf.class.image1.maxH=200
imgConf.class.image1.src=images/foo.jpg
imgConf.class.image1.onMouseOver.src=images/foo2.jpg
...

vermiss TS sehr ;-)

## Antworten

### [#2](https://www.typo3.net/d/78790-kleiner-typoscript-parser/2) · lucky23 · 2008-06-24

hab jetzt mal ein skript geschrieben. Scheint zu funktionieren, muss ich aber morgen erst in der praxis mal probieren.
Wäre klasse wenn ich noch die zusammenfassungen mit { und } einbauen könnte.

```php
<?php

function parseConfigString($text,$conf=array())
{	
	if(!empty($text))
	{
		$rows = explode("\n",$text);
		foreach($rows as $row)
		{
			// Skip on empty row
			if(!trim($row)) continue;
			
			$tmpconf = array();	
			$parts = explode("=",$row);
			$value = trim($parts[1]);
			$vars = explode(".",trim($parts[0]));
			$k=0;
			for($i=count($vars)-1;$i>=0;$i--)
			{
				$var = $vars[$i];		
				if($k==0)  
				{
					$tmpconf = $value;			
					$tmpconf = array($var=>$tmpconf);	
				}
				else $tmpconf = array($var."."=>$tmpconf);		

				$k++;
			}
	
			$conf = array_merge_recursive($conf,$tmpconf);
		}
	}
	return $conf;
}


$text = "
imgConf.class.image1.maxH=200
imgConf.class.image1.src=images/foo.jpg
imgConf.class.image1.onMouseOver.src=images/foo2.jpg
";

$conf = parseConfigString($text);
print_r($conf);
?>
```

```html
Ergebnis:
Array
(
    [imgConf.] => Array
        (
            [class.] => Array
                (
                    [image1.] => Array
                        (
                            [maxH] => 200
                            [src] => images/foo.jpg
                            [onMouseOver.] => Array
                                (
                                    [src] => images/foo2.jpg
                                )

                        )

                )

        )

)
```

---

Quelle: „Kleiner Typoscript Parser“, typo3.net, https://www.typo3.net/d/78790-kleiner-typoscript-parser
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
