ホームページ  >  記事  >  バックエンド開発  >  これはコードを見つける正しい方法ですか?

これはコードを見つける正しい方法ですか?

WBOY
WBOYオリジナル
2016-06-23 13:48:56904ブラウズ

次の文は discuz プログラムからのものですが、どのように理解すればよいでしょうか?
$recommendgroups = array();
if($_G['forum']['status'] != 3 && helper_access::check_module('group) ') ) {
loadcache('forumrecommend');
$recommendgroups = $_G['cache']['forumrecommend'][$_G['fid']]
}

if($recommendgroups) {
if (空 ($_G['cookie']['collapse']) || strpos($_G['cookie']['collapse'], 'recommendgroups_'.$_G['fid']) === FALSE) {
$collapse['recommendgroups'] = '';
$collapseimg['recommendgroups'] = 'collapsed_no.gif'; } else {
$collapse['recommendgroups'] = 'display: none'; [' recommendgroups'] = 'collapsed_yes.gif';
}
}

問題は、この 2 次元配列が $_G['forum']['status'] からどのように取得されたのか理解できないことです


ディスカッションへの返信 (解決策)

HTML ページにはループがあります

php にも js にもループがないので、明らかにこの HTML はテンプレートです

ただし、一般的なテンプレート エンジンにはループがないようです
あなたマークを投稿したほうがいいです

$_G ['cache']['forumrecommend'][$_G['fid']]

この多次元配列はほとんど理解できませんが、どういう意味ですか


検索forum.php がルート ディレクトリにあります

その中に、loadforum(); というメソッドがあります

このメソッドは、/source/function/function_forum.php にあります
メソッド: $forum = C::t('forum_forum')-> fetch_info_by_fid($fid);、セクション設定を取得するメソッドです
$_G['forum'] = &$forum; があるため、$_G['forum']['status'] には値があります

loadcache('forumrecommend');

pre_common_syscache データ(バイナリデータ)で cname が forumrecommend と等しいキャッシュを見つけ、$_G['cache'] に入れます

$_G['cache']['forumrecommend'] は推奨される情報ですモデレーターによるもの、および対応するテーブル pre_forum_forumrecommend モデレーター推奨テーブル
$_G['fid '] は現在のセクション ID です

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。