2016-01-27 194 views
-2

因此,我想從結果中刪除逗號。 我想這樣做的原因是因爲後來在導出到CSV的過程中,逗號使我的桌子變得瘋狂。從json_encode中刪除逗號

這裏是我的HTML

<input type="checkbox" name="piden[]" value="lunes">Lunes<br> 
<input type="checkbox" name="piden[]" value="martes">Martes<br> 
<input type="checkbox" name="piden[]" value="miercoles">Miércoles<br> 
<input type="checkbox" name="piden[]" value="jueves">Jueves<br> 
<input type="checkbox" name="piden[]" value="viernes">Viernes<br> 
<input type="checkbox" name="piden[]" value="sabado">Sábado<br> 
<input type="checkbox" name="piden[]" value="domingo">Domingo<br> 

這是我的PHP

$piden =json_encode($_POST['piden']); 

而且我對數據庫的結果看起來是這樣的。 唯一的問題是結果之間的逗號。

["miercoles","sabado","domingo"] 

我找不到任何類似的問題。 謝謝大家的幫助。

+1

爲什麼你需要刪除逗號?爲什麼你需要json呢?爲什麼你不使用'str_replace'? –

+1

json_encode的目的是製作一個JSON對象。由於你的對象是一個數組,它是一個以逗號分隔的json有效列表。你總是可以做其他事情,而不是編碼,比如'str_replace'等 – Fallenreaper

+0

我真的很新。 你能舉一個使用str_replace的例子嗎? –

回答

3

如果你想除去逗號,那麼你爲什麼使用json_encode()

逗號移除後,字符串無法解碼。使用不同的編碼,例如,加入使用分隔的值:

$piden = implode('/', $_POST['piden']); 

然而,即使這樣,當輸入數據包含逗號,你可能有問題。大多數情況下,您是手動編碼CSV並且未能正確引用包含分隔符的值(逗號f.e)。

在將數據導出爲CSV時,PHP函數fputcsv()可爲您完成所有艱苦的工作。

+0

它工作完美。謝謝你們。 對於這個愚蠢的問題感到抱歉。 –

+0

@ luis-rodriguez如果它的工作是通過點擊左邊的勾來接受這個答案 – devpro