---
title: "& Ausgabe vermeiden / JSON / fluid"
url: "https://www.typo3.net/d/102029-ausgabe-vermeiden-json-fluid"
source: "typo3.net"
tags: ["Extensions","Extbase","Fluid","Frage","ViewHelper"]
created: "2010-10-28"
last_reply: "2010-11-02"
replies: 1
solved: false
page: 1
pages: 1
lang: "de"
---

# & Ausgabe vermeiden / JSON / fluid

Extensions › Extbase · 1 Antwort · gestartet 2010-10-28

## Eröffnungsbeitrag

**hanz** · 2010-10-28 · [Beitrag #1](https://www.typo3.net/d/102029-ausgabe-vermeiden-json-fluid/1)

Hallo,

ich lasse mir per fluid einen JSON-String zusammenbauen. Das klappt soweit auch gut.

Ich nutze die Daten dann für eine Suggest-Suche in einem Input-Feld.

Alles klappt soweit, nur leider gibt er mir "&" als "& amp ;" aus, weil fluid es mir vorher so in das JSON-Objekt geschmissen hat.
Und darauf hin steht es dann nach Auswahl auch so im Input-Feld, was natürlich nicht gewollt ist.

Gibt es hier eine elegante Lösung, dass zu verhindern?

Ein eigener ViewHelper scheint mir hier nichts zu bringen, da der String hinterher noch durch den fluid-Parser geht und dort "&" zu "& amp ;" wird - wenn ich das richtig nachvollzogen habe.

Bin für Ansätze oder Feedback dankbar.

Danke, Hannes

## Antworten

### [#2](https://www.typo3.net/d/102029-ausgabe-vermeiden-json-fluid/2) · hanz · 2010-11-02

Gut, ich habe mir mit einem ViewHelper geholfen, allerdings fühlt sich das unheimlich schäbig an:

```php
	public function render() {
		$content = $this->renderChildren();
		$converted = str_replace('&amp;', '&', $content); 
		
		return $converted;
	}
```

Des weiteren brauchte ich auch einen Helper der mir Strings so umbaut, dass ich diese z.B. als CSS-Id's nutzen kann:

```php
public function render() {
		$locale = 'de_DE';
	    $oldLocale = setlocale(LC_CTYPE,0);
	    setlocale(LC_CTYPE,$locale);
	    setlocale(LC_CTYPE,$oldLocale);
	
	    $converted = iconv("utf-8","ascii//TRANSLIT",$this->renderChildren());
	    
	    $converted = preg_replace('/&.+?;/', '_' , $converted);
	    
	    $converted = str_replace(' ', '', $converted);
	    $replace = array('&', ';', ',', '.', '?', '-');
		$converted = strtolower(str_replace($replace, '_', $converted)); 
		
		return $converted;
	}
```

Fühlt sich auch nicht klasse an, aber hilft jetzt erstmal.

---

Quelle: „& Ausgabe vermeiden / JSON / fluid“, typo3.net, https://www.typo3.net/d/102029-ausgabe-vermeiden-json-fluid
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
