Jump to navigation

You are currently browsing the monthly archives for December 2009

具有缓存功能的php rss类

  • Posted on December 30, 2009 at 11:08 am
<?PHP

/**
 * rss2 类
 *    具有缓存功能的rss2输出类
 * @author: 190890101@qq.com  花荣
 * @version: rss.class.php v0.0.1 2009/12/30
 * @usage:
 * $rss = new rss("GBK","花荣老师的博客","http://www.masalife.com","这里是描述", "2009-12-28 11:23:33", "en", $_SERVER['DOCUMENT_ROOT']."/cache/a.xml", 3600);
 * if ($rss->need_to_add_item())
 * {
 *    //read from mysql and add items;
 *    while(($row=mysql_fetch_array($r)) !== false)
 *    {
 *        $item['title'] = $row['fName'];
 *        $item['link'] = "http://www.masalife.com/post.php?pid=".$row['ID']."";
 *        $item['pubDate'] = $row['fPubDate'];
 *        $item['guid']  = $item['link'];
 *        $item['description'] = $item['content'];
 *        $this->add_item($item);
 *    }
 * }
 * echo $rss->show();
 **/
class rss
{

 protected $version="2.0";        //rss版本
 protected $encoding = "GBK";        //编码

 protected $channel_title = "";
 protected $channel_link = "";
 protected $channel_description = "";
 protected $channel_pubDate = "";
 protected $channel_language = "en";

 protected $items = array();        //item数组,来自外部的数据源
 protected $xml = "";            //最终生成的xml

 protected $cache_timeout = 3600;    //cache失效时间(秒)
 protected $cache_filename= "";        //cache文件
 protected $cache_valid = false;        //cache文件是否有效

 /**
 * 构造函数
 * @param $title
 * @param $link
 * @param $description
 * @param $pubDate
 * @param $language
 * @param $cache_filename    cache文件名
 * @param $cache_timeout    cache失效时间(秒)
 * @return none
 **/
 public function __construct($encoding, $title, $link, $description, $pubDate, $language, $cache_filename, $cache_timeout)
 {
 $this->encoding  = trim($encoding);
 $this->channel_title = trim($title);
 $this->channel_link = trim($link);
 $this->channel_description = trim($description);
 $this->channel_pubDate = trim($pubDate);
 $this->channel_language = trim($language);
 $this->cache_filename = trim($cache_filename);
 $this->cache_timeout = intval($cache_timeout);
 if ($this->cache_timeout==0) $this->cache_timeout = 3600;
 //检查cache文件是否有效
 $this->is_cache_valid();
 }

 /**
 * cache文件是否有效
 **/
 protected function is_cache_valid()
 {
 if (file_exists($this->cache_filename) && time() - filemtime($this->cache_filename) < $this->cache_timeout)
 {
 $this->cache_valid = true;
 }
 else
 {
 $this->cache_valid = false;
 }
 }

 /**
 * 是否需要添加item. cache文件已经失效的话,就需要从外部数据源添加item了
 * @return boolean
 **/

 public function need_to_add_item()
 {
 return !$this->cache_valid;
 }

 /**
 * 构造并返回xml
 * @param &$xml
 **/
 public function show(&$xml)
 {
 if ($this->cache_valid)
 {
 $this->read_from_file();
 }
 else
 {
 $this->make();
 $this->save_to_file();
 }
 $xml = $this->xml;
 }

 /**
 * 构造xml
 **/
 protected function make()
 {
 $s   =   "<?xml   version=\"1.0\"   encoding=\"".$this->encoding."\"   ?>\n<rss   version=\"".$this->version."\">   \n";  

 $s   .=   "<channel>\n";  
 $s   .=   "<title>{$this->channel_title}</title>\n";
 $s   .=   "<link>{$this->channel_link}</link>\n";  
 $s   .=   "<description>{$this->channel_description}</description>\n";  
 $s   .=   "<language>{$this->channel_language}</language>\n";  
 if   (!empty($this->pubDate))   {  
 $s   .=   "<pubDate>{$this->channel_pubDate}</pubDate>\n";  
 }  

 //   start   items  
 $count = count($this->items);
 for ($i=0; $i<$count; $i++)
 {
 $s   .=   "<item>\n";  
 $s   .=   "<title>{$this->items[$i]['title']}</title>\n";  
 $s   .=   "<link>{$this->items[$i]['link']}</link>\n";  
 $s   .=   "<pubDate>{$this->items[$i]['pubDate']}</pubDate>\n";                        
 $s   .=   "<guid>{$this->items[$i]['guid']}</guid>\n";                        
 $s   .=   "<description><![CDATA[{$this->items[$i]['description']}]]></description>\n";  
 $s   .=   "</item>\n";  
 }  

 //   close   channel  
 $s   .=   "</channel>\n</rss>";  
 $this->xml =   $s;   

 }

 /**
 * 添加item
 * item需要有title, link, pubDate, guid, description这几个标签
 * @param $item    数组
 **/
 public function add_item($item=array())
 {
 $this->items[] = $item;
 }

 /**
 * 保存xml到cache文件
 **/
 protected function save_to_file()
 {
 file_put_contents($this->cache_filename, $this->xml, LOCK_EX);
 }

 /**
 * 从cache文件中读出xml
 **/
 protected function read_from_file()
 {
 $this->xml = file_get_contents($this->cache_filename);
 }

}

discuz论坛的同时在线人数究竟是什么意思

  • Posted on December 29, 2009 at 10:29 pm

使用过diccuz论坛的同学们都知道,DZ会进行在线人数的统计:
在线会员 – 共 3518 人在线  最高记录是 5551 于 2007-7-2.

那么这个在线人数究竟是什么意思呢?

可以肯定的是:它肯定不是服务器的并发连接数!

经过群里面的讨论,乔大妈最终指出:

这个在线人数是半小时的数据。

半小时5000人的话,并发大概83,日均PV300万左右了。

我不知道她是怎样计算出来的。。。

使用JQuery取得html中所有display为none的元素

  • Posted on December 28, 2009 at 8:23 pm

<html><body><script type=”text/javascript” src=”http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js”></script>
<div style=”color:red;display:none”>1</div>
<div style=”color:yellow;display:block”>2</div>
<div style=”color:blue;display:inline”>3</div>
<script type=”text/javascript”>
<!–
$(function()
{
$(“div”).filter(
function()
{
return $(this).css(‘display’)!=’none’;
}
).each(
function()
{
alert($(this).text());
}
);
});
//–>
</script>
</body></html>

Jquery 和 JS 配合操作

  • Posted on December 28, 2009 at 8:03 pm

<div>
<li>
<span>count:</span>
403
</li>
</div>

用js/jq取出403

<script src=./jquery.js></script>
<script type=”text/javascript”>
//jquery本身不支持textNode的选取
$(
function()
{
alert($(“div.extend > li”).get(0).childNodes.item(jQuery.support.boxModel?2:1).nodeValue);
}
);
</script>

或者

alert($($($(“div.extend > li”).attr(‘childNodes’)).get(jQuery.support.boxModel?2:1)).get(0).nodeValue);}

2010年:沪深股市会有大暴跌

  • Posted on December 23, 2009 at 3:55 pm

1、您现在的仓位怎么样?空仓,半仓,还是满仓?

答:满仓。满仓认购新股,而且这样做有一段时间了,收益还可以。

2、您最近准备买二级市场的股票吗?是长线买还是短线买?如果买,现在有目标吗?

答:准备在28到30号这三个交易日中的低点少量买一些股票,在元旦开市后卖出!目标是6006**。

3、您认为3000点能守住吗?3000点是底部吗?

答:我认为3000点守不住,3000点不是底部,而且距离底部还比较远。

4、您认为最近的总体操作策略是什么?

答:逢高减仓,逢低观望,暴跌做短线反弹。

5、明年的市场你看好吗?为什么?

答:非常看好明年的市场,有发大财的机会。因为明年沪深股市可能存在着一次暴跌,而每次暴跌之后都有发大财的机会。

6、为什么你认为市场存在着一次暴跌?

答:市场市盈率太高,市场活跃性机构急剧减少,股指期货即将设立,市场进入调整周期,上市公司的基本面将面临考验,指标股有巨额再融资需求。

7、明年您看好那些行业的股票,看空那些行业的股票?

答:看好严重超跌、长线超跌的筹码集中股;看空银行、房地产、钢铁、石化、建材、有色、航空、交通运输、汽车、新能源、外贸、创业板、中小板等等。

8、对今天的大盘走势,您怎么看?

答:正常的技术性反弹,也许明天还会弹一弹,但是力度不会强。近期市场最危险的因素是缩量,这代表人气在散,人气一旦散了,市场的再次走强是需要一定的空间和时间的。

9、您对我们报纸的中小投资者有什么可说的吗?

答:没有。股市中的人,一切都是命运,说了也没有用。

google map使用中遇到的二个问题

  • Posted on December 21, 2009 at 4:47 pm

问题一:

使用 setZoom(level:Number) 重设地图的缩放级别时,如果传入的参数为字符串,比如”12″, 那么缩放无效。必须传入整形的参数。

问题二:

google地图js的编码是utf-8的, 如果你的页面是gbk的,必须显式地指出这一点:

<script src="http://ditu.google.cn/maps?file=api&amp;v=2&amp;key=ABQIAAAAzr2EBOXUKnm_jVnk0OJI7xSosDVG8KKPE1-m51RBrvYughuyMxQ-i1QfUnH94QxWIa6N4U6MouMmBA&hl=zh-CN"
 charset="utf-8" >
</script>

否则在IE6中会出错的。

这两周操作的简单想法

  • Posted on December 21, 2009 at 4:43 pm

1、本周市场新股扩容进入高潮,共有包含两只大盘股的11只新股发行。在这种情况下,如果沪市的总体成交量不能维持在1200亿以上,市场只有在平盘和下跌这两种方式中选择。应该说,今天的市场走势还是可以的,盘中存在着不识时务的机构抵抗动作,只是不知道这股资金力量到底能够坚持多久。

世界股史证明,市场的趋势一旦形成,投资者只有顺应它,逆市抵坑没有意义,只有让损失更大。近期的市场下跌,是有多种因素集合而成的,比如说:房地产的调控,资金的即将抽紧,基本面的不明朗,新股的坚决发行等等。而且下跌过程中缩量,以及热点消失,水到渠成的已经基本形成。

之所以说基本形成,而不是确立形成,主要是120日线在近几个月中一直形成对沪市股指的支撑,前面已经有了四次。近几天是第五次,因而有一些机构还幻想着能够120日线再次对大盘形成托力,为维护新股发行,指标股也给多方了一些信心。后市一旦120日线告破,或者指标的护盘资金短缺,或者新利空出现,多杀多的局面将可能形成。

2、今天的盘面,在个股演绎的规律特点方面有一些新特点:前几次每当大盘明显弱势的时候,中国石化和中信银行是领头的反弹力量,而今天这两只股票明显不行了。表现稍微强势的品种是房地产股,而房地产股正是上周末的主跌股。强势股歇菜,弱势股反弹,这说明反弹将是弱势的,短命的。

但是由于目前沪市指数已经远离10日均线,大多数投资者依然有惜售情绪存在,指数立刻加速下跌的可能性也比较小。更大的可能是小涨下跌,等待10均线的下移。因此,在近几天的操作,一方面想办法提高新股的中签率,另一方面要观察10日均线与指数波动的联系和规律。

下一个需要留意的短线机会,应该是2009年的最后两个交易日,也就是下周。如果本周指数在往下探探,这个机会可能性就更大一些,更容易操作一些,但对于多数人来讲还是有难度的。本周不打算动了,等这波新股高潮过后,看能不能在上海本地世博概念上做个超短线,挣个新年彩钱!

不是股民无能,而是庄家狡猾

  • Posted on December 18, 2009 at 2:05 pm

1、最近的市场走势挺有规律的,用一句话概括:稳住大盘发新股!时至年底与圣诞节,方方面面需要业绩和圣诞礼物,大量高价发行新股无疑是最简单的大家都高兴的事情。无形之手高兴,融资者高兴,中签的高兴,券商高兴。被套的是傻子,傻子懂得不高兴吗? 那就是高兴。

其实,依然加班死扛的股民也不能说算是傻子,因为指数并没有跌啊!殊不知这是大庄家最擅长的传统经典把戏。每当指数面临破位的时候,即时的发动大盘股稳住指数,稳住持股者的心态,甚至还可以把部分半仓的人弄成满仓。其实,大部分个股的重心在下移,温水煮蛙!等新股大功告成之时,也就是剥蛙皮做战鼓之日。

有一种爱叫放手,有一种炒叫轻仓!多说也无用,不是股民无能,而是庄家狡猾!大庄家太狡猾了。

2、把市场看清楚了,并不是为了当逃兵,而是更好的指导自己的行动,因势利导。新股申购是一种很好的韬光养晦的战术。在资金不是很充足的情况下,不要申购券商研究员在媒体上看好的那些新股,也不要申购价格最低的新股,而要申购价格第二高的,因为价格最高的已经聚集了一些聪明人。

二级市场也有一些鸡肋机会。这种时机应该在大盘指数处于危机之时,目标应该是能稳住大盘的指标股。庄家狡猾,我们应该更狡猾,敌变我变,少量仓位短线操作,让大庄家做运输大队长。用<三枪>里的话:这是咱们自己的工钱!但是,不能太贪,太贪了会遇到来抓“拨桷”的武士的。

熟悉基金风格的侠客,也可以注意一下年底喜欢做市值的重仓股,帮那些喜欢投机的基金经理做一把短线!

windows上彻底删除oracle

  • Posted on December 15, 2009 at 8:44 pm

     1、管理工具->服务   停止所有Oracle开头的服务。
     2、插入安装光盘,自动安装开始,在里面卸装所有Oracle产品
     3、运行regedit,删除HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE

     4、运行regedit,打开HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services ,删除所有Oracle开头的项/目录。
     5、运行regedit,
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application,
删除所有Oracle开头的项/目录。
     6、删除C:\Program Files\Oracle整个目录
     7、删除与Oracle有关的文件,选择Oracle所在的缺省目录C:\Oracle,删除这个目录及所有子目录

wordpress中的几类RSS地址

  • Posted on December 14, 2009 at 5:22 pm

WORDPRESS中的RSS地址大致有如下几类:

//默认RSS地址

$modify_rss2_url = get_bloginfo(“rss2_url”);
if ( is_single() || is_page() ) {

// 单篇BLOG或者PAGE页的RSS,其实是此POST评论的RSS。
$modify_rss2_url= get_post_comments_feed_link( intval(get_query_var(‘p’)) );
} elseif ( is_category() ) {

// 某分类的RSS地址
$cat_id = intval( get_query_var(‘cat’) );
$modify_rss2_url = get_category_feed_link( $cat_id );
} elseif ( is_tag() ) {

//某TAG的RSS地址
$tag_id = intval( get_query_var(‘tag_id’) );
$tag = get_tag( $tag_id );
$modify_rss2_url = get_tag_feed_link( $tag_id );
} elseif ( is_author() ) {

//某作者的RSS地址
$author_id = intval( get_query_var(‘author’) );
$modify_rss2_url = get_author_feed_link( $author_id );
} elseif ( is_search() ) {

//某搜索结果的RSS地址。
$modify_rss2_url = get_search_feed_link();
}

Top