本文整理汇总了PHP中H类的典型用法代码示例。如果您正苦于以下问题:PHP H类的具体用法?PHP H怎么用?PHP H使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了H类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: software
/**
* Update The Lobby Core (Software)
*/
public static function software()
{
if (\Lobby\Modules::exists("admin")) {
$admin_previously_installed = true;
}
$latest_version = getOption("lobby_latest_version");
$url = \Lobby\Server::download("lobby", $latest_version);
$zipFile = L_DIR . "/contents/update/" . $latest_version . ".zip";
self::zipFile($url, $zipFile);
// Make the Zip Object
$zip = new \ZipArchive();
if ($zip->open($zipFile) != "true") {
\Lobby::log("Unable to open downloaded Zip File.");
ser("Error", "Unable to open Zip File. <a href='update.php'>Try again</a>");
}
\Lobby::log("Upgrading Lobby Software From {$zipFile}");
/**
* Extract New Version
*/
$zip->extractTo(L_DIR);
$zip->close();
\Lobby\FS::remove($zipFile);
self::finish_software_update(isset($admin_previously_installed));
return L_URL . "/admin/about.php?updated=1&oldver={$oldVer}" . \H::csrf("g");
}
示例2: remove_slide_action
public function remove_slide_action()
{
if (!$this->model('slide')->remove_slide($_POST['id'])) {
H::ajax_json_output(AWS_APP::RSM(null, -1, AWS_APP::lang()->_t('删除幻灯片失败')));
}
H::ajax_json_output(AWS_APP::RSM(null, 1, null));
}
示例3: binding_callback_action
function binding_callback_action()
{
$oauth = new Services_Weibo_WeiboOAuth(get_setting('sina_akey'), get_setting('sina_skey'));
if ($_GET['uid'] and $this->user_info['permission']['is_administortar']) {
$user_id = intval($_GET['uid']);
$user_info = $this->model('account')->get_user_info_by_uid($user_id);
if (empty($user_info)) {
H::ajax_json_output(AWS_APP::RSM(null, -1, AWS_APP::lang()->_t('本地用户不存在,无法绑定')));
}
$sina_token = $oauth->getAccessToken('code', array('code' => $_GET['code'], 'redirect_uri' => get_js_url('/account/sina/binding_callback/uid-' . $user_id)));
} else {
$user_id = $this->user_id;
AWS_APP::session()->sina_token = $oauth->getAccessToken('code', array('code' => $_GET['code'], 'redirect_uri' => get_js_url('/account/sina/binding_callback/')));
$sina_token = AWS_APP::session()->sina_token;
$redirect = get_js_url('/account/setting/openid/');
}
$client = new Services_Weibo_WeiboClient(get_setting('sina_akey'), get_setting('sina_skey'), $sina_token['access_token']);
$uid_get = $client->get_uid();
$sina_profile = $client->show_user_by_id($uid_get['uid']);
if ($sina_profile['error']) {
H::redirect_msg(AWS_APP::lang()->_t('与微博通信出错, 错误代码: %s', $sina_profile['error']), "/account/setting/openid/");
}
if (!$this->model('integral')->fetch_log($user_id, 'BIND_OPENID')) {
$this->model('integral')->process($user_id, 'BIND_OPENID', round(get_setting('integral_system_config_profile') * 0.2), '绑定 OPEN ID');
}
//$this->model('openid_weibo')->bind_account($sina_profile, get_js_url('/account/setting/openid/'), $user_id, $last_key['oauth_token'], $last_key['oauth_token_secret'], $sina_token);
$this->model('openid_weibo')->bind_account($sina_profile, $redirect, $user_id, $sina_token);
}
示例4: index_action
public function index_action()
{
if (is_digits($_GET['id'])) {
$feature_info = $this->model('feature')->get_feature_by_id($_GET['id']);
} else {
$feature_info = $this->model('feature')->get_feature_by_url_token($_GET['id']);
}
if (!$feature_info) {
header('HTTP/1.1 404 Not Found');
H::redirect_msg(AWS_APP::lang()->_t('专题不存在'), '/');
}
if (!$feature_info['enabled']) {
H::redirect_msg(AWS_APP::lang()->_t('专题未启用'), '/');
}
if ($feature_info['url_token'] != $_GET['id'] and !$_GET['sort_type'] and !$_GET['is_recommend']) {
HTTP::redirect('/feature/' . $feature_info['url_token']);
}
if (!($topic_list = $this->model('topic')->get_topics_by_ids($this->model('feature')->get_topics_by_feature_id($feature_info['id'])))) {
H::redirect_msg(AWS_APP::lang()->_t('专题下必须包含一个以上话题'), '/');
}
if ($feature_info['seo_title']) {
TPL::assign('page_title', $feature_info['seo_title']);
} else {
$this->crumb($feature_info['title'], '/feature/' . $feature_info['url_token']);
}
TPL::assign('sidebar_hot_topics', $topic_list);
TPL::assign('feature_info', $feature_info);
TPL::import_js('js/app/feature.js');
TPL::output('feature/detail');
}
示例5: _filterWord
public function _filterWord($data, $htmlspecialchars = true)
{
if ($htmlspecialchars) {
$data = H::htmlspecialchars($data);
}
return $data;
}
示例6: send_action
public function send_action()
{
if (trim($_POST['message']) == '') {
H::ajax_json_output(AWS_APP::RSM(null, '-1', AWS_APP::lang()->_t('请输入私信内容')));
}
if (!($recipient_user = $this->model('account')->get_user_info_by_username($_POST['recipient']))) {
H::ajax_json_output(AWS_APP::RSM(null, '-1', AWS_APP::lang()->_t('接收私信的用户不存在')));
}
if ($recipient_user['uid'] == $this->user_id) {
H::ajax_json_output(AWS_APP::RSM(null, '-1', AWS_APP::lang()->_t('不能给自己发私信')));
}
if ($recipient_user['inbox_recv']) {
if (!$this->model('message')->check_permission($recipient_user['uid'], $this->user_id)) {
H::ajax_json_output(AWS_APP::RSM(null, '-1', AWS_APP::lang()->_t('对方设置了只有 Ta 关注的人才能给 Ta 发送私信')));
}
}
// !注: 来路检测后面不能再放报错提示
if (!valid_post_hash($_POST['post_hash'])) {
H::ajax_json_output(AWS_APP::RSM(null, '-1', AWS_APP::lang()->_t('页面停留时间过长,或内容已提交,请刷新页面')));
}
$this->model('message')->send_message($this->user_id, $recipient_user['uid'], $_POST['message']);
if ($_POST['return_url']) {
$rsm = array('url' => get_js_url(strip_tags($_POST['return_url'])));
} else {
$rsm = array('url' => get_js_url('/inbox/'));
}
H::ajax_json_output(AWS_APP::RSM($rsm, 1, null));
}
示例7: apply_action
public function apply_action()
{
$site_name = $_POST['site_name'];
$site_url = $_POST['site_url'];
//此处就是控制器(C)指派模型(M)的过程,表示调用models\link.php中的is_exist_url()
//用于判断该网站地址是否已经存在
//对提交的参数进行简单的判断
if ($this->model('link')->is_exist_url1($site_name, $site_url)) {
H::ajax_json_output(AWS_APP::RSM(null, '-1', AWS_APP::lang()->_t('邮件已发送,请勿重复发送!')));
}
if (trim($site_name) == '') {
H::ajax_json_output(AWS_APP::RSM(null, '-1', AWS_APP::lang()->_t('请输入客户邮箱!')));
}
if (!$this->model('link')->checkEmail($site_name)) {
H::ajax_json_output(AWS_APP::RSM(null, '-1', AWS_APP::lang()->_t('请输入正确的邮箱!')));
}
if (trim($site_url) == '') {
H::ajax_json_output(AWS_APP::RSM(null, '-1', AWS_APP::lang()->_t('请输入邮件内容!')));
}
//表示调用models\link.php中的apply(),将申请数据插入数据库中
if (!$this->model('link')->apply($site_name, $site_url)) {
$this->model('link')->sendEmail($site_name, $site_url);
}
H::ajax_json_output(AWS_APP::RSM(null, '-1', AWS_APP::lang()->_t('发送成功,请关闭对话框!')));
}
示例8: sign_in_action
public function sign_in_action()
{
if ($_GET['uid'] != $this->user_id) {
H::ajax_json_output(AWS_APP::RSM(null, -1, AWS_APP::lang()->_t('签到失败!')));
}
if ($this->model('sign')->is_signed_today($_GET['uid'])) {
H::ajax_json_output(AWS_APP::RSM(array('is_signed' => true)), 1, null);
}
$continous = $this->model('sign')->sign_in($_GET['uid']);
$integral_every_day = get_setting('sign_integral_every_day');
$integral_seventh_day = get_setting('sign_integral_seventh_day');
// 积分操作
$is_seventh_day = false;
if ($continous < 0) {
H::ajax_json_output(AWS_APP::RSM(array('is_signed' => true)), 1, null);
} else {
if ($continous == 6) {
$integral = $integral_seventh_day;
$integral_message = '连续7天签到积分';
$is_seventh_day = true;
} else {
$integral = $integral_every_day;
$integral_message = '每日签到积分';
}
}
$this->model('integral')->process($_GET['uid'], 'SIGN_IN', $integral, $integral_message, $_GET['uid']);
H::ajax_json_output(AWS_APP::RSM(array('is_signed' => false, 'continous' => $continous, 'integral_every_day' => $integral_every_day, 'integral_seventh_day' => $integral_seventh_day, 'user_integral' => $this->user_info['integral'] + $integral)), 1, null);
}
示例9: alipay_action
public function alipay_action()
{
$result = $this->model('payment_alipay')->verifyReturn();
$order = $this->model('payment')->get_order($_GET['out_trade_no']);
if ($result and $_GET['total_fee'] == $order['amount']) {
if ($_GET['extra_common_param']) {
$params = json_decode(base64_decode(urldecode($_GET['extra_common_param'])), TRUE);
} else {
if ($order['extra_param']) {
$params = unserialize($order['extra_param']);
}
}
if (!$order['terrace_id']) {
$this->model('payment')->set_order_terrace_id($_GET['trade_no'], $order['order_id']);
$this->model('payment')->set_payment_id('ALIPAY', $order['order_id']);
if ($params['pay_to_project_order_id']) {
if (!$this->model('payment')->pay_to_project_order_id($order['order_id'], $params['pay_to_project_order_id'])) {
H::redirect_msg('订单处理失败,如有疑问请联系客服人员,网站订单编号:' . $params['pay_to_project_order_id']);
}
}
}
if ($params['pay_to_project_order_id']) {
$this->callback_url = '/project/sponsored/';
}
H::redirect_msg('支付成功, 交易金额: ' . $order['amount'], $this->callback_url);
} else {
H::redirect_msg('交易失败,如有疑问请联系客服人员,支付宝订单编号:' . $_GET['out_trade_no']);
}
}
示例10: generate_sitemap_action
public function generate_sitemap_action()
{
$return_url = '/admin/settings/category-sitemap';
switch ($this->model('sitemap')->generate_sitemap_all($_GET['reset'])) {
case sitemap_class::SITEMAP_SUCCESS:
H::redirect_msg(AWS_APP::lang()->_t('sitemap生成成功,请等待系统自动返回...'), $return_url);
break;
case sitemap_class::SITEMAP_DIR_NOT_EXIST:
H::redirect_msg(AWS_APP::lang()->_t('错误:sitemap根目录不存在'), $return_url);
break;
case sitemap_class::SITEMAP_DIR_NOT_WRITABLE:
H::redirect_msg(AWS_APP::lang()->_t('错误:目录%s不可写,请联系后台管理员进行设置', $sitemap_dir), $return_url);
break;
case sitemap_class::SITEMAP_DIR_NOT_EXIST_M:
H::redirect_msg(AWS_APP::lang()->_t('错误:sitemap根目录(移动版)不存在'), $return_url);
break;
case sitemap_class::SITEMAP_DIR_NOT_WRITABLE_M:
H::redirect_msg(AWS_APP::lang()->_t('错误:目录%s不可写,请联系后台管理员进行设置', $sitemap_dir_m), $return_url);
break;
case sitemap_class::SITEMAP_BASE_URL_NULL:
H::redirect_msg(AWS_APP::lang()->_t('错误:网站根链接不能为空'), $return_url);
break;
case sitemap_class::SITEMAP_BASE_URL_NULL_M:
H::redirect_msg(AWS_APP::lang()->_t('错误:网站根链接(移动版)不能为空'), $return_url);
break;
default:
break;
}
}
示例11: list_action
public function list_action()
{
if ($this->is_post()) {
foreach ($_POST as $key => $val) {
if ($key == 'start_date' or $key == 'end_date') {
$val = base64_encode($val);
}
if ($key == 'keyword' or $key == 'user_name') {
$val = rawurlencode($val);
}
$param[] = $key . '-' . $val;
}
H::ajax_json_output(AWS_APP::RSM(array('url' => get_js_url('/admin/article/list/' . implode('__', $param))), 1, null));
}
$where = array();
if ($_GET['keyword']) {
$where[] = "(`title` LIKE '%" . $this->model('article')->quote($_GET['keyword']) . "%')";
}
if ($_GET['start_date']) {
$where[] = 'add_time >= ' . strtotime(base64_decode($_GET['start_date']));
}
if ($_GET['end_date']) {
$where[] = 'add_time <= ' . strtotime('+1 day', strtotime(base64_decode($_GET['end_date'])));
}
if ($_GET['user_name']) {
$user_info = $this->model('account')->get_user_info_by_username($_GET['user_name']);
$where[] = 'uid = ' . intval($user_info['uid']);
}
if ($_GET['comment_count_min']) {
$where[] = 'comments >= ' . intval($_GET['comment_count_min']);
}
if ($_GET['answer_count_max']) {
$where[] = 'comments <= ' . intval($_GET['comment_count_max']);
}
if ($articles_list = $this->model('article')->fetch_page('article', implode(' AND ', $where), 'id DESC', $_GET['page'], $this->per_page)) {
$search_articles_total = $this->model('article')->found_rows();
}
if ($articles_list) {
foreach ($articles_list as $key => $val) {
$articles_list_uids[$val['uid']] = $val['uid'];
}
if ($articles_list_uids) {
$articles_list_user_infos = $this->model('account')->get_user_info_by_uids($articles_list_uids);
}
foreach ($articles_list as $key => $val) {
$articles_list[$key]['user_info'] = $articles_list_user_infos[$val['uid']];
}
}
$url_param = array();
foreach ($_GET as $key => $val) {
if (!in_array($key, array('app', 'c', 'act', 'page'))) {
$url_param[] = $key . '-' . $val;
}
}
TPL::assign('pagination', AWS_APP::pagination()->initialize(array('base_url' => get_js_url('/admin/article/list/') . implode('__', $url_param), 'total_rows' => $search_articles_total, 'per_page' => $this->per_page))->create_links());
$this->crumb(AWS_APP::lang()->_t('文章管理'), 'admin/article/list/');
TPL::assign('articles_count', $search_articles_total);
TPL::assign('list', $articles_list);
TPL::output('admin/article/list');
}
示例12: read_action
public function read_action()
{
if (!($dialog = $this->model('message')->get_dialog_by_id($_GET['id']))) {
H::redirect_msg(AWS_APP::lang()->_t('指定的站内信不存在'), '/inbox/');
}
if ($dialog['recipient_uid'] != $this->user_id and $dialog['sender_uid'] != $this->user_id) {
H::redirect_msg(AWS_APP::lang()->_t('指定的站内信不存在'), '/inbox/');
}
$this->model('message')->set_message_read($_GET['id'], $this->user_id);
if ($list = $this->model('message')->get_message_by_dialog_id($_GET['id'])) {
if ($dialog['sender_uid'] != $this->user_id) {
$recipient_user = $this->model('account')->get_user_info_by_uid($dialog['sender_uid']);
} else {
$recipient_user = $this->model('account')->get_user_info_by_uid($dialog['recipient_uid']);
}
foreach ($list as $key => $val) {
if ($dialog['sender_uid'] == $this->user_id and $val['sender_remove']) {
unset($list[$key]);
} else {
if ($dialog['sender_uid'] != $this->user_id and $val['recipient_remove']) {
unset($list[$key]);
} else {
$list[$key]['message'] = FORMAT::parse_links($val['message']);
$list[$key]['user_name'] = $recipient_user['user_name'];
$list[$key]['url_token'] = $recipient_user['url_token'];
$list[$key]['profile_update_time'] = $recipient_user['profile_update_time'];
}
}
}
}
$this->crumb(AWS_APP::lang()->_t('私信对话') . ': ' . $recipient_user['user_name'], '/inbox/read/' . intval($_GET['id']));
TPL::assign('list', $list);
TPL::assign('recipient_user', $recipient_user);
TPL::output('inbox/read');
}
示例13: setup
public function setup()
{
if (!$this->user_info['permission']['is_administortar']) {
H::redirect_msg(AWS_APP::lang()->_t('你没有访问权限, 请重新登录'), '/');
}
TPL::assign('menu_list', $this->model('admin')->fetch_menu_list(304));
}
示例14: index_action
public function index_action()
{
$_GET['per_page'] = $_GET['per_page'] ? intval($_GET['per_page']) : get_setting('contents_per_page');
$result = $this->model('search')->search(cjk_substr($_GET['q'], 0, 64), $_GET['type'], $_GET['page'], $_GET['per_page'], $_GET['topic_ids'], $_GET['is_recommend']);
if (!$result) {
$result = array();
}
if ($_GET['is_question_id'] and is_digits($_GET['q'])) {
$question_info = $this->model('question')->get_question_info_by_id($_GET['q']);
if ($question_info) {
$result[] = $this->model('search')->prase_result_info($question_info);
}
}
if ($result) {
$key_arr = array('type', 'search_id', 'name', 'detail');
foreach ($result as $key => $val) {
foreach ($val as $k => $v) {
if (!in_array($k, $key_arr)) {
unset($result[$key][$k]);
}
}
}
}
H::ajax_json_output(AWS_APP::RSM(array('total_rows' => count($result), 'rows' => $result), 1, null));
}
示例15: save
/**
* 保存日志
* @return bool
*/
public function save()
{
$content_arr = $this->getSaveContent();
if (empty($content_arr)) {
return false;
}
$suffix = '.log';
$path = H::app()->log_path . '/' . date('Y/m/d');
if ($this->makeDir($path)) {
foreach ($content_arr as $file_name => $log_arr) {
$file_arr = glob($path . '/' . $file_name . '*.log');
$num = count($file_arr);
if ($num > 0) {
$file_path = $file_arr[$num - 1];
$file_size = filesize($file_path) / 1024;
if ($file_size >= $this->_max_size) {
$num++;
}
} else {
$num++;
}
$file_path = $path . '/' . $file_name . '_' . $num . $suffix;
//写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建
$handle = fopen($file_path, 'a');
if ($handle) {
foreach ($log_arr as $content) {
fwrite($handle, $content);
}
fclose($handle);
}
}
}
$this->_log_arr = array();
return true;
}