PHP - Znaki specjalne w string

0

Witam,

Mam głupi problem z którym nie mogę sobie poradzić. Zapisuję to zmiennej w php string:

function xml_generator($rootElementName) {

    $xmlData =  "<". $rootElementName."/>"; 
    $xmlData .=  "</" . $rootElementName . ">" ; 
 
    return $xmlData; 
}

Jest jednak problem, co wyrażenie nie jest zapisywane (zmienna $xmlData jest pusta). Wiem, że problem tkwi w znaku większości. Jeśli zamienię "<" na "< " (dodam spację po znaku), to wszystko działa. To samo z drugą linijką ("</"), spację muszę dodać tak samo po znaku a przed** /("< /**").

Jeśli ktoś wie o co chodzi, to będę wdzięczny za pomoc.

1

może jak wypisujesz przez "echo" to przeglądarka interpretuje ten tag jako html i nie widzisz go, ale w źródle strony na pewno się pojawi. Chyba że twoim zamiarem jest pokazanie kodu wtedy zainteresuj się np. http://www.php.net/manual/pl/function.htmlspecialchars.php

0

Ja u siebie robię tak czyli nie łączę kropką tylko normalnie (bo przecież " (cudzysłów) no to jest aby się z tym nie bawić a jak miałbym się bawić to ' (apostrof)) i mi działa normalnie:

$xml .= "<$key>";
0

@szopenfx dzięki piękne za radę, funkcja htmlspecialchars pięknie działa.

@kAzek w przypadku, który pokazałeś u mnie wszystko śmigało normalnie. Chodzi o zlepek znaków.

1 użytkowników online, w tym zalogowanych: 0, gości: 1