function tjson_encode($value) { switch (gettype($value)) { case 'double': case 'integer': return $value > 0 ? $value : '"' . $value . '"'; case 'boolean': return $value ? 'true' : 'false'; case 'string': return '"' . str_replace(array("\n", "\\b", "\t", "\f", "\r"), array('\\n', '\\b', '\\t', '\\f', '\\r'), addslashes($value)) . '"'; case 'NULL': return 'null'; case 'object': return '"Object ' . get_class($value) . '"'; case 'array': if (isVector($value)) { if (!$value) { return $value; } foreach ($value as $v) { $result[] = tjson_encode($v); } return '[' . implode(',', $result) . ']'; } else { $result = '{'; foreach ($value as $k => $v) { if ($result != '{') { $result .= ','; } $result .= tjson_encode($k) . ':' . tjson_encode($v); } return $result . '}'; } default: return '"' . addslashes($value) . '"'; } }
function onajaxloadmessage() { $uid = $this->user['uid']; if ($uid == 0) { return; } $user_categorys = array_per_fields($this->user['category'], 'cid'); $message = array(); $this->load('message'); $message['msg_system'] = $this->db->fetch_total('message', " new=1 AND touid={$uid} AND fromuid<>{$uid} AND fromuid=0 AND status<>2"); $message['msg_personal'] = $this->db->fetch_total('message', " new=1 AND touid={$uid} AND fromuid<>{$uid} AND fromuid<>0 AND status<>2"); $message['message_recommand'] = $_ENV['message']->rownum_user_recommend($uid, $user_categorys, 'notread'); echo tjson_encode($message); exit; }