本文整理汇总了PHP中P2Util::cacheFileForDL方法的典型用法代码示例。如果您正苦于以下问题:PHP P2Util::cacheFileForDL方法的具体用法?PHP P2Util::cacheFileForDL怎么用?PHP P2Util::cacheFileForDL使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类P2Util
的用法示例。
在下文中一共展示了P2Util::cacheFileForDL方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: load
/**
* 必死チェッカー対応板を読み込む
* 自動で読み込まれるので通常は実行する必要はない
*/
function load()
{
global $_conf;
// include_once P2_LIB_DIR . '/p2util.class.php';
$url = 'http://hissi.org/menu.html';
$path = P2Util::cacheFileForDL($url);
// メニューのキャッシュ時間の10倍キャッシュ
P2UtilWiki::cacheDownload($url, $path, $_conf['menu_dl_interval'] * 36000);
$file = @file_get_contents($path);
preg_match_all('{<a href=http://hissi\\.org/read\\.php/(\\w+?)/>.+?</a><br>}', $file, $boards);
$this->boards = $boards[1];
}
示例2: load
/**
* 必死チェッカー対応板を読み込む
* 自動で読み込まれるので通常は実行する必要はない
*/
public function load()
{
global $_conf;
$path = P2Util::cacheFileForDL($this->menuUrl);
// メニューのキャッシュ時間の10倍キャッシュ
P2UtilWiki::cacheDownload($this->menuUrl, $path, $_conf['menu_dl_interval'] * 36000);
$this->boards = array();
$file = @file_get_contents($path);
if ($file) {
if (preg_match_all($this->readPattern, $file, $boards)) {
$this->boards = $boards[1];
}
}
}
示例3: checkUpdatan
/**
* オンライン上のrep2-expack最新版をチェックする
*
* @return string HTML
*/
function checkUpdatan()
{
global $_conf, $p2web_url_r, $expack_url_r, $expack_dl_url_r, $expack_hist_url_r;
$no_p2status_dl_flag = false;
$ver_txt_url = $_conf['expack.web_url'] . 'version.txt';
$cachefile = P2Util::cacheFileForDL($ver_txt_url);
FileCtl::mkdirFor($cachefile);
if (file_exists($cachefile)) {
// キャッシュの更新が指定時間以内なら
if (filemtime($cachefile) > time() - $_conf['p2status_dl_interval'] * 86400) {
$no_p2status_dl_flag = true;
}
}
if (empty($no_p2status_dl_flag)) {
P2Util::fileDownload($ver_txt_url, $cachefile);
}
$ver_txt = FileCtl::file_read_lines($cachefile, FILE_IGNORE_NEW_LINES);
$update_ver = $ver_txt[0];
$kita = 'キタ━━━━(゚∀゚)━━━━!!!!!!';
//$kita = 'キタ*・゚゚・*:.。..。.:*・゚(゚∀゚)゚・*:.。. .。.:*・゚゚・*!!!!!';
$newversion_found_html = '';
if ($update_ver && version_compare($update_ver, $_conf['p2version'], '>')) {
$newversion_found_html = <<<EOP
<div class="kakomi">
{$kita}<br>
オンライン上に 拡張パック の最新バージョンを見つけますた。<br>
rep2-expack rev.{$update_ver} → <a href="{$expack_dl_url_r}"{$_conf['ext_win_target_at']}>ダウンロード</a> / <a href="{$expack_hist_url_r}"{$_conf['ext_win_target_at']}>更新記録</a>
</div>
<hr class="invisible">
EOP;
}
return $newversion_found_html;
}
示例4: read_brd_online
/**
* オンライン板リストを読込む
*/
public static function read_brd_online()
{
global $_conf;
$brd_menus = array();
$isNewDL = false;
if ($_conf['brdfile_online']) {
$cachefile = P2Util::cacheFileForDL($_conf['brdfile_online']);
$noDL = false;
$read_html_flag = false;
// キャッシュがある場合
if (file_exists($cachefile . '.p2.brd')) {
// norefreshならDLしない
if (!empty($_GET['nr'])) {
$noDL = true;
// キャッシュの更新が指定時間以内ならDLしない
} elseif (@filemtime($cachefile . '.p2.brd') > time() - 60 * 60 * $_conf['menu_dl_interval']) {
$noDL = true;
}
}
// DLしない
if ($noDL) {
// DLする
} else {
//echo "DL!<br>";//
$brdfile_online_res = P2Util::fileDownload($_conf['brdfile_online'], $cachefile);
if ($brdfile_online_res->isSuccess() && $brdfile_online_res->code != 304) {
$isNewDL = true;
}
}
// html形式なら
if (preg_match('/html?$/', $_conf['brdfile_online'])) {
// 更新されていたら新規キャッシュ作成
if ($isNewDL) {
// 検索結果がキャッシュされるのを回避
if (isset($GLOBALS['word']) && strlen($GLOBALS['word']) > 0) {
$_tmp = array($GLOBALS['word'], $GLOBALS['word_fm'], $GLOBALS['words_fm']);
$GLOBALS['word'] = null;
$GLOBALS['word_fm'] = null;
$GLOBALS['words_fm'] = null;
} else {
$_tmp = null;
}
//echo "NEW!<br>"; //
$aBrdMenu = new BrdMenu();
// クラス BrdMenu のオブジェクトを生成
$aBrdMenu->makeBrdFile($cachefile);
// .p2.brdファイルを生成
$brd_menus[] = $aBrdMenu;
unset($aBrdMenu);
if ($_tmp) {
list($GLOBALS['word'], $GLOBALS['word_fm'], $GLOBALS['words_fm']) = $_tmp;
$brd_menus = array();
} else {
$read_html_flag = true;
}
}
if (file_exists($cachefile . '.p2.brd')) {
$cache_brd = $cachefile . '.p2.brd';
} else {
$cache_brd = $cachefile;
}
} else {
$cache_brd = $cachefile;
}
if (!$read_html_flag) {
if ($data = FileCtl::file_read_lines($cache_brd)) {
$aBrdMenu = new BrdMenu();
// クラス BrdMenu のオブジェクトを生成
$aBrdMenu->setBrdMatch($cache_brd);
// パターンマッチ形式を登録
$aBrdMenu->setBrdList($data);
// カテゴリーと板をセット
if ($aBrdMenu->num) {
$brd_menus[] = $aBrdMenu;
} else {
P2Util::pushInfoHtml("<p>p2 error: {$cache_brd} から板メニューを生成することはできませんでした。</p>");
}
unset($data, $aBrdMenu);
} else {
P2Util::pushInfoHtml("<p>p2 error: {$cachefile} は読み込めませんでした。</p>");
}
}
}
return $brd_menus;
}
示例5: _checkUpdatan
/**
* オンライン上のrep2最新版をチェックする
*
* @return string HTML
*/
function _checkUpdatan()
{
global $_conf, $p2web_url_r;
$no_p2status_dl_flag = false;
$ver_txt_url = $_conf['p2web_url'] . 'p2status.txt';
$cachefile = P2Util::cacheFileForDL($ver_txt_url);
FileCtl::mkdirFor($cachefile);
if (file_exists($cachefile)) {
// キャッシュの更新が指定時間以内なら
if (filemtime($cachefile) > time() - $_conf['p2status_dl_interval'] * 60) {
$no_p2status_dl_flag = true;
}
}
if (empty($no_p2status_dl_flag)) {
P2Util::fileDownload($ver_txt_url, $cachefile);
}
$ver_txt = file($cachefile);
$update_ver = $ver_txt[0];
$kita = 'キタ━━━━(゚∀゚)━━━━!!!!!!';
//$kita = 'キタ*・゚゚・*:.。..。.:*・゚(゚∀゚)゚・*:.。. .。.:*・゚゚・*!!!!!';
$newversion_found_html = '';
if ($update_ver && version_compare($update_ver, $_conf['p2version'], '>')) {
$update_ver_hs = hs($update_ver);
$p2web_url_r_hs = hs($p2web_url_r);
$newversion_found_html = <<<EOP
<div class="kakomi">
{$kita}<br>
オンライン上に rep2 の最新バージョンを見つけますた。<br>
rep2<!-- version {$update_ver_hs}--> → <a href="{$p2web_url_r_hs}cgi/dl/dl.php?dl=p2">ダウンロード</a> / <a href="{$p2web_url_r_hs}p2/doc/ChangeLog.txt"{$_conf['ext_win_target_at']}>更新記録</a>
</div>
<hr class="invisible">
EOP;
}
return $newversion_found_html;
}
示例6: getSamba24Time
/**
* @access private
* @return integer|false
*/
function getSamba24Time($host, $bbs)
{
// http://pc11.2ch.net/software/
$url = sprintf('http://%s/%s/index.html', $host, $bbs);
$cachefile = P2Util::cacheFileForDL($url);
$r = P2Util::fileDownload($url, $cachefile, array('disp_error' => true, 'use_tmp_file' => true));
if (!$r->is_success()) {
return false;
}
// <br><a href="http://www.2ch.net/">2ちゃんねる</a> BBS.CGI - 2007/11/14 (SpeedyCGI) +<a href="http://bbq.uso800.net/">BBQ</a> +BBM +Rock54/54M +Samba24=30 +ByeSaru=ON<br> ページのおしまいだよ。。と</body></html>
//$lines = preg_split("/\n/", trim($html));
if (!($lines = file($cachefile))) {
return false;
}
$count = count($lines);
$lasti = $count - 1;
if (preg_match('/ \\+Samba24=(\\d+) /', $lines[$lasti], $m)) {
return (int) $m[1];
}
return 0;
}
示例7: readBrdOnline
/**
* オンライン板リストを読み込む
*
* @static
* @access private
* @return array
*/
function readBrdOnline()
{
global $_conf;
if (!$_conf['brdfile_online']) {
return array();
}
$brd_menus = array();
$cachefile = P2Util::cacheFileForDL($_conf['brdfile_online']);
$noDL = false;
$isNewDL = false;
$read_html_flag = false;
$p2brdfile = BrdCtl::getP2BrdFile($cachefile);
// キャッシュがある場合
if (file_exists($p2brdfile)) {
// norefreshならDLしない
if (!empty($_GET['nr'])) {
$noDL = true;
// キャッシュの更新が指定時間以内ならDLしない
} elseif (filemtime($p2brdfile) > time() - 60 * 60 * $_conf['menu_dl_interval']) {
$noDL = true;
}
}
// DLしない
if ($noDL) {
// DLする
} else {
//echo "DL!<br>";//
$brdfile_online_res = P2Util::fileDownload($_conf['brdfile_online'], $cachefile, array('disp_error' => true, 'use_tmp_file' => true));
if ($brdfile_online_res and $brdfile_online_res->is_success() && $brdfile_online_res->code != '304') {
$isNewDL = true;
}
}
// html形式なら
if (preg_match('/html?$/', $_conf['brdfile_online'])) {
// 更新されていたら新規キャッシュ作成
if ($isNewDL) {
//echo "NEW!<br>"; //
$aBrdMenu = new BrdMenu();
$aBrdMenu->makeBrdFile($cachefile);
// .p2.brdファイルを生成
$brd_menus[] = $aBrdMenu;
$read_html_flag = true;
}
if (file_exists($p2brdfile)) {
$cache_brd = $p2brdfile;
} else {
$cache_brd = $cachefile;
}
} else {
$cache_brd = $cachefile;
}
if (!$read_html_flag) {
if ($data = file($cache_brd)) {
$aBrdMenu = new BrdMenu();
$aBrdMenu->setBrdMatch($cache_brd);
// パターンマッチ形式を登録
$aBrdMenu->setBrdList($data);
// カテゴリーと板をセット
if ($aBrdMenu->num) {
$brd_menus[] = $aBrdMenu;
} else {
P2Util::pushInfoHtml(sprintf("<p>p2 error: %s から板メニューを生成することはできませんでした。</p>\n", hs($cache_brd)));
}
} else {
P2Util::pushInfoHtml(sprintf("<p>p2 error: %s は読み込めませんでした。</p>\n", hs($cachefile)));
}
}
return $brd_menus;
}