Variable in mehrzeilige Variable einsetzen?

Grini

Grünschnabel
Hey Leute,
folgendes Problem..

PHP:
$ausgabe='

<item
		thumbnail="images/minigallery/$thumbnail.jpg"
		link="images/minigallery/$datei.jpg"
		linkType="image"
		>
		
		<url target="" ><![CDATA[]]></url>
		
		<thumbnailText><![CDATA[]]></thumbnailText>
		
		<title align="BL" spacing="0,0,0,150" width="" bgColor="ffffff" >
			<![CDATA[<font color="#000000">$beschreibung</font>]]>
		</title>

	</item>
	
	';

$ausgabe soll in eine TXT Datei geschrieben werden.. ist alles kein Problem funktioniert super, bloß werden die Variablen nicht durch deren Werte ersetzt.. Also $datei $thumbnail und $beschreibung stehen so in der TXT Datei und nicht ihre Werte (1.JPG, 1t.JPG, Test) ..
Wie kriege ich das hin das die Werte übernommen werden? =/

Gruß, Alex..
 
Wenn du Variablen (die ausgewertet werden sollen) in Strings setzen möchtest, musst du doppelte Anführungsstriche verwenden:
PHP:
$var = 'Dies wird interpretiert';

$ausgabe = 'Test1: $var';
/* ergibt Test1: $var */

$ausgabe = 'Test2: $var';
/* ergibt Test2: Dies wird interpretiert */
 
Funktioniert leider nicht.. Wenn ich die ' durch " ersetze bleibt die Datei leer die beschrieben werden soll..

Hier mal der ganze Code:
PHP:
<?php
$beschreibung=$_POST['beschreibung'];
$datei=$_POST['datei'];
$thumbnail=$_POST['thumbnail'];
$ausgabe="

<item
		thumbnail="images/minigallery/$thumbnail.jpg"
		link="images/minigallery/$datei.jpg"
		linkType="image"
		>
		
		<url target="" ><![CDATA[]]></url>
		
		<thumbnailText><![CDATA[]]></thumbnailText>
		
		<title align="BL" spacing="0,0,0,150" width="" bgColor="ffffff" >
			<![CDATA[<font color="#000000">$beschreibung</font>]]>
		</title>

	</item>
	
	";
$datei=fopen("namen.txt","a");
$output=fwrite($datei,$ausgabe);
fclose($datei);
?>
 
Mal ganz naiv gefragt: Müssten die Anführungzeichen in $ausgabe nicht mit dem Vorzeichen \ gekennzeichnet - maskiert - werden?

Code:
<?php

// $beschreibung=$_POST['beschreibung'];
// $datei=$_POST['datei'];
// $thumbnail=$_POST['thumbnail'];

$beschreibung="Test";
$datei="Datei";
$thumbnail="Thumb";


$ausgabe="

<item
        thumbnail=\"http://www.tutorials.de/images/minigallery/$thumbnail.jpg\"
        link=\"http://www.tutorials.de/images/minigallery/$datei.jpg\"
        linkType=\"image\">
        
        <url target=\"\" ><![CDATA[]]></url>
        
        <thumbnailText><![CDATA[]]></thumbnailText>
        
        <title align=\"BL\" spacing=\"0,0,0,150\" width=\"\" bgColor=\"ffffff\" >
            <![CDATA[<font color=\"#000000\">$beschreibung</font>]]>
        </title>

    </item>
    
    ";
$datei=fopen("namen.txt","a");
$output=fwrite($datei,$ausgabe);
fclose($datei);
?>

EDIT: Zu langsam gewesen beim antworten :(
 
Zuletzt bearbeitet:
Hallo Alex,
alternativ kannst du natürlich auch deine erste Idee leicht modifizieren und die Variablen wieder aus dem Text "rausnehmen":

PHP:
$ausgabe='
<item
        thumbnail="images/minigallery/'.$thumbnail.'.jpg"
        link="images/minigallery/'.$datei.'.jpg"
        linkType="image"
        >        
        <url target="" ><![CDATA[]]></url>        
        <thumbnailText><![CDATA[]]></thumbnailText>
        
        <title align="BL" spacing="0,0,0,150" width="" bgColor="ffffff" >
            <![CDATA[<font color="#000000">'.$beschreibung.'</font>]]>
        </title>
    </item>
    ';

Grüße,
Sebastian
 
Zurück