예제 #1
0
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) . '"';
    }
}
예제 #2
0
 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;
 }