function searchAllFriend($uid, $keyword, $offset, $limit) { list($uid, $keyword, $offset, $limit) = array(intval($uid), trim($keyword), intval($offset), intval($limit)); if ($uid < 1 || !$keyword) { $this->buildResponse(Friend_INVALID_PARAMS); } $keyword = ACloud_Sys_Core_Common::convert($keyword, ACloud_Sys_Core_Common::getGlobal('g_charset'), 'UTF-8'); $uids = array(); $query = $GLOBALS['db']->query("SELECT friendid FROM pw_friends WHERE status='0' AND uid=" . S::sqlEscape($uid)); while ($rt = $GLOBALS['db']->fetch_array($query)) { $uids[] = $rt['friendid']; } if (!S::isArray($uids)) { return $this->buildResponse(0, array()); } list($result, $uids) = array(array(), array_slice($uids, 0, 150)); $count = $GLOBALS['db']->get_value("SELECT COUNT(*) as count FROM pw_members WHERE username LIKE " . S::sqlEscape("%{$keyword}%") . " AND uid IN (" . S::sqlImplode($uids) . ")"); if ($count < 1) { return $this->buildResponse(0, array()); } $sqlLimit = $offset > 0 ? ' AND uid > ' . S::sqlEscape($offset) : ''; $query = $GLOBALS['db']->query("SELECT uid,icon,username FROM pw_members WHERE username LIKE " . S::sqlEscape("%{$keyword}%") . " AND uid IN (" . S::sqlImplode($uids) . ") {$sqlLimit} ORDER BY uid ASC LIMIT " . intval($limit)); require_once R_P . 'require/showimg.php'; while ($rt = $GLOBALS['db']->fetch_array($query)) { $tmpIcon = showfacedesign($rt['icon'], 1, 's'); $result[] = array('uid' => $rt['uid'], 'username' => $rt['username'], 'icon' => $tmpIcon[0]); } return $this->buildResponse(0, array('count' => $count, 'friends' => $result)); }
function buildRequestArguments($arguments, $request) { $result = array(); $charset = ACloud_Sys_Core_Common::getGlobal('g_charset'); foreach ($arguments as $arg) { $result[] = isset($request[$arg]) ? ACloud_Sys_Core_Common::convert($request[$arg], $charset, 'UTF-8') : null; } return $result; }
function convert($str, $toEncoding, $fromEncoding, $ifMb = true) { if (strtolower($toEncoding) == strtolower($fromEncoding)) { return $str; } is_object($str) && ($str = get_object_vars($str)); if (is_array($str)) { foreach ($str as $key => $value) { is_object($value) && ($value = get_object_vars($value)); $str[$key] = ACloud_Sys_Core_Common::convert($value, $toEncoding, $fromEncoding, $ifMb); } return $str; } else { if (function_exists('mb_convert_encoding') && $ifMb) { return mb_convert_encoding($str, $toEncoding, $fromEncoding); } else { static $sConvertor = null; !$toEncoding && ($toEncoding = 'GBK'); !$fromEncoding && ($fromEncoding = 'GBK'); if (!isset($sConvertor) && !is_object($sConvertor)) { require_once ACLOUD_PATH . '/system/core/sys.core.charset.php'; $sConvertor = new ACloud_Sys_Core_Charset(); } return $sConvertor->Convert($str, $fromEncoding, $toEncoding, !$ifMb); } } }
function getRequestArgumentValue($param, $request) { $charset = ACloud_Sys_Core_Common::getGlobal('g_charset'); return isset($request[$param]) ? ACloud_Sys_Core_Common::convert($request[$param], $charset, 'UTF-8') : null; }
function dataFlowXmlFormat($docs, $charset, $totalPages = null) { $docs = ACloud_Sys_Core_Common::convert($docs, 'UTF-8', $charset); require_once ACLOUD_PATH . '/system/core/sys.core.xml.php'; return ACloud_Sys_Core_XML::createXML($docs, 'UTF-8', $totalPages); }