2012-09-11 9 views
5

Pracuję z witryną opartą na niestandardowym systemie szablonów. Załóżmy, że w szablonie można użyć tagu [custom_text] który wyświetli cały blok html jak ta, określona przez edytora tekstu sformatowanego CMS za:Blok tekstu z oboma typami cudzysłowów jako ciągiem

<b>Lorem ipsum dolor</b> sit amet, "consectetur adipisicing elit"<br /><br /> 
<b>sed doeiusmod</b> tempor incididunt ut's labore et dolore magna's aliqua. 

Należy pamiętać, że zawiera oba rodzaje cudzysłowów w tym. Nie jestem w stanie przetworzyć niczego, co wychodzi z systemu szablonowego innego niż faktyczne wysyłanie go na stronę, ponieważ CMS z szablonem jest zakodowany.

Teraz faktycznie muszę manipulować tym blokiem, na przykład, aby usunąć wszystkie linie podziału z kodu. Mogę użyć php na stronie, ale nie mogę zdefiniować łańcucha, który zawierałby ten blok kodu. Jeśli zrobię to w dowolny sposób:

$string = "[custom_text]"; 
$string = '[custom_text]'; 

cytaty z bloku będą wchodzić w drogę, kończąc strunę przedwcześnie. Czy istnieje jakiś oczywisty sposób radzenia sobie z tym problemem?

+1

'addslashes()' nie pomaga? – hjpotter92

+0

Zobacz http://stackoverflow.com/questions/5611468/is-there-a-php-function-that-only-adds-slashes-to-double-quotes-not-single-quote –

Odpowiedz

3

Nie wiem dlaczego nie mam Myślałem o tym wcześniej, ale mogę po prostu użyć składni heredoc.

$string = <<<EOT 
[custom_text] 
EOT; 

rozwiąże sprawę.

+0

Dobra odpowiedź na jego działanie –

0

próbować ten jeden

<?php 
$string = "This string has 'single quotes'"; 
echo addcslashes($string, '"\\'); 
?> 

wyjście będzie jak poniżej

This string has 'single quotes' 

tę odpowiedź z tego linku

Click Here

+0

To działałoby, jednak blok tekstu, który muszę umieścić w łańcuchu, ma już OBUWIE rodzaje cytatów i nie jestem w stanie go wstępnie przetworzyć w żaden sposób przed wyprowadzeniem go. Gdybym miał użyć apostrofów aby zdefiniować ciąg, to kończy się tak: $ string = 'Lorem ipsum dolor sit amet "consectetur adipisicing elit"

sed doeiusmod tempor incididunt UT Labore et dolore aliqua magny. '; Jak widać, apostrof w bloku tekstu skutecznie zamyka pojedynczy cytat definicji łańcucha. – prezes

+0

Czy mogę wiedzieć, skąd wziął łańcuch –