2012-08-09 29 views
-1

我想將字符串中的空格替換爲換行符。preg_replace空間與樹枝斷行

以前

1 2 3 4

的preg_replace:

1 
2 
3 
4 

這是我的代碼:

$m_cart = preg_replace('/\s/', '\n', $session->get('cart')); 
return $this->render('FooSiteBundle:Site:bar.html.twig', array('cart' => $m_cart)); 

和T他是我與觀點枝杈

{{ cart }} 

結果:

\n1\n2\n3\n4 

,但我想有

1 
2 
3 
4 

回答

4

換行符轉義序列\n不是由單引號分隔串解釋(作爲一個點,/ [無] /轉義序列)

簡單的答案是隻改變'\n'"\n"

我請你read more about PHP's string delimiters和它們之間的區別

+0

它在我的源代碼中正常工作,但不能在我的html頁面中工作 – 2012-08-09 20:02:43

+0

如果你想要的是HTML中的不同行,你需要添加
而不是\ n – 2012-08-09 20:08:52

+0

@Alex它被Twig – JamesHalsall 2012-08-09 20:20:50

1

變化'\n'"\n"。即,添加雙引號。 PHP以不同的方式解析它們,並且使用雙引號可以使用特殊字符,如\n

+0

我出票的今天,但我會努力記住這個+1明天。好答案! – Matt 2012-08-09 19:57:23