在這裏找不到這個問題的確切答案,雖然它可能很簡單(如果有答案,請指向正確的方向)。替換MySQL查詢結果中的字符PHP
我從MySQL中拉出一些數據,其中一些字符導致數據不能顯示在終點。因此,我需要挑出這些特定字符,並將其替換爲允許的字符。具體而言,我需要更改&,'和+。我必須從該查詢做到這一點的工作:
$query = "select * from data where a_data_id=".$ID." AND a_discard_data_from!=1";
我在想,如果我可以添加到這個字符串,或者這個字符串後,一些規則來代替實例&「,或+與其它字符/秒。
感謝您的期待!
注意:有與上面的字符串沒有問題,它是運行很好,我只是想給它添加或之後某種類型的代碼,將在從查詢拉數據替換某些字符
周圍代碼:
$arr="";
$main_arr="";
$query = "select * from data where a_data_id=".$ID." AND a_discard_data_from!=1";
$query .=" and last_update >= " . '"' . $dataDate . '"';
$table = mysql_query($query);
if (mysql_num_rows($table) > 0) {
while ($row = mysql_fetch_assoc($table)) {
foreach ($row as $key => $value) {
$arr[$key] = $value;
if ($key == "to_data_id") {
$array=mysql_fetch_array(mysql_query("select name,additional from details where data_id=".$value));
$arr["data_id"] = $array['additional'].".".$array['name'];
}
}
$main_arr[] = $arr;
}
}
$data = json_encode($main_arr);
只是如何減慢它到這個代碼將是偉大的,謝謝! (這段代碼工作正常,只是想知道我可以更改/添加以替換那些字符)。
更新:有人能給我一個答案,我可能如何使用strtr()函數來取代結果嗎?再次感謝您的回覆!
數據顯示的終點是什麼?也許從結構上來說,在處理這種類型的表現事件(特定於終點)方面更有意義,它比數據庫層更接近終點本身?事實上,很可能終點具有庫函數或類似的函數來處理/封裝/編碼無法顯示的字符。 – eggyal
是的,這是真的,但由於某些原因,我不能在這個階段改變 - 我需要處理這個查詢,它直接發送數據到應用程序,所以需要處理查詢,並想知道是否有某種類型的代碼,我可以用它來替換正在傳遞的檢索數據。謝謝 –
它是如何編輯查詢而不是調度查詢的代碼? – eggyal