我想删除我的json_encode中的双引号,即我的代码:
<?php require_once 'config.inc.php'; //## Clase Base de Datos require_once 'Database.class.php'; //## Obtengo los parametros pasados por el metodo GET $params = $_REQUEST; $db = new Database(DB_SERVER, DB_USER, DB_PASS, DB_DATABASE); $db->connect(); $result = mysql_query("SELECT * from ranking WHERE posicion BETWEEN ".$params['pos_ini']." AND ".$params['pos_fi']) or die('Could not query'); if(mysql_num_rows($result)){ $array_json=array(); $filas = mysql_num_rows($result); $columnas = mysql_num_fields($result); for($i=0;$i<$filas;$i++) { $fila_dato = mysql_fetch_assoc($result); for($k=0;$k<$columnas;$k++) { $campo = mysql_field_name($result,$k); $campo = str_replace('\"', '', $campo); $array_json[$i][$campo] = $fila_dato[$campo]; } } $array_final = json_encode($array_json); $array_final = preg_replace('/"([a-zA-Z]+[a-zA-Z0-9]*)":/','$1:',$array_final); echo $array_final; } else { echo '[]'; } ?>
我的结果是:
[{"id_posiciones":"1",posicion:"1",nick:"biwer",puntos:"1000",uid:"1",pais:"ES",idioma:"ES","device_version":"4"}]
我也想删除“ id_posiciones”和“ device_version”的双引号。
我该怎么做的结果是:
[{id_posiciones:"1",posicion:"1",nick:"biwer",puntos:"1000",uid:"1",pais:"ES",idioma:"ES",device_version:"4"}]
如果最后在您的正则表达式中添加下划线,它将执行此操作。
$array_final = preg_replace('/"([a-zA-Z]+[a-zA-Z0-9_]*)":/','$1:',$array_final);
我认为那正是preg_replace的目的。