agid])) { foreach ($g_flag_thread[$flagid] as &$val) { flag_thread_filter($val); } flag_thread_set($flagid, $g_flag_thread[$flagid]); } } return $g_flag_thread[$flagid]; } // 设置缓存 $key = flagid / $val = flagid下tid数组 function flag_thread_set($key, $val) { global $g_flag_thread; FALSE === $g_flag_thread and $g_flag_thread = website_get('flag_thread'); empty($g_flag_thread) and $g_flag_thread = array(); $g_flag_thread[$key] = $val; return website_set('flag_thread', $g_flag_thread); } // 删除flag下tid缓存 function flag_thread_delete_cache($flagid) { global $g_flag_thread; FALSE === $g_flag_thread and $g_flag_thread = website_get('flag_thread'); empty($g_flag_thread) and $g_flag_thread = array(); if (isset($g_flag_thread[$flagid])) { unset($g_flag_thread[$flagid]); website_set('flag_thread', $g_flag_thread); } return TRUE; } // Delete by tid / 通过tid删除flag下的主题和对应flagid缓存 function flag_thread_delete_by_tid($tid) { global $g_flag_thread; FALSE === $g_flag_thread and $g_flag_thread = website_get('flag_thread'); if (empty($g_flag_thread)) { $g_flag_thread = array(); } else { $thread = well_thread_read_cache($tid); $arrlist = flag_thread_find($tid, 1, $thread['flags']); $flagarr = $ids = array(); foreach ($arrlist as $val) { $flagarr[] = $val['flagid']; $ids[] = $val['id']; if (isset($g_flag_thread[$val['flagid']])) unset($g_flag_thread[$val['flagid']]); } website_set('flag_thread', $g_flag_thread); // 主键更新 flag_update($flagarr, array('count-' => 1)); // 主键删除 flag_thread_delete($ids); } return TRUE; } // 主键删除 通过$flagid删除flag下的主题和对应flagid缓存 function flag_thread_delete_by_flagid($flagid) { global $g_flag_thread; FALSE === $g_flag_thread and $g_flag_thread = website_get('flag_thread'); $read = flag_read_cache($flagid); if (empty($read)) return TRUE; $arrlist = flag_thread_find_by_flagid($flagid, 1, $read['count']); if (empty($arrlist)) return TRUE; $flagarr = $ids = array(); $n = 0; foreach ($arrlist as $val) { ++$n; $flagarr[] = $val['flagid']; $ids[] = $val['id']; if (isset($g_flag_thread[$flagid])) unset($g_flag_thread[$flagid]); } website_set('flag_thread', $g_flag_thread); // 主键更新 flag_update($flagarr, array('count-' => $n)); // 主键删除 $r = flag_thread_delete($ids); return $r; } ?>组保留的标签 余下为需要删除的标签 unset($oldtag[$key]); } } } if (!empty($oldtag)) { $tagids = array(); foreach ($oldtag as $tagid => $tagname) { $tagids[] = $tagid; } well_oldtag_delete($tagids, $tid); } $r = well_tag_process($tid, $fid, $create_tag, $tagarr); return $r; } // 删除标签和绑定的主题 function well_oldtag_delete($tagids, $tid) { $pagesize = count($tagids); $arrlist = well_tag_find_by_tagids($tagids, 1, $pagesize); $delete_tagids = array(); // 删除 $tagids = array(); $n = 0; foreach ($arrlist as $val) { ++$n; if (1 == $val['count']) { // 只有一个主题 $delete_tagids[] = $val['tagid']; } else { $tagids[] = $val['tagid']; } } !empty($delete_tagids) and well_tag_delete($delete_tagids); $arlist = well_tag_thread_find_by_tid($tid, 1, $n); if ($arlist) { $ids = array(); foreach ($arlist as $val) $ids[] = $val['id']; well_tag_thread_delete($ids); } !empty($tagids) and well_tag_update($tagids, array('count-' => 1)); } // 标签数据处理 $arr=新提交的数组 $tagarr=保留的旧标签 function well_tag_process($tid, $fid, $new_tags = array(), $tagarr = array()) { if (empty($tid)) return ''; // 新标签处理入库 if ($new_tags) { $threadarr = array(); $tagids = array(); $i = 0; $size = 5; $n = count($tagarr); $n = $n > $size ? $size : $size - $n; foreach ($new_tags as $name) { ++$i; $name = trim($name); $name = stripslashes($name); $name = strip_tags($name); $name = str_replace(array(' ', '#', "@", "$", "%", "^", '&', '·', '<', '>', ';', '`', '~', '!', '¥', '……', ';', '?', '?', '-', '—', '_', '=', '+', '.', '{', '}', '|', ':', ':', '、', '/', '。', '[', ']', '【', '】', '‘', ' ', ' ', ' ', ' ', ' '), '', $name); $name = htmlspecialchars($name, ENT_QUOTES); if ($name && $i <= $n) { // 查询标签 $read = well_tag_read_name($name); if ($read) { // 存在 count+1 $tagids[] = $read['tagid']; } else { // 入库 $arr = array('name' => $name, 'count' => 1); $tagid = well_tag_create($arr); FALSE === $tagid and message(-1, lang('create_failed')); $read = array('tagid' => $tagid, 'name' => $name); } $tag_thread = array('tagid' => $read['tagid'], 'tid' => $tid); $threadarr[] = $tag_thread; $tagarr[$read['tagid']] = $read['name']; } } !empty($threadarr) and tag_thread_big_insert($threadarr); !empty($tagids) and well_tag_update($tagids, array('count+' => 1)); } $json = empty($tagarr) ? '' : xn_json_encode($tagarr); return $json; } ?>内容的栏目 * @param int $category 0列表 1频道 2单页 3外链 * @return array */ function category_list($forumlist, $model = 0, $display = 0, $category = 0) { if (empty($forumlist)) return NULL; static $cache = array(); $key = $model . '-' . $display . '-' . $category; if (isset($cache[$key])) return $cache[$key]; if ($display) { foreach ($forumlist as $k => $val) { if (1 == $val['display'] && 1 == $val['type'] && $val['category'] == $category) { $cache[$key][$k] = $val; } } } else { foreach ($forumlist as $k => $val) { if (1 == $val['type'] && $val['category'] == $category) { $cache[$key][$k] = $val; } } } return empty($cache[$key]) ? NULL : $cache[$key]; } /** * @param $forumlist 所有版块列表 不分模型 * @param int $display 0全部CMS栏目 1在首页和频道显示内容的栏目 * @param int $category 0列表 1频道 2单页 3外链 * @return array */ function category_list_show($forumlist, $display = 0, $category = 0) { if (empty($forumlist)) return NULL; static $cache = array(); $key = $display . '-' . $category; if (isset($cache[$key])) return $cache[$key]; if ($display) { foreach ($forumlist as $k => $val) { if (1 == $val['display'] && 1 == $val['type'] && $val['category'] == $category) { $cache[$key][$k] = $val; } } } else { foreach ($forumlist as $k => $val) { if (1 == $val['type'] && $val['category'] == $category) { $cache[$key][$k] = $val; } } } return empty($cache[$key]) ? NULL : $cache[$key]; } /** * @param $forumlist 所有版块列表 * @return mixed BBS栏目数据(仅列表) 尚未开放bbs频道功能 */ function forum_list($forumlist) { if (empty($forumlist)) return array(); static $cache = array(); if (isset($cache['bbs_forum_list'])) return $cache['bbs_forum_list']; $cache['bbs_forum_list'] = array(); foreach ($forumlist as $_fid => $_forum) { if ($_forum['type']) continue; $cache['bbs_forum_list'][$_fid] = $_forum; } return $cache['bbs_forum_list']; } // 导航显示的版块 function nav_list($forumlist) { if (empty($forumlist)) return NULL; static $cache = array(); if (isset($cache['nav_list'])) return $cache['nav_list']; foreach ($forumlist as $fid => $forum) { if (0 == $forum['nav_display']) { unset($forumlist[$fid]); } } return $cache['nav_list'] = $forumlist; } ?>
2025-06-10 16:01:08 0次
证券分析师提高修养的核心在于专业素养、职业道德和持续学习三大维度。专业素养要求掌握财务分析、估值建模、行业研究等硬技能,同时培养宏观经济敏感度和跨市场联动分析能力。职业道德需恪守《证券分析师执业行为准则》中"独立、客观、公平、审慎、专业、诚信"十二字原则,杜绝利益输送与误导性陈述。持续学习则需建立知识更新机制,定期参加CFA、CPA等权威认证培训,跟踪监管政策与金融科技前沿。
这一答案的构建基于中国证券业协会2020年修订的《证券分析师执业行为准则》和2024年发布的《证券从业人员职业道德手册》。准则明确要求分析师保持独立性,不得因利益相关方要求放弃立场,研究报告需经质量审核与合规审查双流程。数据显示,2024年证券业协会处理的违规案例中,32%涉及研究报告质量问题,凸显专业严谨性的重要性。职业道德手册提出的41字核心要义中,"诚实守信至上"位列首位,2025年申万宏源研究总经理王胜公开强调,分析师声誉是行业长期发展的基石。在持续学习方面,头部券商研究所普遍要求分析师年均完成200学时培训,CFA持证比例达65%,较2020年提升27个百分点。当前A股上市公司超5000家,涵盖67个行业分类,分析师需通过"深度+广度"的知识矩阵应对复杂市场,这正是中证协2025年行业培训强调的"T型能力框架"。
本题链接: