<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>LAVA WORLD</title>
	
	<link>http://www.vpnall.com</link>
	<description>又一个森林Q群:52130297(IT聊天群)</description>
	<lastBuildDate>Thu, 11 Mar 2010 12:07:01 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/LavaWorld" /><feedburner:info uri="lavaworld" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>今天去植树</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/qx11gR6afGU/</link>
		<comments>http://www.vpnall.com/2010/03/%e4%bb%8a%e5%a4%a9%e5%8e%bb%e6%a4%8d%e6%a0%91/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 09:12:02 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[生活]]></category>
		<category><![CDATA[植树]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=690</guid>
		<description><![CDATA[几十号人在一个小山头植树,山头比较陡.植了十来颗吧&#8230;支持环保绿化~~不知道上一年种的还生不..
“植树节”是一些国家以法律形式规定的以宣传森林效益，并动员群众参加造林为活动内容... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/EdEVw291qbQXP2owiSjUqybKeco/0/da"><img src="http://feedads.g.doubleclick.net/~a/EdEVw291qbQXP2owiSjUqybKeco/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/EdEVw291qbQXP2owiSjUqybKeco/1/da"><img src="http://feedads.g.doubleclick.net/~a/EdEVw291qbQXP2owiSjUqybKeco/1/di" border="0" ismap="true"></img></a></p><p>几十号人在一个小山头植树,山头比较陡.植了十来颗吧&#8230;支持环保绿化~~不知道上一年种的还生不..</p>
<blockquote><p>“植树节”是一些国家以法律形式规定的以宣传森林效益，并动员群众参加造林为活动内容的节日。按时间长短可分为植树日、植树周或植树月，总称植树节。通过这种活动，激发人们爱林、造林的感情，提高人们对森林功用的认识，促进国土绿化，达到爱林护林和扩大森林资源、改善生态环境的目的。是为了动员全民植树而规定的节日，也因为这是孙中山先生的纪念日。中国曾于1915年由政府颁令规定清明节为植树节即3月12日。后来到了1928年的4月7日，民国政府颁布了植树令：以后旧历清明植树节应改为总理逝世几年植树式。”民国政府之所以颁布这道令，是因为孙中山先生幼年就对“树艺牧畜”十分热爱的缘故。他在海外留学时，经常利用假期回故乡种植桑树。1925年3月，孙中山逝世于南京。1979年2月23日，第五届全国人大常务委员会第六次会议决定，仍以3月12日为中国的植树节，以鼓励全国各族人民植树造林，绿化祖国，改善环境，造福子孙后代。</p></blockquote>

	标签：<a href="http://www.vpnall.com/tag/%e6%a4%8d%e6%a0%91/" title="植树" rel="tag">植树</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li>无相关日志</li>
	</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/qx11gR6afGU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/03/%e4%bb%8a%e5%a4%a9%e5%8e%bb%e6%a4%8d%e6%a0%91/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/03/%e4%bb%8a%e5%a4%a9%e5%8e%bb%e6%a4%8d%e6%a0%91/</feedburner:origLink></item>
		<item>
		<title>Centos上YUM安装Apache+php+Mysql+phpMyAdmin</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/LLC62St_C7k/</link>
		<comments>http://www.vpnall.com/2010/03/centos%e4%b8%8ayum%e5%ae%89%e8%a3%85apachephpmysqlphpmyadmin/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 12:45:54 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[系统]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[phpMyAdmin]]></category>
		<category><![CDATA[yum]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=687</guid>
		<description><![CDATA[Centos 里的 yum 在线安装很慢.以下是替换为中国CentOS镜像服务器!
中国官方镜像网站: http://centos.ustc.edu.cn/
/* 使用说明 */
cd /etc/yum.repos.d[进入yum.repos.d目录]
mv CentOS-Base.repo  CentOS-Base.repo.save[修改... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/f-MjhkwB3vzTfa051IcSRAJxMjc/0/da"><img src="http://feedads.g.doubleclick.net/~a/f-MjhkwB3vzTfa051IcSRAJxMjc/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/f-MjhkwB3vzTfa051IcSRAJxMjc/1/da"><img src="http://feedads.g.doubleclick.net/~a/f-MjhkwB3vzTfa051IcSRAJxMjc/1/di" border="0" ismap="true"></img></a></p><p>Centos 里的 yum 在线安装很慢.以下是替换为中国CentOS镜像服务器!<br />
中国官方镜像网站: <a href="http://centos.ustc.edu.cn/">http://centos.ustc.edu.cn/<br />
</a>/* 使用说明 */<br />
cd /etc/yum.repos.d[进入yum.repos.d目录]<br />
mv CentOS-Base.repo  CentOS-Base.repo.save[修改源文件名称备份]<br />
wget http://centos.ustc.edu.cn/CentOS-Base.repo.5[下载]<br />
mv CentOS-Base.repo.5 CentOS-Base.repo[下载后的文件更名]</p>
<p>1. 更新系统内核到最新.<br />
yum -y update<br />
系统更新后,如果yum安装时提示错误信息,请执行以下命令修复.<br />
rpm –import  /etc/pki/rpm-gpg/RPM-GPG-KEY*</p>
<p>2. 安装Apahce, PHP, Mysql, 以及php连接mysql库组件</p>
<p>yum -y install httpd php mysql mysql-server php-mysql</p>
<p><em>//安装mysql扩展<br />
</em>yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql<br />
<em>//安装php的扩展</em><br />
yum -y install php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc<br />
<em>//安装apache扩展<br />
</em>yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql<br />
<strong><br />
一次性粘贴安装:<br />
</strong>yum -y install httpd php mysql mysql-server php-mysql httpd-manual mod_ssl mod_perl mod_auth_mysql php-mcrypt php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc mysql-connector-odbc mysql-devel libdbi-dbd-mysql</p>
<p>3. 启动服务配置</p>
<p>/sbin/chkconfig httpd on [设置apache为自启动]<br />
/sbin/chkconfig –-add mysqld [mysql服务]<br />
/sbin/chkconfig mysqld on [mysqld服务]</p>
<p>/sbin/service httpd start [自启动 httpd 服务]<br />
/sbin/service mysqld start [自启动mysqld服务]</p>
<p>4.设置mysql数据库root帐号密码。<br />
mysqladmin -u root password ‘新密码’ [引号内填密码]</p>
<p>让mysql数据库更安全</p>
<p>复制内容到剪贴板</p>
<p>代码:</p>
<p>mysql -u root -p [此时会要求你输入刚刚设置的密码，输入后回车即可</p>
<p>mysql&gt; DROP DATABASE test; [删除test数据库]</p>
<p>mysql&gt; DELETE FROM mysql.user WHERE user = ”; [删除匿名帐户]</p>
<p>mysql&gt; FLUSH PRIVILEGES; [重载权限]</p>
<p>5. 防火墙配置<br />
a.添加.允许访问端口{21: ftp, 80: http}.<br />
iptables -I RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 21 -j ACCEPT<br />
iptables -I RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT<br />
郁闷.请把上面复制到记事本里,然后把–state这段–改成小写的,再操作.否则粘贴时会出现乱码.<br />
b.关闭防火墙{不推荐}.<br />
service iptables stop<br />
c.重置加载防火墙<br />
service iptables restart</p>
<p>6. 安装phpMyAdmin<br />
进入<a href="http://www.phpmyadmin.net/" target="_blank">phpMyAdmin</a>官方下载最新版本后，上传到你的网站目录下，然后进行配置。只需几步即可搞定。<br />
a. config.sample.inc.php更名为config.inc.php;<br />
b. 打开config.inc.php文件，进行以下修改;<br />
// $cfg['Servers'][$i]['controluser'] = ‘pma’;<br />
// $cfg['Servers'][$i]['controlpass'] = ‘pmapass’;<br />
// $cfg['Servers'][$i]['pmadb'] = ‘phpmyadmin’;<br />
// $cfg['Servers'][$i]['bookmarktable'] = ‘pma_bookmark’;<br />
// $cfg['Servers'][$i]['relation'] = ‘pma_relation’;<br />
// $cfg['Servers'][$i]['table_info'] = ‘pma_table_info’;<br />
// $cfg['Servers'][$i]['table_coords'] = ‘pma_table_coords’;<br />
// $cfg['Servers'][$i]['pdf_pages'] = ‘pma_pdf_pages’;<br />
// $cfg['Servers'][$i]['column_info'] = ‘pma_column_info’;<br />
// $cfg['Servers'][$i]['history'] = ‘pma_history’;<br />
// $cfg['Servers'][$i]['designer_coords'] = ‘pma_designer_coords’;</p>
<p>去掉每行前面的//;<br />
c.$cfg['blowfish_secret'] = ”; |修改为|  $cfg['blowfish_secret'] = ‘http’;<br />
d.$cfg['Servers'][$i]['controluser'] = ‘pma’; |把’pma’修改为你的帐号|<br />
e.$cfg['Servers'][$i]['controlpass'] = ‘pmapass’;  |把’pmapass设置为你的mysql登录密码|<br />
f. $cfg['blowfish_secret'] = ”; | 添加短语密码例如：$cfg['blowfish_secret'] = ‘onohot’|</p>
<p>参考网站：<a href="http://www.fengyihot.com/blog/?p=169">http://www.fengyihot.com/blog/?p=169</a></p>
<p><a href="http://www.zeevin.cn/?p=113">http://www.zeevin.cn/?p=113</a></p>

	标签：<a href="http://www.vpnall.com/tag/apache/" title="apache" rel="tag">apache</a>, <a href="http://www.vpnall.com/tag/centos/" title="centos" rel="tag">centos</a>, <a href="http://www.vpnall.com/tag/mysql/" title="mysql" rel="tag">mysql</a>, <a href="http://www.vpnall.com/tag/php/" title="php" rel="tag">php</a>, <a href="http://www.vpnall.com/tag/phpmyadmin/" title="phpMyAdmin" rel="tag">phpMyAdmin</a>, <a href="http://www.vpnall.com/tag/yum/" title="yum" rel="tag">yum</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.vpnall.com/2009/03/nginx_apache_mysql_php_memcached_squid/" title="[转]利用nginx+apache+mysql+php+memcached+squid搭建门户网站 (2009-03-09)">[转]利用nginx+apache+mysql+php+memcached+squid搭建门户网站</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/04/yum%e9%94%99%e8%af%afmetadata-file-does-not-match-checksum%e8%a7%a3%e5%86%b3%e6%96%b9%e6%b3%95/" title="YUM错误Metadata file does not match checksum解决方法 (2009-04-07)">YUM错误Metadata file does not match checksum解决方法</a> (0)</li>
	<li><a href="http://www.vpnall.com/2010/02/php%e5%8d%95%e4%be%8b%e6%a8%a1%e5%bc%8f%e7%9a%84mysql%e6%95%b0%e6%8d%ae%e8%ae%bf%e9%97%ae%e7%b1%bb/" title="php单例模式的mysql数据访问类 (2010-02-08)">php单例模式的mysql数据访问类</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/ssh2-install-centos-xampp/" title="Centos+XAMPP下编译ssh2.so支持 (2009-03-04)">Centos+XAMPP下编译ssh2.so支持</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/about-yii-php-framework/" title="高性能的PHP框架：Yii PHP Framework (2009-03-18)">高性能的PHP框架：Yii PHP Framework</a> (5)</li>
	<li><a href="http://www.vpnall.com/2009/05/%e9%98%b2%e6%ad%a2mysql%e8%bf%9e%e6%8e%a5%e6%95%b0%e8%bf%87%e5%a4%9a%e5%af%bc%e8%87%b4%e5%b4%a9%e6%ba%83/" title="防止mysql连接数过多导致崩溃 (2009-05-07)">防止mysql连接数过多导致崩溃</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/04/%e9%85%8d%e7%bd%aersync%e5%81%9a%e7%b3%bb%e7%bb%9f%e8%87%aa%e5%8a%a8%e5%bc%82%e5%9c%b0%e5%a4%87%e4%bb%bd/" title="配置rsync做系统自动异地备份 (2009-04-06)">配置rsync做系统自动异地备份</a> (0)</li>
	<li><a href="http://www.vpnall.com/2010/01/%e8%a7%a3%e5%86%b3apache%e5%90%af%e5%8a%a8-os-10022%e6%8f%90%e4%be%9b%e4%ba%86%e4%b8%80%e4%b8%aa%e6%97%a0%e6%95%88%e7%9a%84%e5%8f%82%e6%95%b0/" title="解决Apache启动 (OS 10022)提供了一个无效的参数 (2010-01-25)">解决Apache启动 (OS 10022)提供了一个无效的参数</a> (0)</li>
</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/LLC62St_C7k" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/03/centos%e4%b8%8ayum%e5%ae%89%e8%a3%85apachephpmysqlphpmyadmin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/03/centos%e4%b8%8ayum%e5%ae%89%e8%a3%85apachephpmysqlphpmyadmin/</feedburner:origLink></item>
		<item>
		<title>RewriteRule重写规则的语法：Apache的Mod_rewrite</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/5kn_2sYN-vE/</link>
		<comments>http://www.vpnall.com/2010/03/rewriterule%e9%87%8d%e5%86%99%e8%a7%84%e5%88%99%e7%9a%84%e8%af%ad%e6%b3%95%ef%bc%9aapache%e7%9a%84mod_rewrite/#comments</comments>
		<pubDate>Tue, 09 Mar 2010 05:58:44 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[代码]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[Mod_rewrite]]></category>
		<category><![CDATA[RewriteRule]]></category>
		<category><![CDATA[重写]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=683</guid>
		<description><![CDATA[很少用,有人问,顺便看了一下
一条RewriteRule指令，定义一条重写规则，规则间的顺序非常重要。对Apache1.2及以后的版本，模板(pattern)是一个POSIX正则式，用以匹配当前的URL。当前的URL不一定是用... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/vUQAFpQ4achmeO38QJQC7xI98u4/0/da"><img src="http://feedads.g.doubleclick.net/~a/vUQAFpQ4achmeO38QJQC7xI98u4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/vUQAFpQ4achmeO38QJQC7xI98u4/1/da"><img src="http://feedads.g.doubleclick.net/~a/vUQAFpQ4achmeO38QJQC7xI98u4/1/di" border="0" ismap="true"></img></a></p><p>很少用,有人问,顺便看了一下</p>
<p>一条RewriteRule指令，定义一条重写规则，规则间的顺序非常重要。对Apache1.2及以后的版本，模板(pattern)是一个POSIX正则式，用以匹配当前的URL。当前的URL不一定是用记最初提交的URL，因为可能用一些规则在此规则前已经对URL进行了处理。<br />
对mod_rewrite来说，！是个合法的模板前缀，表示“非”的意思，这对描述“不满足某种匹配条件”的情况非常方便，或用作最后一条默认规则。当使用！时，不能在模板中有分组的通配符，也不能做后向引用。<br />
当匹配成功后，Substitution会被用来替换相应的匹配，它除了可以是普通的字符串以外，还可以包括：<br />
1. $N,引用RewriteRule模板中匹配的相关字串，N表示序号,N=0..9<br />
2. %N,引用最后一个RewriteCond模板中匹配的数据，N表示序号<br />
3. %{VARNAME},服务器变量<br />
4. ${mapname:key|default},映射函数调用<br />
这些特殊内容的扩展，按上述顺序进行。<br />
一个URL的全部相关部分都会被Substitution替换，而且这个替换过程会一直持续到所有的规则都被执行完，除非明确地用L标志中断处理过程。<br />
当susbstitution有”-”前缀时，表示不进行替换，只做匹配检查。<br />
利用RewriteRule，可定义含有请求串(Query String)的URL，此时只需在Sustitution中加入一个？，表示此后的内容放入QUERY_STRING变量中。如果要清空一个QUERY_STRING变量，只需要以？结束Substitution串即可。<br />
如果给一个Substitution增加一个</p>
<p><span style="font-family: Verdana; font-size: x-small;"><br />
1. &#8217;redirect|R [=code]&#8216; (强制重定向)<br />
给当前的URI增加前缀</p>
<p><span style="font-family: Verdana; font-size: x-small;"><br />
2. &#8217;forbidden|F&#8217; (强制禁止访问URL所指的资源)<br />
立即返回状态值403 (FORBIDDEN)的应答包。将这个标志与合适的RewriteConds 联合使用，可以阻断访问某些URL。<br />
3. &#8217;gone|G&#8217; (强制返回URL所指资源为不存在(gone))<br />
立即返回状态值410 (GONE)的应答包。用这个标志来标记URL所指的资源永久消失了.<br />
4. # &#8216;proxy|P&#8217; (强制将当前URL送往代理模块（proxy module）)<br />
这个标志，强制将substitution当作一个发向代理模块的请求，并立即将共送往代理模块。因此，必须确保substitution串是一个合法的URI (如, 典型的情况是以</p>
<p><span style="font-family: Verdana; font-size: x-small;"><br />
5. &#8217;last|L&#8217; (最后一条规则)<br />
中止重写流程，不再对当前URL施加更多的重写规则。这相当于perl的last命令或C的break命令。<br />
6. &#8217;next|N&#8217; (下一轮)<br />
重新从第一条重写规则开始执行重写过程，新开的过程中的URL不应当与最初的URL相同。 这相当于Perl的next命令或C的continue命令. 千万小心不要产生死循环。<br />
7. # &#8216;chain|C&#8217; (将当前的规则与其后续规则綑绑(chained))<br />
当规则匹配时，处理过程与没有綑绑一样；如果规则不匹配，则綑绑在一起的后续规则也不在检查和执行。<br />
8. &#8217;type|T=MIME-type&#8217; (强制MIME类型)<br />
强制将目标文件的MIME-type为某MIME类型。例如，这可用来模仿mod_alias模块对某目录的ScriptAlias指定，通过强制将该目录下的所有文件的类型改为 “application/x-httpd-cgi”.<br />
9. &#8217;nosubreq|NS&#8217; (used only if no internal sub-request )<br />
这个标志强制重写引擎跳过为内部sub-request的重写规则.例如，当mod_include试图找到某一目录下的默认文件时 (index.xxx)，sub-requests 会在Apache内部发生. Sub-requests并非总是有用的，在某些情况下如果整个规则集施加到它上面，会产生错误。利用这个标志可排除执行一些规则。<br />
10. &#8217;nocase|NC&#8217; (模板不区分大小写)</p>
<p>这个标志会使得模板匹配当前URL时忽略大小写的差别。<br />
11. &#8217;qsappend|QSA&#8217; (追加请求串(query string))<br />
这个标志，强制重写引擎为Substitution的请求串追加一部分串，则不是替换掉原来的。借助这个标志，可以使用一个重写规则给请求串增加更多的数据。<br />
12. &#8217;noescape|NE&#8217; (不对输出结果中的特殊字符进行转义处理)<br />
通常情况下，mod_write的输出结果中，特殊字符（如&#8217;%', &#8216;$&#8217;, &#8216;;&#8217;, 等)会转义为它们的16进制形式(如分别为&#8217;%25&#8242;, &#8216;%24&#8242;, and &#8216;%3B&#8217;）。这个标志会禁止mod_rewrite对输出结果进行此类操作。 这个标志只能在 Apache 1.3.20及以后的版本中使用。<br />
13. &#8217;passthrough|PT&#8217; (通过下一个处理器)<br />
这个标志强制重写引擎用filename字段的值来替换内部request_rec数据结构中uri字段的值。. 使用这个标志，可以使后续的其它URI－to-filename转换器的Alias、ScriptAlias、Redirect等指令，也能正常处理RewriteRule指令的输出结果。用一个小例子来说明它的语义：如果要用mod_rewrite的重写引擎将/abc转换为/def,然后用mod_alas将/def重写为ghi，则要：<br />
RewriteRule ^/abc(.*) /def$1 [PT]<br />
Alias /def /ghi<br />
如果PT标志被忽略，则mod_rewrite也能很好完成工作,如果., 将 uri=/abc/&#8230; 转换为filename=/def/&#8230; ，完全符合一个URI-to-filename转换器的动作。接下来 mod_alias 试图做 URI-to-filename 转换时就会出问题。<br />
注意:如果要混合都含有URL－to-filename转换器的不同的模块的指令，必须用这个标志。最典型的例子是mod_alias和mod_rewrite的使用。<br />
14. &#8217;skip|S=num&#8217; (跳过后面的num个规则)<br />
当前规则匹配时，强制重写引擎跳过后续的num个规则。用这个可以来模仿if-then-else结构：then子句的最后一条rule的标志是skip=N，而N是else子句的规则条数。<br />
15. &#8217;env|E=VAR:VAL&#8217; (设置环境变量)<br />
设置名为VAR的环境变量的值为VAL,其中VAL中可以含有正则式的后向引用($N或%N)。这个标志可以使用多次，以设置多个环境变量。这儿设置的变量，可以在多种情况下被引用，如在XSSI或CGI中。另外，也可以在RewriteCond模板中以%{ENV:VAR}的形式被引用。<br />
16.</p>
<p><span style="font-family: Verdana; font-size: x-small;"> 注意：一定不要忘记，在服务器范围内的配置文件中，模板(pattern)用以匹配整个URL;而在目录范围内的配置文件中，目录前缀总是被自动去掉后再进行模板匹配的，且在替换完成后自动再加上这个前缀。这个功能对很多种类的重写是非常重要的，因为如果没有去前缀，则要进行父目录的匹配，而父目录的信息并不是总能得到的。一个例外是，当substitution中有http://打头时，则不再自动增加前缀了，如果P标志出现，则会强制转向代理。<br />
</span></p>
<p><span style="font-family: Verdana; font-size: x-small;">注意：如果要在某个目录范围内启动重写引擎，则需要在相应的目录配置文件中设置“RewriteEngine on”，且目录的“Options FollowSymLinks”必须设置。如果管理员由于安全原因没有打开FollowSymLinks，则不能使用重写引擎。</span></p>
<p></span></span></span></p>
<p><span style="font-family: Verdana; font-size: x-small;">http://hostname</span><span style="font-family: Verdana; font-size: x-small;">开头)，否则会从代理模块得到一个错误. 这个标志，是ProxyPass指令的一个更强劲的实现，将远程请求(remote stuff)映射到本地服务器的名字空间(namespace)中来。<br />
注意，使用这个功能必须确保代理模块已经编译到Apache 服务器程序中了. 可以用“httpd -l ”命令，来检查输出中是否含有mod_proxy.c来确认一下。如果没有，而又需要使用这个功能，则需要重新编译&#8220;httpd&#8221;程序并使用mod_proxy有效。</span><span style="font-family: Verdana; font-size: x-small;">http://thishost[:thisport]/</span><span style="font-family: Verdana; font-size: x-small;">， 从而生成一个新的URL，强制生成一个外部重定向(external redirection，指生的URL发送到客户端，由客户端再次以新的URL发出请求，虽然新URL仍指向当前的服务器). 如果没有指定的code值，则HTTP应答以状态值302 (MOVED TEMPORARILY)，如果想使用300-400（不含400）间的其它值可以通过在code的位置以相应的数字指定，也可以用标志名指定： temp (默认值), permanent, seeother.</span></p>
<p><span style="font-family: Verdana; font-size: x-small;">注意，当使用这个标志时，要确实substitution是个合法的URL，这个标志只是在URL前增加<span style="font-family: Verdana; font-size: x-small;">http://thishost[:thisport]/</span><span style="font-family: Verdana; font-size: x-small;">前缀而已，重写操作会继续进行。如果要立即将新URL重定向，用L标志来中重写流程。 </span><span style="font-family: Verdana; font-size: x-small;">http://thishost[:port</span><span style="font-family: Verdana; font-size: x-small;">]的前缀，则mod_rewrite会自动将此前缀去掉。因此，利用</span><span style="font-family: Verdana; font-size: x-small;">http://thisthost</span><span style="font-family: Verdana; font-size: x-small;">做一个无条件的重定向到自己，将难以奏效。要实现这种效果，必须使用R标志。<br />
Flags是可选参数，当有多个标志同时出现时，彼此间以逗号分隔。</span></span></p>

	标签：<a href="http://www.vpnall.com/tag/apache/" title="apache" rel="tag">apache</a>, <a href="http://www.vpnall.com/tag/mod_rewrite/" title="Mod_rewrite" rel="tag">Mod_rewrite</a>, <a href="http://www.vpnall.com/tag/rewriterule/" title="RewriteRule" rel="tag">RewriteRule</a>, <a href="http://www.vpnall.com/tag/%e9%87%8d%e5%86%99/" title="重写" rel="tag">重写</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.vpnall.com/2010/01/%e8%a7%a3%e5%86%b3apache%e5%90%af%e5%8a%a8-os-10022%e6%8f%90%e4%be%9b%e4%ba%86%e4%b8%80%e4%b8%aa%e6%97%a0%e6%95%88%e7%9a%84%e5%8f%82%e6%95%b0/" title="解决Apache启动 (OS 10022)提供了一个无效的参数 (2010-01-25)">解决Apache启动 (OS 10022)提供了一个无效的参数</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/nginx_apache_mysql_php_memcached_squid/" title="[转]利用nginx+apache+mysql+php+memcached+squid搭建门户网站 (2009-03-09)">[转]利用nginx+apache+mysql+php+memcached+squid搭建门户网站</a> (0)</li>
	<li><a href="http://www.vpnall.com/2010/03/centos%e4%b8%8ayum%e5%ae%89%e8%a3%85apachephpmysqlphpmyadmin/" title="Centos上YUM安装Apache+php+Mysql+phpMyAdmin (2010-03-10)">Centos上YUM安装Apache+php+Mysql+phpMyAdmin</a> (0)</li>
</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/5kn_2sYN-vE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/03/rewriterule%e9%87%8d%e5%86%99%e8%a7%84%e5%88%99%e7%9a%84%e8%af%ad%e6%b3%95%ef%bc%9aapache%e7%9a%84mod_rewrite/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/03/rewriterule%e9%87%8d%e5%86%99%e8%a7%84%e5%88%99%e7%9a%84%e8%af%ad%e6%b3%95%ef%bc%9aapache%e7%9a%84mod_rewrite/</feedburner:origLink></item>
		<item>
		<title>创业机会验证:高校团购平台</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/RHOvYECQTsE/</link>
		<comments>http://www.vpnall.com/2010/03/%e5%88%9b%e4%b8%9a%e6%9c%ba%e4%bc%9a%e9%aa%8c%e8%af%81%e9%ab%98%e6%a0%a1%e5%9b%a2%e8%b4%ad%e5%b9%b3%e5%8f%b0/#comments</comments>
		<pubDate>Tue, 09 Mar 2010 05:57:32 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[营销]]></category>
		<category><![CDATA[创业]]></category>
		<category><![CDATA[平台]]></category>
		<category><![CDATA[高校团购]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=681</guid>
		<description><![CDATA[今天看了stone分享的一篇文章你怎麼確定這是一個創業的好機會？
现在来验证一下校园团购这平台个项目是否可行.
先分析一下大学生人群的特点:
a.相对集中,都是住校.距离应该在2KM以内,十分... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/wtFmAuP2cDavA4DJciE0hZraKOQ/0/da"><img src="http://feedads.g.doubleclick.net/~a/wtFmAuP2cDavA4DJciE0hZraKOQ/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/wtFmAuP2cDavA4DJciE0hZraKOQ/1/da"><img src="http://feedads.g.doubleclick.net/~a/wtFmAuP2cDavA4DJciE0hZraKOQ/1/di" border="0" ismap="true"></img></a></p><p>今天看了stone分享的一篇文章<a href="http://mrjamie.cc/2010/03/09/determine-good-startup-opportunity/"><strong>你怎麼確定這是一個創業的好機會？</strong></a></p>
<p>现在来验证一下校园团购这平台个项目是否可行.</p>
<p>先分析一下大学生人群的<strong>特点</strong>:</p>
<p>a.相对集中,都是住校.距离应该在2KM以内,十分方便.<br />
b.人群消费力属于中下到中等水平.而且比较节省.<br />
c.人群接受能力强,信息转递快,喜欢尝鲜,空闲时间相对较多.</p>
<h2>1. 你的新產品，可以解決別人的問題、困擾、痛苦、不愉快嗎？</h2>
<p>当然有好处,主要解决的问题就是可以节省金钱.同时带来的坏处,需要等(凑人数),但是人群特点对这项不太敏感.如果针对白领或者相对高端用户来说,可能行不通..</p>
<h2>2. 很多人有這樣的問題嗎？</h2>
<p>普通中等大学有1W左右的学生,估计5成以上可以接受这种方式.主要还是要看折购多少.</p>
<h2>3. 這些人有消費能力嗎？可以立刻買單嗎？</h2>
<p>那就看团购平台的商品定位了.可以定位普通日常用品,数码产品,学习资料,美容护肤,新奇的东西,礼品等..</p>
<p>大学生热点消费能力可以定于30元 &#8211; 500元 这个范围</p>
<h2>4. 你有什麼獨特的經驗和技能，可以把這個產品做得比別人好？</h2>
<p>网络技术是我的优势,包括策划,建站,SEO.现在高校团购没有一个很好的平台,通常只是使用论坛,没有扩展性</p>
<p>但是缺乏组织,宣传,销售能力,供货渠道</p>
<h2>5. 你有什麼特殊的資源，是別人沒有的？</h2>
<p>非常遗憾,除了我的脑袋就没有了</p>
<h2>6. 你可以找到 2 個以上的合夥人加入你嗎？</h2>
<p>不确定.还没有沟通.</p>
<h2>7. 他們的個性、經驗、技能跟你互補嗎？</h2>
<p>供货渠道发掘沟通能力,组织宣传推广销售能力,最起码需要这2个人.</p>
<h2>8. 他們的價值觀跟你相近嗎？</h2>
<p>相近.</p>
<h2>9. 業界先進和相關的朋友們，覺得這是一個好機會嗎？</h2>
<p>未沟通</p>
<h2>10. 有沒有人覺得這是一個爛主意？</h2>
<p>肯定有</p>
<h2>11. 這是一個你非常想要的產品嗎？</h2>
<p>虽然我已经不是学生了,</p>
<h2>12. 為什麼相關的大公司短期內不會進入這個市場？</h2>
<p>由于利润极低,预计大公司短期内不会进入.团购受众人群是对价格十分敏感的人群,做团购注定低利润.<br />
现在只是有一些不成系统的校园论坛做团购,没有专人运作,也没有专门业务员去找货源.</p>
<h2>13. 你能找到幾個潛在客戶幫你測試嗎？</h2>
<p>学校论坛的人可以测试.还是网络推广为主.</p>
<h2>14. 這個產品只需要花一點點錢就可以開發出來？</h2>
<p>嗯,制作成本不高,我自己业余时间一个月可以完成.</p>
<h2>15. 產品上市後，公司的固定成本可以維持的很低？</h2>
<p>初期完全可以没有实体公司,主要通过网络推广,传单宣传.找校园内小卖部或者其他店作为收货点.还可以找学生代送货.<br />
学校里低成本人力资源很多..</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;测试完毕&#8212;&#8212;&#8212;&#8212;</p>
<p>重新不过规范地说说这个项目的重点:</p>
<p>1.团购受众人群是对价格十分敏感的人群,做团购注定低利润.所以定位不可能是从团购中谋利.团购商品单价低于一般网购价.</p>
<p>2.建立的是团购平台而不是做团购..平台就是要建立系统,建立一个体系,形成一个行业..细节就不多说.</p>
<p>3.推广模式固定,做了一个学校再到另一个学校.全国多少个学校&#8230;</p>
<p>4.可以积累供货渠道,当市场足够大的时候,渠道拓展和独有优势就容易确立.</p>
<p>5.多方共赢,消费者能买到便宜的商品,促进校园兼职,组织者也收益</p>
<p>存在问题:</p>
<p>1.退货/保修问题等其他商品相关问题.</p>
<p>2.可能与校园店铺以及其他机构有利益冲突</p>
<p>3.支付方式与诚信问题</p>
<p>数据:</p>
<ul>
<li>2007年大学生每日的互联网接触率达到97.6%，日均接触互联网2.2小时。</li>
<li>2006年，中国普通高校在校生数量就已经达到2500万人，而且2006年中国普通高校在校生还在以14.3%的速度增长。</li>
<li>我国大学生每学期的平均收入为5919元(中华全国学生联合会及相关监测机构的2006年调查数据)，收入来源主要是家庭支持，其次为兼职收入，大学生每学期人均消费支出高达5819元(含学杂费在内)，而将大学生在两个假期的支出计算在内，我国大学生每年的平均消费支出已经在1.2万元以上，超过了城镇居民9472.2元的人均年收入。除去学杂费，大学生一年的开销，平均每人每年5500元，这就意味着校园有1200亿的市场。</li>
</ul>

	标签：<a href="http://www.vpnall.com/tag/%e5%88%9b%e4%b8%9a/" title="创业" rel="tag">创业</a>, <a href="http://www.vpnall.com/tag/%e5%b9%b3%e5%8f%b0/" title="平台" rel="tag">平台</a>, <a href="http://www.vpnall.com/tag/%e9%ab%98%e6%a0%a1%e5%9b%a2%e8%b4%ad/" title="高校团购" rel="tag">高校团购</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.vpnall.com/2009/09/%e6%b1%9f%e9%97%a8%e9%ab%98%e6%a0%a1%e6%af%95%e4%b8%9a%e7%94%9f%e5%95%86%e4%b8%9a%e5%88%9b%e4%b8%9a%e5%9f%ba%e5%9c%b0%e6%8b%9b%e5%8b%9f%e5%88%9b%e4%b8%9a%e4%ba%ba%e6%89%8d/" title="[江门]高校毕业生商业创业基地招募创业人才 (2009-09-12)">[江门]高校毕业生商业创业基地招募创业人才</a> (0)</li>
</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/RHOvYECQTsE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/03/%e5%88%9b%e4%b8%9a%e6%9c%ba%e4%bc%9a%e9%aa%8c%e8%af%81%e9%ab%98%e6%a0%a1%e5%9b%a2%e8%b4%ad%e5%b9%b3%e5%8f%b0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/03/%e5%88%9b%e4%b8%9a%e6%9c%ba%e4%bc%9a%e9%aa%8c%e8%af%81%e9%ab%98%e6%a0%a1%e5%9b%a2%e8%b4%ad%e5%b9%b3%e5%8f%b0/</feedburner:origLink></item>
		<item>
		<title>办理中国邮政的自由一族</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/4xDr6GngbtI/</link>
		<comments>http://www.vpnall.com/2010/03/%e5%8a%9e%e7%90%86%e4%b8%ad%e5%9b%bd%e9%82%ae%e6%94%bf%e7%9a%84%e8%87%aa%e7%94%b1%e4%b8%80%e6%97%8f/#comments</comments>
		<pubDate>Sun, 07 Mar 2010 15:42:54 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[生活]]></category>
		<category><![CDATA[中国邮政]]></category>
		<category><![CDATA[汽车]]></category>
		<category><![CDATA[自由一族]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=679</guid>
		<description><![CDATA[“自邮一族”是江门市邮政局为车主提供专业会员服务的全新服务品牌，服务内容包括：免费代办交通违章罚单、公路规费、车船税、车辆保险、二次港澳通行证、二代身份证换证、驾驶证行... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/GEQzf3sTdZ2yHGxkIILelFxh0cI/0/da"><img src="http://feedads.g.doubleclick.net/~a/GEQzf3sTdZ2yHGxkIILelFxh0cI/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/GEQzf3sTdZ2yHGxkIILelFxh0cI/1/da"><img src="http://feedads.g.doubleclick.net/~a/GEQzf3sTdZ2yHGxkIILelFxh0cI/1/di" border="0" ismap="true"></img></a></p><p>“自邮一族”是江门市邮政局为车主提供专业会员服务的全新服务品牌，服务内容包括：免费代办交通违章罚单、公路规费、车船税、车辆保险、二次港澳通行证、二代身份证换证、驾驶证行驶证年审换证、证件到期提醒等无忧服务。</p>
<p>费用是100元,还包括了一张中国石化的加油卡,充值激活之后优惠0.15元/升.本人还是比较喜欢中国石油,其一长期有#90油可以加,其二交通方便,上下班路上经过2,3个中石油,就是没经过中石化.</p>
<p>如果开150元的,还加10次免费洗车.不过新会这边只有三家合作单位,有一家比较近,就选了这个.相当于5块洗一次喔..不过我比较懒洗车,之前开的卡已经4个月,才洗了几次,平均一个月洗一次多.</p>
<p>办理还好,准备好证件就可以办理.只是前台好像不太熟悉业务,估计办的人不多.“自邮一族”应该算是个专业跑腿吧..平时上班一族是没时间交年票和车船税,平时我都叫我爸代缴..总的来说还未试过邮政EMS以外的服务,试试看吧&#8230;</p>

	标签：<a href="http://www.vpnall.com/tag/%e4%b8%ad%e5%9b%bd%e9%82%ae%e6%94%bf/" title="中国邮政" rel="tag">中国邮政</a>, <a href="http://www.vpnall.com/tag/%e6%b1%bd%e8%bd%a6/" title="汽车" rel="tag">汽车</a>, <a href="http://www.vpnall.com/tag/%e8%87%aa%e7%94%b1%e4%b8%80%e6%97%8f/" title="自由一族" rel="tag">自由一族</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.vpnall.com/2009/10/%e7%8f%a0%e6%b5%b7%e4%b8%ad%e5%b1%b1%e6%b1%9f%e9%97%a8%e4%b8%89%e5%b8%82%e4%b9%9f%e6%90%9e%e5%90%8c%e5%9f%8e%e5%8c%96/" title="珠海中山江门三市也搞同城化? (2009-10-28)">珠海中山江门三市也搞同城化?</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/%e6%b1%bd%e8%bd%a6%e4%bf%9d%e5%85%bb%e6%97%b6%e9%97%b4%e8%a1%a8/" title="汽车如何保养 汽车保养时间表 (2009-03-06)">汽车如何保养 汽车保养时间表</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/04/%e4%bb%8a%e5%a4%a9%e5%8e%bb%e5%81%9a%e4%ba%86%e8%87%aa%e7%94%b1%e8%88%b0%e7%9a%84%e7%ac%ac%e4%b8%89%e6%ac%a1%e4%bf%9d%e5%85%bb/" title="今天去做了自由舰的第三次保养 (2009-04-19)">今天去做了自由舰的第三次保养</a> (0)</li>
</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/4xDr6GngbtI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/03/%e5%8a%9e%e7%90%86%e4%b8%ad%e5%9b%bd%e9%82%ae%e6%94%bf%e7%9a%84%e8%87%aa%e7%94%b1%e4%b8%80%e6%97%8f/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/03/%e5%8a%9e%e7%90%86%e4%b8%ad%e5%9b%bd%e9%82%ae%e6%94%bf%e7%9a%84%e8%87%aa%e7%94%b1%e4%b8%80%e6%97%8f/</feedburner:origLink></item>
		<item>
		<title>38个 css 和 jQuery 多级下拉菜单解决方案</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/NeFkv6jc9y4/</link>
		<comments>http://www.vpnall.com/2010/03/38%e4%b8%aa-css-%e5%92%8c-jquery-%e5%a4%9a%e7%ba%a7%e4%b8%8b%e6%8b%89%e8%8f%9c%e5%8d%95%e8%a7%a3%e5%86%b3%e6%96%b9%e6%a1%88/#comments</comments>
		<pubDate>Thu, 04 Mar 2010 12:59:38 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[代码]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[下拉菜单]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=677</guid>
		<description><![CDATA[很好的东西,不得不转载一下,原文http://tmtsky.com/html/technology/jQuery/2010/0120/26454.html
当您需要创建一些内容和菜单部分很多的大型网站时，往往需要多级的菜单来将内容分类,这里收集合了38个 css ... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/ssgPegssS3k5nbgcJvuC2_Wsvac/0/da"><img src="http://feedads.g.doubleclick.net/~a/ssgPegssS3k5nbgcJvuC2_Wsvac/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/ssgPegssS3k5nbgcJvuC2_Wsvac/1/da"><img src="http://feedads.g.doubleclick.net/~a/ssgPegssS3k5nbgcJvuC2_Wsvac/1/di" border="0" ismap="true"></img></a></p><p>很好的东西,不得不转载一下,原文<a href="http://tmtsky.com/html/technology/jQuery/2010/0120/26454.html">http://tmtsky.com/html/technology/jQuery/2010/0120/26454.html</a></p>
<p>当您需要创建一些内容和菜单部分很多的大型网站时，往往需要<strong>多级的菜单</strong>来将内容分类,这里收集合了<strong>38个 css 和 jQuery 多级下拉菜单解决方案</strong>，主要是基于jQuery和CSS下拉或多层次的下降可加载的文件，并且您只需要修改下CSS。就能快速搭建您自己的多级下拉菜单。</p>
<h3>1. <a href="http://net.tutsplus.com/tutorials/javascript-ajax/jquery-os-x-style-dock-and-stack-navigation/" target="_blank">“Outside the Box” Navigation with jQuery</a></h3>
<p>本教程介络如何做一个OS X风格的导航。<br />
<a href="http://net.tutsplus.com/tutorials/javascript-ajax/jquery-os-x-style-dock-and-stack-navigation/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940555O7-0.jpg" alt="outside-box-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://nettuts.s3.amazonaws.com/358_jquery/example%20files/all-examples.html" target="_blank">Preview Demo</a></p>
<h3>2.<a href="http://www.noupe.com/tutorial/drop-down-menu-jquery-css.html" target="_blank"> Sexy Drop Down Menu w/ jQuery &amp; CSS</a></h3>
<p>如何创建一个性感的下拉菜单<br />
<a href="http://www.noupe.com/tutorial/drop-down-menu-jquery-css.html" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/194055HD-1.jpg" alt="sexy-jquery-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://www.sohtanaka.com/web-design/examples/drop-down-menu/" target="_blank">Preview Demo</a></p>
<h3>3.<a href="http://css-tricks.com/designing-the-digg-header-how-to-download/" target="_blank"> Designing the Digg Header: How To &amp; Download</a></h3>
<p>压缩导航的使用与简单的下拉菜单<br />
<a href="http://css-tricks.com/designing-the-digg-header-how-to-download/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940551F1-2.jpg" alt="digg-header-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://css-tricks.com/examples/DiggHeader/" target="_blank">Preview Demo</a></p>
<h3>4. <a href="http://www.webdesigndev.com/web-development/create-the-fanciest-dropdown-menu-you-ever-saw" target="_blank">Create The Fanciest Dropdown Menu You Ever Saw</a></h3>
<p><a href="http://www.webdesigndev.com/web-development/create-the-fanciest-dropdown-menu-you-ever-saw" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940553646-3.jpg" alt="fanciest-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://www.webdesigndev.com/wp-content/uploads/2009/07/fancydropdown.html" target="_blank">Preview Demo</a></p>
<h3>5.<a href="http://www.cssplay.co.uk/menus/circular-sub.html" target="_blank"> A circular menu with sub menus</a></h3>
<p>带有圆形菜单子菜单<br />
<a href="http://www.cssplay.co.uk/menus/circular-sub.html" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940552092-4.jpg" alt="circular-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://www.cssplay.co.uk/menus/circular-sub.html" target="_blank">Preview Demo</a></p>
<h3>6. <a href="http://net.tutsplus.com/tutorials/javascript-ajax/a-different-top-navigation/" target="_blank">A Different Top Navigation</a></h3>
<p>使用jQuery来创建不同的多层次的横向导航<br />
<a href="http://net.tutsplus.com/tutorials/javascript-ajax/a-different-top-navigation/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940555222-5.jpg" alt="different-jquery-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://nettuts.s3.amazonaws.com/386_navigation/top-nav-demo/index.html" target="_blank">Preview Demo</a></p>
<h3>7. <a href="http://aext.net/2009/08/perfect-sign-in-dropdown-box-likes-twitter-with-jquery/" target="_blank">Perfect signin dropdown box likes Twitter with jQuery</a></h3>
<p>如何使用jQuery创建一个登录Twitter的下拉式<br />
<a href="http://aext.net/2009/08/perfect-sign-in-dropdown-box-likes-twitter-with-jquery/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940554Z1-6.jpg" alt="twitter-drop-down-multi-level-menu-navigation" width="570" height="224" /></a></p>
<p><a href="http://aext.net/example/twitterlogin/" target="_blank">Preview Demo</a></p>
<h3>8.<a href="http://hv-designs.co.uk/2009/02/17/sliding-jquery-menu/" target="_blank"> Sliding Jquery Menu Tutorial</a></h3>
<p>如何创建一个滑动菜单按钮使用jQuery。<br />
<a href="http://hv-designs.co.uk/2009/02/17/sliding-jquery-menu/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/19405551U-7.jpg" alt="sliding-jquery-drop-down-multi-level-menu-navigation" width="570" height="224" /></a></p>
<p><a href="http://www.hv-designs.co.uk/tutorials/sliding_menu/sliding_menu.html" target="_blank">Preview Demo</a></p>
<h3>9.<a href="http://www.andrewsellick.com/71/fancy-sliding-menu-for-mootools" target="_blank">Fancy Sliding Menu for Mootools</a></h3>
<p><a href="http://www.andrewsellick.com/71/fancy-sliding-menu-for-mootools" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940552R2-8.jpg" alt="fancy-sliding-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://www.andrewsellick.com/examples/tabslideV2-mootools/" target="_blank">Preview Demo</a></p>
<h3>10.<a href="http://www.jankoatwarpspeed.com/post/2009/01/19/Create-Vimeo-like-top-navigation.aspx" target="_blank"> Create Vimeo-like top navigation</a></h3>
<p>这篇文章是完全致力于展示先进的下拉菜单。十分详细，并具有良好的书面教程，缩小了搜索选项和目标通过检查选项搜索。菜单做法完全是只使用CSS<br />
<a href="http://www.jankoatwarpspeed.com/post/2009/01/19/Create-Vimeo-like-top-navigation.aspx" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940554449-9.jpg" alt="vimeo-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://www.jankoatwarpspeed.com/examples/vimeo_navigation/" target="_blank">Preview Demo</a></p>
<p>(责任编辑：华涛)</p>
<h3>11. <a href="http://www.roscripts.com/Building_a_dynamic_drop_down_menu-216.html" target="_blank">Dynamic PHP/CSS menu</a></h3>
<p><a href="http://www.roscripts.com/Building_a_dynamic_drop_down_menu-216.html" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/194055H58-10.jpg" alt="php-css-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://www.roscripts.com/uploads/articles/216/" target="_blank">Preview Demo</a></p>
<h3>12. <a href="http://mattberseth.com/blog/2007/12/creating_an_outlook_navigation.html" target="_blank">Creating an Outlook Navigation Bar using the ListView and Accordion Controls</a></h3>
<p><a href="http://mattberseth.com/blog/2007/12/creating_an_outlook_navigation.html" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/19405510W-11.jpg" alt="outlook-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://mattberseth2.com/demo/Default.aspx?Name=Creating+an+Outlook+Navigation+Bar+using+the+ListView+and+Accordion+Controls&amp;Filter=All" target="_blank">Preview Demo</a></p>
<h3>13. <a href="http://www.clarklab.net/blog/posts/animated-drop-down-menu-with-jquery/" target="_blank">Animated Drop Down Menu with jQuery</a></h3>
<p><a href="http://www.clarklab.net/blog/posts/animated-drop-down-menu-with-jquery/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/194055HF-12.jpg" alt="animated-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://clarklab.net/blog/articles/dropdown/example.html" target="_blank">Preview Demo</a></p>
<h3>14. <a href="http://labs.makotokw.com/s/jquery/menu" target="_blank">jQuery UI Potato Menu</a></h3>
<p><a href="http://labs.makotokw.com/s/jquery/menu" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940552O8-13.jpg" alt="potato-ui-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://labs.makotokw.com/s/jquery/menu" target="_blank">Preview Demo</a></p>
<h3>15. <a href="http://www.sitepoint.com/blogs/2009/03/31/make-a-mega-drop-down-menu-with-jquery/" target="_blank">Make a Mega Drop-Down Menu with jQuery</a></h3>
<p><a href="http://www.sitepoint.com/blogs/2009/03/31/make-a-mega-drop-down-menu-with-jquery/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940551B8-14.jpg" alt="mega-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://www.sitepoint.com/examples/megadropdowns/completed.html#" target="_blank">Preview Demo</a></p>
<h3>16. <a href="http://www.cssplay.co.uk/menus/dd_valid.html" target="_blank">A cross-browser drop-down cascading validating menu</a></h3>
<p>简单的CSS菜单<br />
<a href="http://www.cssplay.co.uk/menus/dd_valid.html" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940555351-15.jpg" alt="cross-browser-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://www.cssplay.co.uk/menus/dd_valid.html" target="_blank">Preview Demo</a></p>
<h3>17. <a href="http://www.alistapart.com/articles/horizdropdowns/" target="_blank">Drop-Down Menus, Horizontal Style</a></h3>
<p>2004年的很老的下拉式教程<br />
<a href="http://www.alistapart.com/articles/horizdropdowns/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940555N4-16.jpg" alt="horizontal-style-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://www.alistapart.com/d/horizdropdowns/horizontal.htm" target="_blank">Preview Demo</a></p>
<h3>18. <a href="http://users.tpg.com.au/j_birch/plugins/superfish/" target="_blank">Superfish v1.4.8 – jQuery menu plugin by Joel Birch</a></h3>
<p>Superfish是一个增强Suckerfish式菜单jQuery插件，采用现有纯CSS下拉菜单（缓慢下降，所以没有JavaScript）和更多的功能。<br />
<a href="http://users.tpg.com.au/j_birch/plugins/superfish/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940552W2-17.jpg" alt="superfish-jquery-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://users.tpg.com.au/j_birch/plugins/superfish/#examples" target="_blank">Preview Demo</a></p>
<h3>19. <a href="http://www.leigeber.com/2008/11/drop-down-menu/" target="_blank">JavaScript Dropdown Menu with Multi Levels</a></h3>
<p>这种多层次的下拉菜单脚本大小仅有1.2 kb的。它具有动画，导航当前位置，易于实施和维护。<br />
<a href="http://www.leigeber.com/2008/11/drop-down-menu/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940551T5-18.jpg" alt="javascript-drop-down-multi-level-menu-navigation-1" width="570" height="224" /></a><br />
<a href="http://sandbox.leigeber.com/dropdown-menu/index.html#" target="_blank">Preview Demo</a></p>
<h3>20. <a href="http://pupunzi.wordpress.com/2009/01/18/mbmenu/" target="_blank">jQuery (mb)Menu 2.7</a></h3>
<p>这是一个强大的jQuery的组成部分，很容易建立一个多层次的树型菜单或上下文菜单（右键菜单）！<br />
<a href="http://pupunzi.wordpress.com/2009/01/18/mbmenu/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940553033-19.jpg" alt="jquery-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://www.open-lab.com/mb.ideas/index.html#" target="_blank">Preview Demo</a></p>
<h3>21. <a href="http://greengeckodesign.com/?q=menumatic" target="_blank">Menumatic</a></h3>
<p>MenuMatic是一个mootools1.2 的类，可以把一个语义有序或无序的链接列表，变成一个动态下拉菜单系统。对于没有打开JavaScript的用户，它将回到一个CSS菜单<br />
<a href="http://greengeckodesign.com/?q=menumatic" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/194055L11-20.jpg" alt="menumatic-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://greengeckodesign.com/projects/menumatic/examples/vertical/" target="_blank">Preview Demo</a></p>
<h3>22. <a href="http://www.dynamicdrive.com/dynamicindex1/ddsmoothmenu.htm" target="_blank">Smooth Navigational Menu (v1.31)</a></h3>
<p>Smooth Navigation Menu是一个多层次，使用CSS列表和jQuery，使得网站导航菜单流畅显示。<br />
<a href="http://www.dynamicdrive.com/dynamicindex1/ddsmoothmenu.htm" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940552T0-21.jpg" alt="smooth-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://greengeckodesign.com/projects/menumatic/examples/vertical/" target="_blank">Preview Demo</a></p>
<h3>23. <a href="http://abeautifulsite.net/notebook.php?article=58" target="_blank">jQuery File Tree</a></h3>
<p>jQuery File Tree是一个可配置AJAX文件的浏览器插件。您可以创建一个定制的，低至只有一行JavaScript代码的在线互动文件树。<br />
<a href="http://abeautifulsite.net/notebook.php?article=58" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940553F0-22.jpg" alt="jquery-tree-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://abeautifulsite.net/notebook_files/58/demo/" target="_blank">Preview Demo</a></p>
<h3>24. <a href="http://javascript-array.com/scripts/multi_level_drop_down_menu/?st" target="_blank">Longed-For Multi-Level Drop-Down Menu Script</a></h3>
<p><a href="http://javascript-array.com/scripts/multi_level_drop_down_menu/?st" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940551512-23.jpg" alt="longed-jquery-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://javascript-array.com/scripts/multi_level_drop_down_menu/?st" target="_blank">Preview Demo</a></p>
<h3>25. <a href="http://designreviver.com/tutorials/jquery-css-example-dropdown-menu/" target="_blank">jQuery &amp; CSS Example – Dropdown Menu</a></h3>
<p>本文旨在描述一个非常基本的，但极其强大的技术添加在你的应用程序用户界面或网页设计的下拉菜单。<br />
<a href="http://designreviver.com/tutorials/jquery-css-example-dropdown-menu/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940555421-24.jpg" alt="designreviver-jquery-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://javascript-array.com/scripts/multi_level_drop_down_menu/?st" target="_blank">Preview Demo</a></p>
<h3>26. <a href="http://www.jankoatwarpspeed.com/post/2009/07/28/reinventing-drop-down-with-css-jquery.aspx" target="_blank">Reinventing a Drop Down with CSS and jQuery</a></h3>
<p><a href="http://www.jankoatwarpspeed.com/post/2009/07/28/reinventing-drop-down-with-css-jquery.aspx" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/194055I36-25.jpg" alt="reinventing-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://www.jankoatwarpspeed.com/examples/reinventing-drop-down/" target="_blank">Preview Demo</a></p>
<h3>27. <a href="http://css-tricks.com/simple-jquery-dropdowns/" target="_blank">Simple jQuery Dropdowns</a></h3>
<p>高度剥离下来的代码和最小的风格，但仍然有下拉菜单通常需要的所有功能。<br />
<a href="http://css-tricks.com/simple-jquery-dropdowns/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940553508-26.jpg" alt="simple-jquery-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://css-tricks.com/examples/SimplejQueryDropdowns/" target="_blank">Preview Demo</a></p>
<h3>28. <a href="http://www.devirtuoso.com/2009/08/styling-drop-down-boxes-with-jquery/" target="_blank">Styling Drop Down Boxes with jQuery</a></h3>
<p>与HTML窗体一样风格的元素放进你的设计。<br />
<a href="http://www.devirtuoso.com/2009/08/styling-drop-down-boxes-with-jquery/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940554T8-27.jpg" alt="styling-jquery-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://www.devirtuoso.com/Examples/Styling-Dropdown/" target="_blank">Preview Demo</a></p>
<h3>29. <a href="http://www.filamentgroup.com/lab/jquery_ipod_style_drilldown_menu" target="_blank">jQuery iPod-style Drilldown Menu</a></h3>
<p><a href="http://www.filamentgroup.com/lab/jquery_ipod_style_drilldown_menu" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940551057-28.jpg" alt="ipod-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://www.filamentgroup.com/examples/menusHierarchical/" target="_blank">Preview Demo</a></p>
<h3>30. <a href="http://www.filamentgroup.com/lab/jquery_ipod_style_and_flyout_menus/" target="_blank">jQuery Menu: Dropdown, iPod Drilldown, and Flyout styles with ARIA Support and ThemeRoller Ready</a></h3>
<p>新版本的iPod的风格的菜单。<br />
<a href="http://www.filamentgroup.com/lab/jquery_ipod_style_and_flyout_menus/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940551515-29.jpg" alt="recreated-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://www.filamentgroup.com/examples/menus/ipod.php" target="_blank">Preview Demo</a></p>
<h3>31. <a href="http://www.givainc.com/labs/mcdropdown_jquery_plugin.htm" target="_blank">mcDropdown jQuery Plug-in v1.2.07</a></h3>
<p><a href="http://www.givainc.com/labs/mcdropdown_jquery_plugin.htm" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940555c7-30.jpg" alt="mc-plugin-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://www.givainc.com/labs/mcdropdown_jquery_plugin.htm" target="_blank">Preview Demo</a></p>
<h3>32. <a href="http://www.dynamicdrive.com/style/csslibrary/item/jquery_drop_line_tabs/" target="_blank">jQuery Drop Line Tabs</a></h3>
<p>jQuery的下拉线标签(选项卡)<br />
<a href="http://www.dynamicdrive.com/style/csslibrary/item/jquery_drop_line_tabs/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940552225-31.jpg" alt="jquery-tabs-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://www.dynamicdrive.com/style/csslibrary/item/jquery_drop_line_tabs/" target="_blank">Preview Demo</a></p>
<h3>33. <a href="http://www.javascriptkit.com/script/script2/jkmegamenu.shtml" target="_blank">Cut &amp; Paste jQuery Mega Menu</a></h3>
<p>Mega Menus指下拉菜单中包含多个列的链接。这里使用的jQuery脚本允许您添加任何网页链接锚在一个巨型菜单上，当鼠标滑过了锚时，菜单动画淡入淡出。超级酷！<br />
<a href="http://www.javascriptkit.com/script/script2/jkmegamenu.shtml" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940553O0-32.jpg" alt="cut-paste-drop-down-multi-level-menu-navigation-1" width="570" height="224" /></a><br />
<a href="http://www.javascriptkit.com/script/script2/jkmegamenu.shtml" target="_blank">Preview Demo</a></p>
<h3>34. <a href="http://www.stunicholls.com/menu/pro_dropdown_2.html" target="_blank">Professional dropdown #2</a></h3>
<p><a href="http://www.stunicholls.com/menu/pro_dropdown_2.html" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/194055HX-33.jpg" alt="professional-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://www.stunicholls.com/menu/pro_dropdown_2.html" target="_blank">Preview Demo</a></p>
<h3>35. <a href="http://www.emanuelblagonic.com/2006/10/11/create-your-own-drop-down-menu-with-nested-submenus-using-css-and-a-little-javascript/" target="_blank">Drop down menu with nested submenus</a></h3>
<p>下拉菜单的嵌套子菜单<br />
<a href="http://www.emanuelblagonic.com/2006/10/11/create-your-own-drop-down-menu-with-nested-submenus-using-css-and-a-little-javascript/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940553R3-34.jpg" alt="nested-drop-down-multi-level-menu-navigation-1" width="570" height="224" /></a></p>
<h3>36. <a href="http://jdsharp.us/jQuery/plugins/jdMenu/" target="_blank">jdMenu Hierarchical Menu Plugin</a></h3>
<p>jQuery jdMenu的插件提供了用于创建了Web应用程序的网站，下拉菜单，干净，简洁和优雅的解决方案。<br />
<a href="http://jdsharp.us/jQuery/plugins/jdMenu/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/194055K61-35.jpg" alt="jdmenu-drop-down-multi-level-menu-navigation" width="570" height="224" /></a><br />
<a href="http://jdsharp.us/jQuery/plugins/jdMenu/" target="_blank">Preview Demo</a></p>
<h3>37. <a href="http://www.dynamicdrive.com/dynamicindex1/indexc.html" target="_blank">Dynamic Drive – Multiple Level Menus</a></h3>
<p>一个自由先进的CSS和Javascript下拉菜单很多，在这里，还有的指导和建议如何使用修改它们。<br />
<a href="http://www.dynamicdrive.com/dynamicindex1/indexc.html" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940555439-36.jpg" alt="dynamic-drive-drop-down-multi-level-menu-navigation-1" width="570" height="344" /></a></p>
<h3>38. <a href="http://www.izzymenu.com/" target="_blank">IzzyMenu – Menu Builder – Build your pro CSS/DHTML Menu</a></h3>
<p>几十个可供选择的样式或准备建立自己的菜单风格。都是小文件，不会消耗大量的带宽。<br />
<a href="http://www.izzymenu.com/" target="_blank"><img src="http://tmtsky.com/uploads/allimg/100120/1940555K2-37.jpg" alt="izzymenu-drop-down-multi-level-menu-navigation-1" width="570" height="224" /></a></p>
<hr />原文：<a href="http://www.sonichtml.com/blog/?p=837" target="_blank">38个 css 和 jQuery 多级下拉菜单解决方案</a></p>

	标签：<a href="http://www.vpnall.com/tag/css/" title="css" rel="tag">css</a>, <a href="http://www.vpnall.com/tag/jquery/" title="jquery" rel="tag">jquery</a>, <a href="http://www.vpnall.com/tag/%e4%b8%8b%e6%8b%89%e8%8f%9c%e5%8d%95/" title="下拉菜单" rel="tag">下拉菜单</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.vpnall.com/2009/09/%e8%bd%ac25%e4%b8%aa%e4%b8%8b%e6%8b%89%e8%8f%9c%e5%8d%95%e5%af%bc%e8%88%aajquery%e8%84%9a%e6%9c%ac/" title="[转]25个下拉菜单导航jQuery脚本 (2009-09-01)">[转]25个下拉菜单导航jQuery脚本</a> (0)</li>
	<li><a href="http://www.vpnall.com/2010/01/disable-a-button-in-a-jquery-dialog-from-a-function/" title="用函数使JQuery ui dialog的按钮是否可用 (2010-01-29)">用函数使JQuery ui dialog的按钮是否可用</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/05/%e6%94%b6%e9%9b%86%e4%b8%80%e4%ba%9b%e5%90%8e%e5%8f%b0%e6%a8%a1%e6%9d%bfhtml_css/" title="收集一些后台模板html_css (2009-05-16)">收集一些后台模板html_css</a> (2)</li>
	<li><a href="http://www.vpnall.com/2009/03/jquery-ajax-introduction/" title="[转]jQuery Ajax 全解析 (2009-03-03)">[转]jQuery Ajax 全解析</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/04/%e8%bd%ac25-%e4%b8%aa%e5%9c%a8-web-%e4%b8%ad%e5%b5%8c%e5%85%a5%e5%9b%be%e8%a1%a8%e7%9a%84%e5%85%8d%e8%b4%b9%e8%b5%84%e6%ba%90/" title="[转]25 个在 Web 中嵌入图表的免费资源 (2009-04-19)">[转]25 个在 Web 中嵌入图表的免费资源</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/%e5%8e%9f%e5%88%9b%e7%94%a8jquery%e5%81%9a%e4%ba%86%e4%b8%80%e4%b8%aa%e5%a4%8d%e5%88%b6%e6%b5%81%e9%87%8f%e7%9a%84%e4%b8%9c%e8%a5%bf/" title="[原创]用jquery做了一个复制流量的东西 (2009-03-28)">[原创]用jquery做了一个复制流量的东西</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/06/%e5%88%86%e4%ba%abjquery-13%e4%b8%ad%e6%96%87%e5%8f%82%e8%80%83%e6%96%87%e6%a1%a3/" title="[分享]jQuery 1.3中文参考文档 (2009-06-03)">[分享]jQuery 1.3中文参考文档</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/07/js%e5%ae%9e%e7%8e%b0%e9%a1%b5%e9%9d%a2%e7%84%a6%e7%82%b9%e8%ae%a1%e6%97%b6/" title="js实现页面焦点计时 (2009-07-27)">js实现页面焦点计时</a> (0)</li>
</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/NeFkv6jc9y4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/03/38%e4%b8%aa-css-%e5%92%8c-jquery-%e5%a4%9a%e7%ba%a7%e4%b8%8b%e6%8b%89%e8%8f%9c%e5%8d%95%e8%a7%a3%e5%86%b3%e6%96%b9%e6%a1%88/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/03/38%e4%b8%aa-css-%e5%92%8c-jquery-%e5%a4%9a%e7%ba%a7%e4%b8%8b%e6%8b%89%e8%8f%9c%e5%8d%95%e8%a7%a3%e5%86%b3%e6%96%b9%e6%a1%88/</feedburner:origLink></item>
		<item>
		<title>BeTwin实现一台电脑变两台</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/aFQiKpqQJnA/</link>
		<comments>http://www.vpnall.com/2010/02/betwin%e5%ae%9e%e7%8e%b0%e4%b8%80%e5%8f%b0%e7%94%b5%e8%84%91%e5%8f%98%e4%b8%a4%e5%8f%b0/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 05:24:57 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[系统]]></category>
		<category><![CDATA[BeTwin]]></category>
		<category><![CDATA[电脑一拖二]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=672</guid>
		<description><![CDATA[上回实现双显卡双显示器，然后一直再找能真正的电脑分身软件。网上有些说需要终端卡什么的，最好找到这个软件BeTwin，能够让一台主机实现多台PC虚拟终端。要知道现在的主机已经很强大了... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/0nIz-2xmuFXruhq2CHI6C4882yM/0/da"><img src="http://feedads.g.doubleclick.net/~a/0nIz-2xmuFXruhq2CHI6C4882yM/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/0nIz-2xmuFXruhq2CHI6C4882yM/1/da"><img src="http://feedads.g.doubleclick.net/~a/0nIz-2xmuFXruhq2CHI6C4882yM/1/di" border="0" ismap="true"></img></a></p><p>上回<a title="Permalink to 实现双显卡双显示器" rel="bookmark" href="http://www.vpnall.com/2010/02/%e5%ae%9e%e7%8e%b0%e5%8f%8c%e6%98%be%e5%8d%a1%e5%8f%8c%e6%98%be%e7%a4%ba%e5%99%a8/">实现双显卡双显示器</a>，然后一直再找能真正的电脑分身软件。网上有些说需要终端卡什么的，最好找到这个软件BeTwin，能够让一台主机实现多台PC虚拟终端。要知道现在的主机已经很强大了，两用户同时使用应该不是问题。不用和老婆争电脑了。</p>
<p>笔记本刚拿去修，正愁着一台电脑不够用。现在有两套鼠标键盘，两个显示器，再加上BeTwin，一台电脑就变两台，两个用户同时使用，不互相影响（当然性能上是有些影响的）。</p>
<p>betwin官方网站：<a href="http://www.thinsoftinc.com/ch/index.aspx">http://www.thinsoftinc.com/ch/index.aspx</a></p>
<blockquote><p>BeTwin VS 软件允许多个用户同时和独立地使用一台安装有Windows Vista (Home Basic、Home Premium、Business 或 Ultimate版 &#8211; 32-位) 或 Windows 7 (32-位)系统的个人电脑。软件的安装非常简单，加装一个VGA卡并连接至另一台显示器即可。先插上USB鼠标、USB键盘和USB音响（任选），最后安装 BeTwin VS软件。</p></blockquote>
<p>现在最新版本是(v.2.00.478)，破解自己找，试用版好像只能开两个终端，够了。</p>
<p>上次已经实现了双显卡双显示器，这里就不多说显示器部分了。之前买了套无线鼠键，接上。安装软件，也不复杂，装完必须要重启，然后会有设置向导，这里不需要两套鼠键连在主机上，少一个键盘都不行。</p>
<p>我的主机是WIN2008，在开一个系统用户，用起来就更互不影响了。</p>
<p>下图是配置图，副机没有声卡，呵呵。没关系。。。</p>
<p><a href="http://www.vpnall.com/wp-content/uploads/2010/02/BeTwin-控制台.jpg"><img class="aligncenter size-full wp-image-674" title="BeTwin 控制台" src="http://www.vpnall.com/wp-content/uploads/2010/02/BeTwin-控制台.jpg" alt="" width="540" height="355" /></a></p>
<p>下面是效果图，同时开了两个游戏，因为是不同显卡，不同的GPU负责不同的游戏，应该性能方面不会影响太多。</p>
<p><a href="http://www.vpnall.com/wp-content/uploads/2010/02/2pc.jpg"><img class="aligncenter size-full wp-image-673" title="2pc" src="http://www.vpnall.com/wp-content/uploads/2010/02/2pc.jpg" alt="" width="550" height="424" /></a></p>
<p>刚才群里找到个教程，版本不一样，大家可以参考：</p>
<p><a href="http://benyouhui.it168.com/thread-907919-1-1.html">http://benyouhui.it168.com/thread-907919-1-1.html</a></p>

	标签：<a href="http://www.vpnall.com/tag/betwin/" title="BeTwin" rel="tag">BeTwin</a>, <a href="http://www.vpnall.com/tag/%e7%94%b5%e8%84%91%e4%b8%80%e6%8b%96%e4%ba%8c/" title="电脑一拖二" rel="tag">电脑一拖二</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li>无相关日志</li>
	</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/aFQiKpqQJnA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/02/betwin%e5%ae%9e%e7%8e%b0%e4%b8%80%e5%8f%b0%e7%94%b5%e8%84%91%e5%8f%98%e4%b8%a4%e5%8f%b0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/02/betwin%e5%ae%9e%e7%8e%b0%e4%b8%80%e5%8f%b0%e7%94%b5%e8%84%91%e5%8f%98%e4%b8%a4%e5%8f%b0/</feedburner:origLink></item>
		<item>
		<title>深圳四海一家东部华侨城两日游</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/z5jKiqrxKlA/</link>
		<comments>http://www.vpnall.com/2010/02/%e6%b7%b1%e5%9c%b3%e5%9b%9b%e6%b5%b7%e4%b8%80%e5%ae%b6%e4%b8%9c%e9%83%a8%e5%8d%8e%e4%be%a8%e5%9f%8e%e4%b8%a4%e6%97%a5%e6%b8%b8/#comments</comments>
		<pubDate>Wed, 17 Feb 2010 16:05:53 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[出游]]></category>
		<category><![CDATA[东部华侨城]]></category>
		<category><![CDATA[四海一家]]></category>
		<category><![CDATA[深圳]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=669</guid>
		<description><![CDATA[年初三参加大方旅游的深圳四海一家东部华侨城两日游，感觉是比较悠闲的线路，没有长途车，不用很早起床。
大方旅游的服务还算不错，提前一天导游打电话来提醒一些事项，不过感觉导游... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/bfC-q-H1vvScAcwNhnGd6YSZ8l0/0/da"><img src="http://feedads.g.doubleclick.net/~a/bfC-q-H1vvScAcwNhnGd6YSZ8l0/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/bfC-q-H1vvScAcwNhnGd6YSZ8l0/1/da"><img src="http://feedads.g.doubleclick.net/~a/bfC-q-H1vvScAcwNhnGd6YSZ8l0/1/di" border="0" ismap="true"></img></a></p><p>年初三参加大方旅游的深圳四海一家东部华侨城两日游，感觉是比较悠闲的线路，没有长途车，不用很早起床。</p>
<p>大方旅游的服务还算不错，提前一天导游打电话来提醒一些事项，不过感觉导游不太专业，一共打了2次电话才把要说的说完。出发早上也打电话来提醒车牌，感觉有点婆妈。</p>
<p>初三早上8：30集中出发，去江门接了另一团人，然后上高速前往深圳。11：30左右直接到达深圳益田假日广场，四海一家就在三楼。一团人直奔垂涎已久的四海一家自助餐，上次去番禺的时候经过没去，听闻已久，今天终于可以去试试。进去第一感觉就是装潢不错，挺有特色，摆设装饰都各有风格，很多跟吃有关的装饰，甚至干脆用实物来装饰。。再者就是感觉店内的人员和管理都比较到位，虽然节日人数不少，中午上座率8成以上，没有混乱的感觉。不过自助餐还真没什么服务。。。</p>
<p>说回四海一家自助餐的东西，东西数量非常多吧，豪华自助餐，当然是要吃贵夹唔饱的啦。我们首先拿了，驰名的脆皮鱼翅汤，闻道还算鲜美，不过感觉就一般，汤底可能多粉，比较稠。鱼翅吃不出味道，竹笙的香味还是吃得出。鱼生吃了比较多，三文鱼还有其他不太清楚的鱼生还有生蚝，三文鱼比较新鲜，无限量供应。生蚝生的比较恶心，感觉不新鲜，吃了一颗就不在试了。烧生蚝比较多人排队，吃过，也不好吃，比较圭峰山旁边36一打的差多了。日式板烧就不错，有些不同品种，不过要稍等。不得不说的就是甜品种类非常多，各种蛋糕,做得也很好,不过个人不同喜欢吃甜食，赏过几款都好吃。雪糕有两种，一种是明治雪糕，任吃，口感非常一般，另一种就是凭票，每人一份的哈根达斯雪糕，据说超市卖也是二三十元一点点，尝了绿茶和夏威夷果的，味道香浓，果然不一般，不过要是自己出钱我就不会吃，太贵，还是对甜食不感冒。其他东西没什么特别的，只能说比普通自助餐稍好，没达到预期的高度，水果品种也不多，我还是比较喜欢水果的，可惜。。。饮品酒类是嘉士伯啤酒，没试，鸡尾酒试了两杯，还可以没什么酒味，也试过清酒。另外见到有VIP的有红酒。其他饮料有立顿的即溶的饮料机，还有自助调制花茶和其他普通饮料。汤的种类也不少，只试了网上说得比较好的鳄鱼头汤，感觉也是一般，可能家里的汤太好了。四海一家总体感觉还算可以，对得起一百多块的价格，仅仅如此，没超值的感觉。跟我之前吃过的差不多价位的自助餐来说区别不大。</p>
<p>然后吃完自助餐就差不多3点了，逛逛商场，就集中回酒店。酒店是宝安区的城市客栈，司机不认得路，打了两个电话问路，又问治安亭的民警叔叔，又兜了几个圈才找到。酒店是准三星，还算干净舒适，反正我对这要求不高。晚上8点多去找地方吃饭，外面又冷又下雨。惯性思维任务酒店楼下的咖啡厅昂贵,但是看到电梯里面的广告,好像比较实惠。普通饭餐，三人一人一份人均20不到，感慨深圳消费也不是高江门很多。。</p>
<p>说到第二天的东部华侨城，我们是去大峡谷，说游乐场么，又说不上，有点不伦不类，游戏不多,哪么几个,排队时间也长,实在没什么好说，比上一次去珠海的神秘岛跟糟糕很多倍，地方还算大。正门人工瀑布还算壮观，海菲德小镇做得也挺精美，感觉他是想莫非迪士尼，但是又不及。几个大型游戏，只玩了一两个，没什么特色。如果玩过长隆的这些就不值得一提。然后去看过4D电影，半小时一场。分明就是3D嘛，非要说比人家多1D，没有动感，没有气味和其他效果，据说也比长隆的差一个级别。咆哮山洪就有点模仿长隆的情景剧场，效果还算不错，天寒地冻（最高气温10度）的几个演员又跳水，又跑来跑去，当演员真辛苦。。。索道由于大风停止了,另外由于太冷,也没兴趣去玩峡湾漂流之类有水的,还要花钱买雨衣.还有个游戏由于下雨暂停了.有点比较好的就是大峡谷里面比较多东西吃了,十来间各色食店，东西也不算贵得离谱。大峡谷总体感觉比较无聊，加上天气原因就更糟糕。</p>
<p>华侨城附件很多地方好像还在建。见到半山，山顶有不少别墅，建在山上，我还在想，谁会住那些地方。。不知道大雨的时候会不会滑坡之类的，荒山野岭出入也极不方便，而且我根本就没看到有路上去。。才想起华侨城是房地产公司，附近一路有房地产广告和不少楼盘，看来东部华侨城只不过是用钱把一个山头打造成旅游区,提高地价,卖楼的幌子&#8230;房地产公司任何出发点都是怎样搞好他们的房地产,应该不大可能专心于设计园区,东部华侨城只不过是比较大一点的会所罢了.</p>

	标签：<a href="http://www.vpnall.com/tag/%e4%b8%9c%e9%83%a8%e5%8d%8e%e4%be%a8%e5%9f%8e/" title="东部华侨城" rel="tag">东部华侨城</a>, <a href="http://www.vpnall.com/tag/%e5%9b%9b%e6%b5%b7%e4%b8%80%e5%ae%b6/" title="四海一家" rel="tag">四海一家</a>, <a href="http://www.vpnall.com/tag/%e6%b7%b1%e5%9c%b3/" title="深圳" rel="tag">深圳</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li>无相关日志</li>
	</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/z5jKiqrxKlA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/02/%e6%b7%b1%e5%9c%b3%e5%9b%9b%e6%b5%b7%e4%b8%80%e5%ae%b6%e4%b8%9c%e9%83%a8%e5%8d%8e%e4%be%a8%e5%9f%8e%e4%b8%a4%e6%97%a5%e6%b8%b8/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/02/%e6%b7%b1%e5%9c%b3%e5%9b%9b%e6%b5%b7%e4%b8%80%e5%ae%b6%e4%b8%9c%e9%83%a8%e5%8d%8e%e4%be%a8%e5%9f%8e%e4%b8%a4%e6%97%a5%e6%b8%b8/</feedburner:origLink></item>
		<item>
		<title>多屏幕显示工具UltraMon</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/h3wB0_tvuis/</link>
		<comments>http://www.vpnall.com/2010/02/%e5%a4%9a%e5%b1%8f%e5%b9%95%e6%98%be%e7%a4%ba%e5%b7%a5%e5%85%b7ultramon/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 10:15:54 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[软件]]></category>
		<category><![CDATA[UltraMon]]></category>
		<category><![CDATA[多屏幕]]></category>
		<category><![CDATA[多显示器]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=666</guid>
		<description><![CDATA[上回实现双显卡双显示器成功之后,开始琢磨怎样更好利用副显示器,因为副显示器没用任务栏,非常不方便,一堆程序开起来都在主屏幕的任务栏上,于是就找多屏幕显示工具,今天找到一个UltraMon.... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/zFdWVWenJBWahrmStFKqMe4HCf0/0/da"><img src="http://feedads.g.doubleclick.net/~a/zFdWVWenJBWahrmStFKqMe4HCf0/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/zFdWVWenJBWahrmStFKqMe4HCf0/1/da"><img src="http://feedads.g.doubleclick.net/~a/zFdWVWenJBWahrmStFKqMe4HCf0/1/di" border="0" ismap="true"></img></a></p><p>上回<a title="Permalink to 实现双显卡双显示器" rel="bookmark" href="http://www.vpnall.com/2010/02/%e5%ae%9e%e7%8e%b0%e5%8f%8c%e6%98%be%e5%8d%a1%e5%8f%8c%e6%98%be%e7%a4%ba%e5%99%a8/">实现双显卡双显示器</a>成功之后,开始琢磨怎样更好利用副显示器,因为副显示器没用任务栏,非常不方便,一堆程序开起来都在主屏幕的任务栏上,于是就找多屏幕显示工具,今天找到一个UltraMon.能够实现此功能,在副屏幕实现一个任务栏,可以智能把自己屏幕的任务显示到各自的任务栏上.这样看上去好多了,还有其他一些辅助功能和快捷方式.</p>
<p>UltraMon v3.02 汉化版下载地址:<a href="http://www.crsky.com/soft/1222.html">http://www.crsky.com/soft/1222.html</a></p>
<p>另外搜索中还找到一个<a id="ctl03_TitleUrl" href="http://www.cnblogs.com/wuchang/archive/2006/06/20/430766.html">Windows系统下的多显示器模式开发日记 [转]</a></p>
<p>其实WINDOWS API好像就有这些东西,要实现起来并不复杂.</p>

	标签：<a href="http://www.vpnall.com/tag/ultramon/" title="UltraMon" rel="tag">UltraMon</a>, <a href="http://www.vpnall.com/tag/%e5%a4%9a%e5%b1%8f%e5%b9%95/" title="多屏幕" rel="tag">多屏幕</a>, <a href="http://www.vpnall.com/tag/%e5%a4%9a%e6%98%be%e7%a4%ba%e5%99%a8/" title="多显示器" rel="tag">多显示器</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li>无相关日志</li>
	</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/h3wB0_tvuis" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/02/%e5%a4%9a%e5%b1%8f%e5%b9%95%e6%98%be%e7%a4%ba%e5%b7%a5%e5%85%b7ultramon/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/02/%e5%a4%9a%e5%b1%8f%e5%b9%95%e6%98%be%e7%a4%ba%e5%b7%a5%e5%85%b7ultramon/</feedburner:origLink></item>
		<item>
		<title>实现双显卡双显示器</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/2oOSwFIAfoc/</link>
		<comments>http://www.vpnall.com/2010/02/%e5%ae%9e%e7%8e%b0%e5%8f%8c%e6%98%be%e5%8d%a1%e5%8f%8c%e6%98%be%e7%a4%ba%e5%99%a8/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 03:58:02 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[乱七八糟]]></category>
		<category><![CDATA[Surround View]]></category>
		<category><![CDATA[双显卡]]></category>
		<category><![CDATA[双显示器]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=662</guid>
		<description><![CDATA[主机配置:
主板:七彩虹的780G
显卡:板载AIT HD 3200 + PCI-E的HD 4600 (分别都带有VGA和DVI)
显示器:19寸CRT + 17寸普屏LCD
两台显示器都是VGA接口(D-Sub)的,一直认为用了独立显卡之后,板载显卡就会被屏蔽..在... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/-wPeqs4IQO2owPlpcU0I12Kzf7k/0/da"><img src="http://feedads.g.doubleclick.net/~a/-wPeqs4IQO2owPlpcU0I12Kzf7k/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/-wPeqs4IQO2owPlpcU0I12Kzf7k/1/da"><img src="http://feedads.g.doubleclick.net/~a/-wPeqs4IQO2owPlpcU0I12Kzf7k/1/di" border="0" ismap="true"></img></a></p><p>主机配置:</p>
<p>主板:七彩虹的780G</p>
<p>显卡:板载AIT HD 3200 + PCI-E的HD 4600 (分别都带有VGA和DVI)</p>
<p>显示器:19寸CRT + 17寸普屏LCD</p>
<p>两台显示器都是VGA接口(D-Sub)的,一直认为用了独立显卡之后,板载显卡就会被屏蔽..在网上找了找也没什么资料.今天狠心研究一下,发现有人说可以..估计必须要在BIOS里面设置,那就近BIOS里面看看,居然被我发现一个选项,&#8221;Surround View&#8221;,英文解析看了一下大概就是这个意思,有独立显卡的情况下是否屏蔽板载显卡.把选项设置,重启,系统果然找到新硬件了.</p>
<p><a href="http://www.vpnall.com/wp-content/uploads/2010/02/crt.jpg"><img class="aligncenter size-full wp-image-663" title="双显卡双显示器" src="http://www.vpnall.com/wp-content/uploads/2010/02/crt.jpg" alt="" width="465" height="512" /></a></p>
<p>这样就实现了双显卡双显示器,理论上还可以添加两台DVI的显示器呢,呵呵~~</p>
<p>不过双显示器还是不太习惯,副显示器只有桌面,没任务栏,很不方便.我更希望实现双桌面,最好互不相干自由撤换&#8230;类似我之前用的多桌面小工具<span style="font-family: Consolas, Monaco, 'Courier New', Courier, monospace; line-height: 18px; font-size: 12px; white-space: pre;">DESKTOPS&#8230;迟点再找找.</span></p>
<p><span style="font-family: Consolas, Monaco, 'Courier New', Courier, monospace; font-size: small;"><span style="line-height: 18px; white-space: pre;"><span style="font-family: Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif; font-size: small;"><span style="line-height: 19px; white-space: normal;">豆瓣有讨论 <a onmousedown="return clk(0,'','','res','1','','0CAcQFjAA')" href="http://www.douban.com/note/45485959/" target="_blank"><em>双显示器</em>的<em>桌面</em>方案</a><a href="http://www.douban.com/note/45485959/">/</a></span></span></span></span></p>
<p>下面一些资料:</p>
<p><img src="http://img.zol.com.cn/group/267/a2669914.jpg" border="0" alt="" /></p>

	标签：<a href="http://www.vpnall.com/tag/surround-view/" title="Surround View" rel="tag">Surround View</a>, <a href="http://www.vpnall.com/tag/%e5%8f%8c%e6%98%be%e5%8d%a1/" title="双显卡" rel="tag">双显卡</a>, <a href="http://www.vpnall.com/tag/%e5%8f%8c%e6%98%be%e7%a4%ba%e5%99%a8/" title="双显示器" rel="tag">双显示器</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li>无相关日志</li>
	</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/2oOSwFIAfoc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/02/%e5%ae%9e%e7%8e%b0%e5%8f%8c%e6%98%be%e5%8d%a1%e5%8f%8c%e6%98%be%e7%a4%ba%e5%99%a8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/02/%e5%ae%9e%e7%8e%b0%e5%8f%8c%e6%98%be%e5%8d%a1%e5%8f%8c%e6%98%be%e7%a4%ba%e5%99%a8/</feedburner:origLink></item>
		<item>
		<title>php单例模式的mysql数据访问类</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/18FcsttY5ZU/</link>
		<comments>http://www.vpnall.com/2010/02/php%e5%8d%95%e4%be%8b%e6%a8%a1%e5%bc%8f%e7%9a%84mysql%e6%95%b0%e6%8d%ae%e8%ae%bf%e9%97%ae%e7%b1%bb/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 13:08:58 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[代码]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[单例模式]]></category>
		<category><![CDATA[数据类]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=659</guid>
		<description><![CDATA[最近在弄PHPRPC,才发现原来的mysql数据类不能用,在Q群上,群主建议我用单例模式实现db类,网上找来这个试试.
使用方法
$db=DbMySql::get_instance(&#8216;localhost&#8217;,'linji&#8217;,'root&#8217;,'12345678&#8242;,&#8217;... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/1u_qo_ZfKWNHtXmoQOAFCbvAGkI/0/da"><img src="http://feedads.g.doubleclick.net/~a/1u_qo_ZfKWNHtXmoQOAFCbvAGkI/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/1u_qo_ZfKWNHtXmoQOAFCbvAGkI/1/da"><img src="http://feedads.g.doubleclick.net/~a/1u_qo_ZfKWNHtXmoQOAFCbvAGkI/1/di" border="0" ismap="true"></img></a></p><p>最近在弄PHPRPC,才发现原来的mysql数据类不能用,在Q群上,群主建议我用单例模式实现db类,网上找来这个试试.</p>
<p>使用方法</p>
<p>$db=DbMySql::get_instance(&#8216;localhost&#8217;,'linji&#8217;,'root&#8217;,'12345678&#8242;,&#8217;utf8&#8242;);</p>

<div class="wp_codebox"><table><tr id="p6592"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
</pre></td><td class="code" id="p659code2"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #000000; font-weight: bold;">class</span> DbMySql
<span style="color: #009900;">&#123;</span>
     <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000088;">$db</span><span style="color: #339933;">;</span>
     <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000088;">$dbName</span><span style="color: #339933;">;</span>
     static <span style="color: #000088;">$instance</span><span style="color: #339933;">;</span>
&nbsp;
     <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000000; font-weight: bold;">function</span> __construct<span style="color: #009900;">&#40;</span><span style="color: #000088;">$dbHost</span><span style="color: #339933;">,</span> <span style="color: #000088;">$dbName</span><span style="color: #339933;">,</span> <span style="color: #000088;">$dbUser</span><span style="color: #339933;">,</span> <span style="color: #000088;">$dbPwd</span><span style="color: #339933;">,</span> <span style="color: #000088;">$charset</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'utf8'</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
         <span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">db</span> <span style="color: #339933;">=</span> <a href="http://www.php.net/mysql_connect"><span style="color: #990000;">mysql_connect</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$dbHost</span><span style="color: #339933;">,</span> <span style="color: #000088;">$dbUser</span><span style="color: #339933;">,</span> <span style="color: #000088;">$dbPwd</span><span style="color: #009900;">&#41;</span> or <a href="http://www.php.net/die"><span style="color: #990000;">die</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Could not connect: '</span> <span style="color: #339933;">.</span> <a href="http://www.php.net/mysql_error"><span style="color: #990000;">mysql_error</span></a><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">select_db</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$dbName</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">query</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;SET NAMES <span style="color: #006699; font-weight: bold;">$charset</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
         <span style="color: #009900;">&#125;</span>
&nbsp;
     <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000000; font-weight: bold;">function</span> __clone<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
    <span style="color: #009900;">&#125;</span>
&nbsp;
     <span style="color: #000000; font-weight: bold;">public</span> static <span style="color: #000000; font-weight: bold;">function</span> get_instance<span style="color: #009900;">&#40;</span><span style="color: #000088;">$dbHost</span><span style="color: #339933;">,</span> <span style="color: #000088;">$dbName</span><span style="color: #339933;">,</span> <span style="color: #000088;">$dbUser</span><span style="color: #339933;">,</span> <span style="color: #000088;">$dbPwd</span><span style="color: #339933;">,</span> <span style="color: #000088;">$charset</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
         <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">self</span> <span style="color: #339933;">::</span> <span style="color: #000088;">$instance</span> instanceof <span style="color: #000000; font-weight: bold;">self</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
            <span style="color: #009900;">&#123;</span>
             <span style="color: #000000; font-weight: bold;">self</span> <span style="color: #339933;">::</span> <span style="color: #000088;">$instance</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #000000; font-weight: bold;">self</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$dbHost</span><span style="color: #339933;">,</span> <span style="color: #000088;">$dbName</span><span style="color: #339933;">,</span> <span style="color: #000088;">$dbUser</span><span style="color: #339933;">,</span> <span style="color: #000088;">$dbPwd</span><span style="color: #339933;">,</span> <span style="color: #000088;">$charset</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
             <span style="color: #009900;">&#125;</span>
         <span style="color: #b1b100;">return</span> <span style="color: #000000; font-weight: bold;">self</span> <span style="color: #339933;">::</span> <span style="color: #000088;">$instance</span><span style="color: #339933;">;</span>
         <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #009933; font-style: italic;">/**
     * 查询表
     * 返回一个一维数组
     */</span>
     <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> get_one<span style="color: #009900;">&#40;</span><span style="color: #000088;">$sql</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
         <span style="color: #000088;">$query</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">query</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$sql</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #000088;">$rs</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">fetch_array</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$query</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">free_result</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$query</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #b1b100;">return</span> <span style="color: #000088;">$rs</span> <span style="color: #339933;">;</span>
         <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #009933; font-style: italic;">/**
     * 查询表
     * 返回一个二维数组
     */</span>
     <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> select<span style="color: #009900;">&#40;</span><span style="color: #000088;">$sql</span><span style="color: #339933;">,</span> <span style="color: #000088;">$keyfield</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">''</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
         <span style="color: #000088;">$array</span> <span style="color: #339933;">=</span> <a href="http://www.php.net/array"><span style="color: #990000;">array</span></a><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #000088;">$result</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">query</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$sql</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #b1b100;">while</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$r</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">fetch_array</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$result</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
             <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$keyfield</span><span style="color: #009900;">&#41;</span>
            <span style="color: #009900;">&#123;</span>
                 <span style="color: #000088;">$key</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$r</span><span style="color: #009900;">&#91;</span><span style="color: #000088;">$keyfield</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
                 <span style="color: #000088;">$array</span><span style="color: #009900;">&#91;</span><span style="color: #000088;">$key</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$r</span><span style="color: #339933;">;</span>
                 <span style="color: #009900;">&#125;</span>
            <span style="color: #b1b100;">else</span>
                <span style="color: #009900;">&#123;</span>
                 <span style="color: #000088;">$array</span><span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$r</span><span style="color: #339933;">;</span>
                 <span style="color: #009900;">&#125;</span>
             <span style="color: #009900;">&#125;</span>
         <span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">free_result</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$result</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #b1b100;">return</span> <span style="color: #000088;">$array</span><span style="color: #339933;">;</span>
         <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #009933; font-style: italic;">/**
     * 修改数据
     * 
     * @param tableName $ 操作的表
     * @param array $ 信息数组
     * @param where $ 条件
     */</span>
     <span style="color: #000000; font-weight: bold;">function</span> update<span style="color: #009900;">&#40;</span><span style="color: #000088;">$tableName</span><span style="color: #339933;">,</span> <span style="color: #000088;">$array</span><span style="color: #339933;">,</span> <span style="color: #000088;">$where</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">''</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
         <span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$where</span><span style="color: #009900;">&#41;</span>
        <span style="color: #009900;">&#123;</span>
             <span style="color: #000088;">$sql</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">''</span><span style="color: #339933;">;</span>
             <span style="color: #b1b100;">foreach</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$array</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$k</span> <span style="color: #339933;">=&gt;</span> <span style="color: #000088;">$v</span><span style="color: #009900;">&#41;</span>
            <span style="color: #009900;">&#123;</span>
                 <span style="color: #000088;">$sql</span> <span style="color: #339933;">.=</span> <span style="color: #0000ff;">&quot;, `<span style="color: #006699; font-weight: bold;">$k</span>`='<span style="color: #006699; font-weight: bold;">$v</span>'&quot;</span><span style="color: #339933;">;</span>
                 <span style="color: #009900;">&#125;</span>
             <span style="color: #000088;">$sql</span> <span style="color: #339933;">=</span> <a href="http://www.php.net/substr"><span style="color: #990000;">substr</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$sql</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
             <span style="color: #000088;">$sql</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;UPDATE <span style="color: #006699; font-weight: bold;">$tablename</span> SET <span style="color: #006699; font-weight: bold;">$sql</span> WHERE <span style="color: #006699; font-weight: bold;">$where</span>&quot;</span><span style="color: #339933;">;</span>
             <span style="color: #009900;">&#125;</span>
        <span style="color: #b1b100;">else</span>
            <span style="color: #009900;">&#123;</span>
             <span style="color: #000088;">$sql</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;REPLACE INTO <span style="color: #006699; font-weight: bold;">$tablename</span>(`&quot;</span> <span style="color: #339933;">.</span> <a href="http://www.php.net/implode"><span style="color: #990000;">implode</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'`,`'</span><span style="color: #339933;">,</span> <a href="http://www.php.net/array_keys"><span style="color: #990000;">array_keys</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$array</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">&quot;`) VALUES('&quot;</span> <span style="color: #339933;">.</span> <a href="http://www.php.net/implode"><span style="color: #990000;">implode</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;','&quot;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$array</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">&quot;')&quot;</span><span style="color: #339933;">;</span>
             <span style="color: #009900;">&#125;</span>
         <span style="color: #b1b100;">return</span> <span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">query</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$sql</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #009900;">&#125;</span>
&nbsp;
    <span style="color: #009933; font-style: italic;">/**
     * 添加数据
     * 
     * @param tableName $ 操作的表
     * @param array $ 信息数组
     * return int 信息id
     */</span>
     <span style="color: #000000; font-weight: bold;">function</span> insert<span style="color: #009900;">&#40;</span><span style="color: #000088;">$tableName</span><span style="color: #339933;">,</span> <span style="color: #000088;">$array</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
         <span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">query</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;INSERT INTO <span style="color: #006699; font-weight: bold;">$tableName</span>(`&quot;</span> <span style="color: #339933;">.</span> <a href="http://www.php.net/implode"><span style="color: #990000;">implode</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'`,`'</span><span style="color: #339933;">,</span> <a href="http://www.php.net/array_keys"><span style="color: #990000;">array_keys</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$array</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">&quot;`) VALUES('&quot;</span> <span style="color: #339933;">.</span> <a href="http://www.php.net/implode"><span style="color: #990000;">implode</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;','&quot;</span><span style="color: #339933;">,</span> <span style="color: #000088;">$array</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">.</span> <span style="color: #0000ff;">&quot;')&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #b1b100;">return</span> <span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">insert_id</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #009900;">&#125;</span>
&nbsp;
     <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> query<span style="color: #009900;">&#40;</span><span style="color: #000088;">$sql</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
         <span style="color: #b1b100;">return</span> <a href="http://www.php.net/mysql_query"><span style="color: #990000;">mysql_query</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$sql</span><span style="color: #339933;">,</span> <span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">db</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #009900;">&#125;</span>
&nbsp;
     <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> fetch_array<span style="color: #009900;">&#40;</span><span style="color: #000088;">$query</span><span style="color: #339933;">,</span> <span style="color: #000088;">$result_type</span> <span style="color: #339933;">=</span> MYSQL_ASSOC<span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
         <span style="color: #b1b100;">return</span> <a href="http://www.php.net/mysql_fetch_array"><span style="color: #990000;">mysql_fetch_array</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$query</span><span style="color: #339933;">,</span> <span style="color: #000088;">$result_type</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #009900;">&#125;</span>
&nbsp;
     <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> select_db<span style="color: #009900;">&#40;</span><span style="color: #000088;">$dbName</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
         <a href="http://www.php.net/mysql_select_db"><span style="color: #990000;">mysql_select_db</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$dbName</span> <span style="color: #339933;">,</span> <span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">db</span><span style="color: #009900;">&#41;</span> or <a href="http://www.php.net/die"><span style="color: #990000;">die</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Could not select database'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">dbName</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$dbName</span><span style="color: #339933;">;</span>
         <span style="color: #009900;">&#125;</span>
&nbsp;
     <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> close<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
         <span style="color: #b1b100;">return</span> <a href="http://www.php.net/mysql_close"><span style="color: #990000;">mysql_close</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">db</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #009900;">&#125;</span>
&nbsp;
     <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> free_result<span style="color: #009900;">&#40;</span><span style="color: #339933;">&amp;</span> <span style="color: #000088;">$query</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
         <span style="color: #b1b100;">return</span> <a href="http://www.php.net/mysql_free_result"><span style="color: #990000;">mysql_free_result</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$query</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #009900;">&#125;</span>
&nbsp;
     <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> insert_id<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
         <span style="color: #b1b100;">return</span> <a href="http://www.php.net/mysql_insert_id"><span style="color: #990000;">mysql_insert_id</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">db</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #009900;">&#125;</span>
&nbsp;
     <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> fetch_row<span style="color: #009900;">&#40;</span><span style="color: #000088;">$query</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
         <span style="color: #b1b100;">return</span> <a href="http://www.php.net/mysql_fetch_row"><span style="color: #990000;">mysql_fetch_row</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$query</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #009900;">&#125;</span>
&nbsp;
     <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> affected_rows<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
         <span style="color: #b1b100;">return</span> <a href="http://www.php.net/mysql_affected_rows"><span style="color: #990000;">mysql_affected_rows</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$this</span> <span style="color: #339933;">-&gt;</span> <span style="color: #004000;">db</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #009900;">&#125;</span>
&nbsp;
     <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> num_rows<span style="color: #009900;">&#40;</span><span style="color: #000088;">$query</span><span style="color: #009900;">&#41;</span>
    <span style="color: #009900;">&#123;</span>
         <span style="color: #b1b100;">return</span> <a href="http://www.php.net/mysql_num_rows"><span style="color: #990000;">mysql_num_rows</span></a><span style="color: #009900;">&#40;</span><span style="color: #000088;">$query</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
         <span style="color: #009900;">&#125;</span>
    <span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></td></tr></table></div>


	标签：<a href="http://www.vpnall.com/tag/mysql/" title="mysql" rel="tag">mysql</a>, <a href="http://www.vpnall.com/tag/php/" title="php" rel="tag">php</a>, <a href="http://www.vpnall.com/tag/%e5%8d%95%e4%be%8b%e6%a8%a1%e5%bc%8f/" title="单例模式" rel="tag">单例模式</a>, <a href="http://www.vpnall.com/tag/%e6%95%b0%e6%8d%ae%e7%b1%bb/" title="数据类" rel="tag">数据类</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.vpnall.com/2009/03/nginx_apache_mysql_php_memcached_squid/" title="[转]利用nginx+apache+mysql+php+memcached+squid搭建门户网站 (2009-03-09)">[转]利用nginx+apache+mysql+php+memcached+squid搭建门户网站</a> (0)</li>
	<li><a href="http://www.vpnall.com/2010/03/centos%e4%b8%8ayum%e5%ae%89%e8%a3%85apachephpmysqlphpmyadmin/" title="Centos上YUM安装Apache+php+Mysql+phpMyAdmin (2010-03-10)">Centos上YUM安装Apache+php+Mysql+phpMyAdmin</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/about-yii-php-framework/" title="高性能的PHP框架：Yii PHP Framework (2009-03-18)">高性能的PHP框架：Yii PHP Framework</a> (5)</li>
	<li><a href="http://www.vpnall.com/2009/05/%e9%98%b2%e6%ad%a2mysql%e8%bf%9e%e6%8e%a5%e6%95%b0%e8%bf%87%e5%a4%9a%e5%af%bc%e8%87%b4%e5%b4%a9%e6%ba%83/" title="防止mysql连接数过多导致崩溃 (2009-05-07)">防止mysql连接数过多导致崩溃</a> (0)</li>
	<li><a href="http://www.vpnall.com/2010/01/%e7%94%a8js%e7%9a%84json_decode%e8%a7%a3%e5%86%b3json%e4%b8%ad%e6%96%87%e7%bc%96%e7%a0%81%e9%97%ae%e9%a2%98/" title="用js的json_decode解决JSON中文编码问题 (2010-01-26)">用js的json_decode解决JSON中文编码问题</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/09/%e5%bc%80%e6%ba%90php%e6%95%b0%e6%8d%ae%e8%a1%a8%e7%94%9f%e6%88%90%e7%b1%bbeyedatagrid/" title="开源PHP数据表生成类EyeDataGrid (2009-09-02)">开源PHP数据表生成类EyeDataGrid</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/05/%e5%bc%80%e6%ba%90php%e5%9b%be%e8%a1%a8%e7%94%9f%e6%88%90%e5%87%bd%e6%95%b0pchart%e5%ba%94%e7%94%a8%e5%ae%9e%e4%be%8b/" title="开源PHP图表生成函数pChart应用实例 (2009-05-30)">开源PHP图表生成函数pChart应用实例</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/use-php-ajax-crossdomainhttp-get/" title="利用PHP实现AJAX跨域HTTP GET (2009-03-12)">利用PHP实现AJAX跨域HTTP GET</a> (4)</li>
</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/18FcsttY5ZU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/02/php%e5%8d%95%e4%be%8b%e6%a8%a1%e5%bc%8f%e7%9a%84mysql%e6%95%b0%e6%8d%ae%e8%ae%bf%e9%97%ae%e7%b1%bb/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/02/php%e5%8d%95%e4%be%8b%e6%a8%a1%e5%bc%8f%e7%9a%84mysql%e6%95%b0%e6%8d%ae%e8%ae%bf%e9%97%ae%e7%b1%bb/</feedburner:origLink></item>
		<item>
		<title>PHPRPC高性能远程过程调用协议介绍</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/wMY4G97En40/</link>
		<comments>http://www.vpnall.com/2010/02/phprpc%e9%ab%98%e6%80%a7%e8%83%bd%e8%bf%9c%e7%a8%8b%e8%bf%87%e7%a8%8b%e8%b0%83%e7%94%a8%e5%8d%8f%e8%ae%ae%e4%bb%8b%e7%bb%8d/#comments</comments>
		<pubDate>Sat, 06 Feb 2010 02:47:59 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[代码]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[PHPRPC]]></category>
		<category><![CDATA[RPC]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=655</guid>
		<description><![CDATA[最近在弄一个项目的API部分,想法很简单就是把数组什么序列化之后传输.今天搜索&#8221;php序列化&#8221;因为要考虑到以后其他客户端程序调用API的问题.无意中发现了这个PHPRPC.靠!这不就是我想要... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/Ws8gr9ZHlQdVKuRnkeh7-TtQQZY/0/da"><img src="http://feedads.g.doubleclick.net/~a/Ws8gr9ZHlQdVKuRnkeh7-TtQQZY/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Ws8gr9ZHlQdVKuRnkeh7-TtQQZY/1/da"><img src="http://feedads.g.doubleclick.net/~a/Ws8gr9ZHlQdVKuRnkeh7-TtQQZY/1/di" border="0" ismap="true"></img></a></p><p><em>最近在弄一个项目的API部分,想法很简单就是把数组什么序列化之后传输.今天搜索&#8221;php序列化&#8221;因为要考虑到以后其他客户端程序调用API的问题.无意中发现了这个PHPRPC.靠!这不就是我想要的东西么?还浪费了我一周,写好了大概的API接口,简单是简单了点,而且只能支持PHP自建调用.还是用成熟的东西好,再研究研究这个PHPRPC吧.</em></p>
<p>PHPRPC官方网站:http://www.phprpc.org/zh_CN/</p>
<p>下面是PHPRPC官方介绍:</p>
<blockquote><p>PHPRPC 是一个轻型的、安全的、跨网际的、跨语言的、跨平台的、跨环境的、跨域的、支持复杂对象传输的、支持引用参数传递的、支持内容输出重定向的、支持分级错误处理的、支持会话的、面向服务的高性能远程过程调用协议。</p>
<p>目前该协议的最新版本为 3.0。该版本目前已有以下几种语言的实现：</p>
<ul>
<li><strong>ASP</strong>：提供 <strong>JScript</strong> 和 <strong>VBScript</strong> 两种语言的支持。</li>
<li><strong>ActionScript</strong>：提供 ActionScript <strong>2.0</strong> 和 ActionScript <strong>3.0</strong> 两个版本的支持。</li>
<li><strong>Delphi/C++Builder/Kylix</strong>：提供 Delphi/C++Builder <strong>6.0</strong>-<strong>2009</strong> 和 Kylix 客户端的支持，不但可以支持 Win32 原生程序开发，而且还支持 Linux 程序开发。</li>
<li><strong>Java</strong>：支持 <strong>JDK 1.2</strong> 以上的所有版本，它还支持 <strong>Google Android</strong> 开发包。另外，它还有单独的 <strong>J2ME</strong> 版本，支持 <strong>CLDC-1.1</strong> 和 <strong>MIDP-1.0</strong>。</li>
<li><strong>JavaScript</strong>：提供两个版本的实现，一个使用纯 Javascript 实现，另一个需要调用一个 swf 文件，两个版本都支持跨域的远程过程调用，但是使用 swf 的版本不限制参数长度，并且有更好的安全控制机制。这两个版本已经通过完整测试的浏览器包括 <strong>IE 5+</strong>，<strong>Netscape 7+</strong>，<strong>Firefox</strong>，<strong>Mozilla</strong>，<strong>Opera</strong>，<strong>Safari</strong>，<strong>Epiphany</strong>，<strong>Camino</strong> 与 <strong>Konqueror</strong>。并且纯 JavaScript 版本还通过了 <strong>Pocket IE</strong>、<strong>Opera Mini</strong>、<strong>Opera Mobile</strong>、<strong>iPhone</strong>、<strong>Android</strong> 等手持设备浏览器的测试。</li>
<li><strong>.NET</strong>：支持 .NET 框架下所有的语言（如 <strong>C#</strong>、<strong>VB.NET</strong>、<strong>VC.NET</strong>、<strong>Delphi.NET</strong> 等），并且支持目前所有版本的 <strong>.NET Framework</strong> 和 <strong>.NET Compact Framework</strong>，当然它也支持 <strong>Mono</strong>。最新版本增加了对 <strong>SilverLight 2.0</strong> 的支持。</li>
<li><strong>PHP</strong>：支持 <strong>PHP4</strong> 与 <strong>PHP5</strong>，同样支持正处于开发阶段的 <strong>PHP6</strong>。</li>
<li><strong>Python</strong>：支持 <strong>Python 2.4、2.5、2.6</strong>，而且支持在 <strong>Google App Engine</strong> 上应用。</li>
<li><strong>Ruby</strong>：该版本支持 <strong>Ruby 1.8.5</strong> 及其更高版本。服务器除了支持以 <strong>cgi</strong>、<strong>fcgi</strong>、<strong>scgi</strong>、<strong>lsapi</strong> 方式运行外，还支持以独立服务器 ( <strong>mongrel</strong>、<strong>thin</strong>、<strong>ebb</strong> 或 <strong>webrick</strong> ) 方式运行。</li>
<li><strong>Perl</strong>：目前该版本尚不成熟，有待完善。</li>
<li><strong>Lazarus(Free Pascal)</strong>：移植自 Delphi 版本, 需要 Indy for Lazarus 支持。</li>
</ul>
<p>其中 ASP、.NET、Java、Ruby、Python 和 PHP 版本除了提供客户端实现外，还提供了服务器端实现。</p></blockquote>
<p>附:</p>
<p>PHP 序列化与 .NET 中其它方式序列化的效率对比</p>
<p><a href="http://edu.codepub.com/2009/0101/809.php">http://edu.codepub.com/2009/0101/809.php</a></p>

	标签：<a href="http://www.vpnall.com/tag/api/" title="API" rel="tag">API</a>, <a href="http://www.vpnall.com/tag/php/" title="php" rel="tag">php</a>, <a href="http://www.vpnall.com/tag/phprpc/" title="PHPRPC" rel="tag">PHPRPC</a>, <a href="http://www.vpnall.com/tag/rpc/" title="RPC" rel="tag">RPC</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.vpnall.com/2009/03/about-yii-php-framework/" title="高性能的PHP框架：Yii PHP Framework (2009-03-18)">高性能的PHP框架：Yii PHP Framework</a> (5)</li>
	<li><a href="http://www.vpnall.com/2010/01/%e7%94%a8js%e7%9a%84json_decode%e8%a7%a3%e5%86%b3json%e4%b8%ad%e6%96%87%e7%bc%96%e7%a0%81%e9%97%ae%e9%a2%98/" title="用js的json_decode解决JSON中文编码问题 (2010-01-26)">用js的json_decode解决JSON中文编码问题</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/09/%e5%bc%80%e6%ba%90php%e6%95%b0%e6%8d%ae%e8%a1%a8%e7%94%9f%e6%88%90%e7%b1%bbeyedatagrid/" title="开源PHP数据表生成类EyeDataGrid (2009-09-02)">开源PHP数据表生成类EyeDataGrid</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/05/%e5%bc%80%e6%ba%90php%e5%9b%be%e8%a1%a8%e7%94%9f%e6%88%90%e5%87%bd%e6%95%b0pchart%e5%ba%94%e7%94%a8%e5%ae%9e%e4%be%8b/" title="开源PHP图表生成函数pChart应用实例 (2009-05-30)">开源PHP图表生成函数pChart应用实例</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/06/%e5%a4%a7%e5%ae%b6%e9%83%bdopen-%e6%b7%98%e5%ae%9dapi%e5%bc%80%e6%94%be/" title="大家都OPEN 淘宝API开放 (2009-06-23)">大家都OPEN 淘宝API开放</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/use-php-ajax-crossdomainhttp-get/" title="利用PHP实现AJAX跨域HTTP GET (2009-03-12)">利用PHP实现AJAX跨域HTTP GET</a> (4)</li>
	<li><a href="http://www.vpnall.com/2009/07/%e4%bb%80%e4%b9%88%e7%bc%96%e7%a8%8b%e8%af%ad%e8%a8%80%e5%bc%80%e5%a7%8b%e5%a4%9a%e4%ba%ba%e5%ad%a6%e4%b9%a0/" title="什么编程语言开始多人学习? (2009-07-27)">什么编程语言开始多人学习?</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/nginx_apache_mysql_php_memcached_squid/" title="[转]利用nginx+apache+mysql+php+memcached+squid搭建门户网站 (2009-03-09)">[转]利用nginx+apache+mysql+php+memcached+squid搭建门户网站</a> (0)</li>
</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/wMY4G97En40" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/02/phprpc%e9%ab%98%e6%80%a7%e8%83%bd%e8%bf%9c%e7%a8%8b%e8%bf%87%e7%a8%8b%e8%b0%83%e7%94%a8%e5%8d%8f%e8%ae%ae%e4%bb%8b%e7%bb%8d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/02/phprpc%e9%ab%98%e6%80%a7%e8%83%bd%e8%bf%9c%e7%a8%8b%e8%bf%87%e7%a8%8b%e8%b0%83%e7%94%a8%e5%8d%8f%e8%ae%ae%e4%bb%8b%e7%bb%8d/</feedburner:origLink></item>
		<item>
		<title>[转]22个所见即所得在线 Web 编辑器</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/FHbUpX3mvJo/</link>
		<comments>http://www.vpnall.com/2010/02/%e8%bd%ac22%e4%b8%aa%e6%89%80%e8%a7%81%e5%8d%b3%e6%89%80%e5%be%97%e5%9c%a8%e7%ba%bf-web-%e7%bc%96%e8%be%91%e5%99%a8/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 09:32:51 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[代码]]></category>
		<category><![CDATA[FCKEditor]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[TinyMCE]]></category>
		<category><![CDATA[所见即所得]]></category>
		<category><![CDATA[编辑器]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=652</guid>
		<description><![CDATA[我们曾介绍过 10 个基于 JavaScript 的 WYSIWYG（所见即所得） 编辑器，这些 Web 编辑器可以在线编辑和处理富 Web 内容，包括格式文本，表格，图片，媒体，链接等等，非常适合集成到 CMS 网站内容... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/__g5xKotA-SZ3WzVcuEpVrmOgL4/0/da"><img src="http://feedads.g.doubleclick.net/~a/__g5xKotA-SZ3WzVcuEpVrmOgL4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/__g5xKotA-SZ3WzVcuEpVrmOgL4/1/da"><img src="http://feedads.g.doubleclick.net/~a/__g5xKotA-SZ3WzVcuEpVrmOgL4/1/di" border="0" ismap="true"></img></a></p><p>我们曾介绍过 <a href="http://www.comsharp.com/GetKnowledge/zh-CN/CMS_K792.aspx">10 个基于 JavaScript 的 WYSIWYG（所见即所得） 编辑器</a>，这些 Web 编辑器可以在线编辑和处理富 Web 内容，包括格式文本，表格，图片，媒体，链接等等，非常适合集成到 CMS 网站内容管理系统中使用。本文又搜集了 22 个 Web 在线编辑器，它们基本代表了当前 Web 编辑器的现状。</p>
<p><a href="http://sixrevisions.com/user-interface/rich-text-editors-for-2010-and-beyond/"><img src="http://images.sixrevisions.com/2010/02/01-01_rte_lead_img.jpg" alt="Rich-Text Editors for 2010 and Beyond" width="550" height="200" /></a><br />
1. <a href="http://tinymce.moxiecode.com/">TinyMCE</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-02_tinymce.jpg" alt="TinyMCE" width="550" height="182" /></p>
<p>免费，开源，轻量，基于 JavaScript，高度可定制，跨平台。<br />
2. <a href="http://www.fckeditor.net/">FCKEditor</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-03_ckeditor.jpg" alt="FCKEditor" width="550" height="176" /></p>
<p>免费，开源，用户量庞大，有良好的社区支持。<br />
3. <a href="http://developer.yahoo.com/yui/editor/">YUI Editor</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-04_yui.png" alt="YUI Editor" width="550" height="180" /></p>
<p>属于 Yahoo! YUI 的一部分，能输出纯净 XHTML 代码。<br />
4. <a href="http://nicedit.com/">NicEdit</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-05_nicedit.jpg" alt="NicEdit" width="550" height="120" /></p>
<p>简单，易用，轻量，外观漂亮。<br />
5. <a href="http://kupu.oscom.org/">Kupu</a><br />
<a href="http://en.wikipedia.org/wiki/Kupu"><img src="http://images.sixrevisions.com/2010/02/01-06_kupu.jpg" alt="Kupu" width="550" height="168" /></a></p>
<p>开源，支持 Ajax 保存，跨平台，易于集成，由 OSCOM 推出。</p>
<p>6. <a href="http://www.freerichtexteditor.com/">Free Rich Text Editor</a><br />
<a href="http://www.freerichtexteditor.com/"><img src="http://images.sixrevisions.com/2010/02/01-07_freerte.png" alt="Free  Rich Text Editor" width="550" height="151" /></a></p>
<p>非常容易部署，输出 XHTML 代码，功能丰富。<br />
7. <a href="http://www.webwizguide.com/webwizrichtexteditor/">WebWiz RichTextEditor</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-08_webwiz.jpg" alt="WebWiz RichTextEditor" width="550" height="145" /></p>
<p>这是一个商业产品，并不免费，但功能非常丰富，基于 ASP，JavaScript 和 DHTML。<br />
8. <a href="http://xstandard.com/">XStandard</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-09_xstandard.png" alt="XStandard" width="550" height="109" /></p>
<p>故名思意，这个编辑器会生成符合标准的纯净 XHTML 代码。<br />
9. <a href="http://avidansoft.com/dsrte/">Damn Small Rich Text Editor</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-10_damnsmall.jpg" alt="Damn Small Rich Text Editor" width="550" height="150" /></p>
<p>基于 jQuery 和 PHP 后台，非常小巧（~18K），但功能丰富。<br />
10. <a href="http://www.themaninblue.com/experiment/widgEditor/">WidgEditor</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-11_widgeditor.jpg" alt="WidgEditor" width="550" height="161" /></p>
<p>简单，易用，开源，即使浏览器不支持 JavaScript，仍能很好地工作。<br />
11. <a href="http://www.kevinroth.com/rte/">Kevin Roth’s Cross Browser Rich Text Editor</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-12_rothrte.jpg" alt="Kevin Roth’s Cross Browser Rich Text Editor" width="550" height="234" /></p>
<p>一个不错的编辑器，支持皮肤，符合 XHTML 标准，跨浏览器兼容，分免费版和收费版两个版本。<br />
12. <a href="http://www.openwebware.com/">OpenWYSIWYG</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-13_openwysiwyg.jpg" alt="OpenWYSIWYG" width="550" height="136" /></p>
<p>拥有许多出色的功能，容易部署，速度极快。<br />
13. <a href="http://www.codeplex.com/rte">CodePlex Rich Text Editor</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-14_codeplex.png" alt="CodePlex Rich Text Editor" width="550" height="97" /></p>
<p>基于 ASP.NET，目前只支持 IE 和 Firefox。<br />
14. <a href="http://freetextbox.com/">FreeTextBox</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-15_freetextbox.png" alt="FreeTextBox" width="550" height="161" /></p>
<p>集成了相册，拼写检查等功能，尤其适合 ASP.NET 项目。<br />
15. <a href="http://www.codeplex.com/richtextedit">Silverlight Rich Text Editor</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-16_silverlight.jpg" alt="Silverlight Rich Text Editor" width="550" height="94" /></p>
<p>适合与微软的 Silverlight 一起使用，功能丰富，不过，似乎原作者已经不再更新这个项目了。<br />
16. <a href="http://www.bitfluxeditor.org/">BXE (Bitflux Editor)</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-17_bitflux.png" alt="BXE (Bitflux Editor)" width="550" height="94" /></p>
<p>从 2002 年以来一直开源，拥有一批非常忠实的用户和社区，据称是目前最好的 WYSIWYG 编辑器之一。<br />
17. <a href="http://markitup.jaysalvat.com/home/">MarkItUp!</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-18_markitup.jpg" alt="MarkItUp!" width="550" height="236" /></p>
<p>基于 jQuery，轻量，支持键盘快捷键，支持多种代码，包括 HTML, Textile, Wiki Syntax, Markdown, BBcode。<br />
18. <a href="http://dojotoolkit.org/book/dojo-book-0-9/part-2-dijit/advanced-editing-and-display/editor-rich-text">Dijit Editor for Dojo</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-19_dojo.jpg" alt="Dijit Editor for Dojo" width="550" height="100" /></p>
<p>基于 Dojo JavaScript 框架，输出干净 HTML 代码，支持插件，拥有清新的按钮。<br />
19. <a href="http://www.cdolivet.com/editarea/editarea/docs/">EditArea</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-20_editarea.png" alt="EditArea" width="550" height="98" /></p>
<p>易于集成，干净代码，实时语法加亮，自动缩进，多语种支持，多实例支持，全屏模式等功能。<br />
20. <a href="http://www.wymeditor.org/">WYMeditor</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-21_wymeditor.jpg" alt="WYMeditor" width="550" height="124" /></p>
<p>输出干净的 XHTML + SCTRICT 代码，注重结构与语义，在输出结构化 XHTML 代码方面是最佳方案。<br />
21. <a href="http://www.unverse.net/whizzywig-cross-browser-html-editor.html">Whizzywig</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-22_whizzywig.png" alt="Whizzywig" width="550" height="161" /></p>
<p>多浏览器支持，Web 安全色选择器，支持表格，图片，Word 代码清洁，拼写检查等功能。<br />
22. <a href="http://xinha.webfactional.com/">Xinha</a><br />
<img src="http://images.sixrevisions.com/2010/02/01-23_xinha.png" alt="Xinha" width="550" height="152" /></p>
<p>基于<a href="http://www.opensource.org/licenses/bsd-license.html">BSD协议</a>，易于部署与扩展，拥有很好的社区支持。</p>
<p>本文来源：<a href="http://sixrevisions.com/user-interface/rich-text-editors-for-2010-and-beyond/">http://sixrevisions.com/user-interface/rich-text-editors-for-2010-and-beyond/</a></p>

	标签：<a href="http://www.vpnall.com/tag/fckeditor/" title="FCKEditor" rel="tag">FCKEditor</a>, <a href="http://www.vpnall.com/tag/javascript/" title="JavaScript" rel="tag">JavaScript</a>, <a href="http://www.vpnall.com/tag/tinymce/" title="TinyMCE" rel="tag">TinyMCE</a>, <a href="http://www.vpnall.com/tag/%e6%89%80%e8%a7%81%e5%8d%b3%e6%89%80%e5%be%97/" title="所见即所得" rel="tag">所见即所得</a>, <a href="http://www.vpnall.com/tag/%e7%bc%96%e8%be%91%e5%99%a8/" title="编辑器" rel="tag">编辑器</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.vpnall.com/2010/01/%e7%94%a8js%e7%9a%84json_decode%e8%a7%a3%e5%86%b3json%e4%b8%ad%e6%96%87%e7%bc%96%e7%a0%81%e9%97%ae%e9%a2%98/" title="用js的json_decode解决JSON中文编码问题 (2010-01-26)">用js的json_decode解决JSON中文编码问题</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/06/%e6%95%b4%e7%90%86%e5%ae%9e%e7%94%a8javascript%e5%bc%80%e5%8f%91%e5%b7%a5%e5%85%b7/" title="整理实用JavaScript开发工具 (2009-06-24)">整理实用JavaScript开发工具</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/10/javascript-refresh-page/" title="[转]利用javascript实现web页面刷新的方法 (2009-10-03)">[转]利用javascript实现web页面刷新的方法</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/10/%e8%bd%acjavascript%e6%8a%8a%e6%95%b0%e5%ad%97%e6%a0%bc%e5%bc%8f%e5%8c%96%e8%bd%ac%e6%8d%a2%e6%88%90%e8%b4%a7%e5%b8%81%e5%9e%8b/" title="[转]javascript把数字格式化转换成货币型 (2009-10-08)">[转]javascript把数字格式化转换成货币型</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/40-stand-alone-javascript-libraries-for-specific-purposes2/" title="[转]40 个轻量级 JavaScript 库 （下） (2009-03-07)">[转]40 个轻量级 JavaScript 库 （下）</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/04/%e8%bd%ac25-%e4%b8%aa%e5%9c%a8-web-%e4%b8%ad%e5%b5%8c%e5%85%a5%e5%9b%be%e8%a1%a8%e7%9a%84%e5%85%8d%e8%b4%b9%e8%b5%84%e6%ba%90/" title="[转]25 个在 Web 中嵌入图表的免费资源 (2009-04-19)">[转]25 个在 Web 中嵌入图表的免费资源</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/07/js%e5%ae%9e%e7%8e%b0%e9%a1%b5%e9%9d%a2%e7%84%a6%e7%82%b9%e8%ae%a1%e6%97%b6/" title="js实现页面焦点计时 (2009-07-27)">js实现页面焦点计时</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/07/flash-as3%e4%b8%8ejavascript%e7%9b%b8%e4%ba%92%e9%80%9a%e4%bf%a1%e4%be%8b%e5%ad%90/" title="flash AS3与javascript相互通信(例子) (2009-07-19)">flash AS3与javascript相互通信(例子)</a> (0)</li>
</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/FHbUpX3mvJo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/02/%e8%bd%ac22%e4%b8%aa%e6%89%80%e8%a7%81%e5%8d%b3%e6%89%80%e5%be%97%e5%9c%a8%e7%ba%bf-web-%e7%bc%96%e8%be%91%e5%99%a8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/02/%e8%bd%ac22%e4%b8%aa%e6%89%80%e8%a7%81%e5%8d%b3%e6%89%80%e5%be%97%e5%9c%a8%e7%ba%bf-web-%e7%bc%96%e8%be%91%e5%99%a8/</feedburner:origLink></item>
		<item>
		<title>[转]21个实用便利的PHP代码</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/vyD4SWkGgjY/</link>
		<comments>http://www.vpnall.com/2010/02/%e8%bd%ac21%e4%b8%aa%e5%ae%9e%e7%94%a8%e4%be%bf%e5%88%a9%e7%9a%84php%e4%bb%a3%e7%a0%81/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 09:15:34 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[代码]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=650</guid>
		<description><![CDATA[1. PHP可阅读随机字符串
此代码将创建一个可阅读的字符串，使其更接近词典中的单词，实用且具有密码验证功能。
/**************
*@length - length of random string (must be a multiple of 2)
**************/
function ... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/XIFMRVbNab35Oym2_g2MO7QxCQ4/0/da"><img src="http://feedads.g.doubleclick.net/~a/XIFMRVbNab35Oym2_g2MO7QxCQ4/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/XIFMRVbNab35Oym2_g2MO7QxCQ4/1/da"><img src="http://feedads.g.doubleclick.net/~a/XIFMRVbNab35Oym2_g2MO7QxCQ4/1/di" border="0" ismap="true"></img></a></p><h3>1. PHP可阅读随机字符串</h3>
<p>此代码将创建一个可阅读的字符串，使其更接近词典中的单词，实用且具有密码验证功能。</p>
<pre><code>/**************
*@length - length of random string (must be a multiple of 2)
**************/
function readable_random_string($length = 6){
    $conso=array("b","c","d","f","g","h","j","k","l",
    "m","n","p","r","s","t","v","w","x","y","z");
    $vocal=array("a","e","i","o","u");
    $password="";
    srand ((double)microtime()*1000000);
    $max = $length/2;
    for($i=1; $i&lt;=$max; $i++)
    {
    $password.=$conso[rand(0,19)];
    $password.=$vocal[rand(0,4)];
    }
    return $password;
}</code></pre>
<h3>2. PHP生成一个随机字符串</h3>
<p>如果不需要可阅读的字符串，使用此函数替代，即可创建一个随机字符串，作为用户的随机密码等。</p>
<pre><code>/*************
*@l - length of random string
*/
function generate_rand($l){
  $c= "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
  srand((double)microtime()*1000000);
  for($i=0; $i&lt;$l; $i++) {
      $rand.= $c[rand()%strlen($c)];
  }
  return $rand;
 }</code></pre>
<h3>3. PHP编码电子邮件地址</h3>
<p>使用此代码，可以将任何电子邮件地址编码为 html 字符实体，以防止被垃圾邮件程序收集。</p>
<pre><code>function encode_email($email='info@domain.com', $linkText='Contact Us', $attrs ='class="emailencoder"' )
{
    // remplazar aroba y puntos
    $email = str_replace('@', '&amp;#64;', $email);
    $email = str_replace('.', '&amp;#46;', $email);
    $email = str_split($email, 5);  

    $linkText = str_replace('@', '&amp;#64;', $linkText);
    $linkText = str_replace('.', '&amp;#46;', $linkText);
    $linkText = str_split($linkText, 5);  

    $part1 = '&lt;a href="ma';
    $part2 = 'ilto&amp;#58;';
    $part3 = '" '. $attrs .' &gt;';
    $part4 = '&lt;/a&gt;';  

    $encoded = '&lt;script type="text/javascript"&gt;';
    $encoded .= "document.write('$part1');";
    $encoded .= "document.write('$part2');";
    foreach($email as $e)
    {
            $encoded .= "document.write('$e');";
    }
    $encoded .= "document.write('$part3');";
    foreach($linkText as $l)
    {
            $encoded .= "document.write('$l');";
    }
    $encoded .= "document.write('$part4');";
    $encoded .= '&lt;/script&gt;';  

    return $encoded;
}</code></pre>
<h3>4. PHP验证邮件地址</h3>
<p>电子邮件验证也许是中最常用的网页表单验证，此代码除了验证电子邮件地址，也可以选择检查邮件域所属 DNS 中的 MX 记录，使邮件验证功能更加强大。</p>
<pre><code>function is_valid_email($email, $test_mx = false)
{
    if(eregi("^([_a-z0-9-]+)(\.[_a-z0-9-]+)*@([a-z0-9-]+)(\.[a-z0-9-]+)*(\.[a-z]{2,4})$", $email))
        if($test_mx)
        {
            list($username, $domain) = split("@", $email);
            return getmxrr($domain, $mxrecords);
        }
        else
            return true;
    else
        return false;
}</code></pre>
<h3>5. PHP列出目录内容</h3>
<pre><code>function list_files($dir)
{
    if(is_dir($dir))
    {
        if($handle = opendir($dir))
        {
            while(($file = readdir($handle)) !== false)
            {
                if($file != "." &amp;&amp; $file != ".." &amp;&amp; $file != "Thumbs.db")
                {
                    echo '&lt;a target="_blank" href="'.$dir.$file.'"&gt;'.$file.'&lt;/a&gt;&lt;br&gt;'."\n";
                }
            }
            closedir($handle);
        }
    }
}</code></pre>
<h3>6. PHP销毁目录</h3>
<p>删除一个目录，包括它的内容。</p>
<pre><code>/*****
*@dir - Directory to destroy
*@virtual[optional]- whether a virtual directory
*/
function destroyDir($dir, $virtual = false)
{
    $ds = DIRECTORY_SEPARATOR;
    $dir = $virtual ? realpath($dir) : $dir;
    $dir = substr($dir, -1) == $ds ? substr($dir, 0, -1) : $dir;
    if (is_dir($dir) &amp;&amp; $handle = opendir($dir))
    {
        while ($file = readdir($handle))
        {
            if ($file == '.' || $file == '..')
            {
                continue;
            }
            elseif (is_dir($dir.$ds.$file))
            {
                destroyDir($dir.$ds.$file);
            }
            else
            {
                unlink($dir.$ds.$file);
            }
        }
        closedir($handle);
        rmdir($dir);
        return true;
    }
    else
    {
        return false;
    }
}</code></pre>
<h3>7. PHP解析 JSON 数据</h3>
<p>与大多数流行的 Web 服务如 twitter 通过开放 API 来提供数据一样，它总是能够知道如何解析 API 数据的各种传送格式，包括 JSON，XML 等等。</p>
<pre><code>$json_string='{"id":1,"name":"foo","email":"foo@foobar.com","interest":["wordpress","php"]} ';
$obj=json_decode($json_string);
echo $obj-&gt;name; //prints foo
echo $obj-&gt;interest[1]; //prints php</code></pre>
<pre><code>
<h3>8. PHP解析 XML 数据</h3>
<pre><code>//xml string
$xml_string="&lt;?xml version='1.0'?&gt;
&lt;users&gt;
   &lt;user id='398'&gt;
      &lt;name&gt;Foo&lt;/name&gt;
      &lt;email&gt;foo@bar.com&lt;/name&gt;
   &lt;/user&gt;
   &lt;user id='867'&gt;
      &lt;name&gt;Foobar&lt;/name&gt;
      &lt;email&gt;foobar@foo.com&lt;/name&gt;
   &lt;/user&gt;
&lt;/users&gt;";  

//load the xml string using simplexml
$xml = simplexml_load_string($xml_string);  

//loop through the each node of user
foreach ($xml-&gt;user as $user)
{
   //access attribute
   echo $user['id'], '  ';
   //subnodes are accessed by -&gt; operator
   echo $user-&gt;name, '  ';
   echo $user-&gt;email, '&lt;br /&gt;';
}</code></pre>
<h3>9. PHP创建日志缩略名</h3>
<p>创建用户友好的日志缩略名。</p>
<pre><code>function create_slug($string){
    $slug=preg_replace('/[^A-Za-z0-9-]+/', '-', $string);
    return $slug;
}</code></pre>
<h3>10. PHP获取客户端真实 IP 地址</h3>
<p>该函数将获取用户的真实 IP 地址，即便他使用代理服务器。</p>
<pre><code>function getRealIpAddr()
{
    if (!emptyempty($_SERVER['HTTP_CLIENT_IP']))
    {
        $ip=$_SERVER['HTTP_CLIENT_IP'];
    }
    elseif (!emptyempty($_SERVER['HTTP_X_FORWARDED_FOR']))
    //to check ip is pass from proxy
    {
        $ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
    }
    else
    {
        $ip=$_SERVER['REMOTE_ADDR'];
    }
    return $ip;
}</code></pre>
<h3>11. PHP强制性文件下载</h3>
<p>为用户提供强制性的文件下载功能。</p>
<pre><code>/********************
*@file - path to file
*/
function force_download($file)
{
    if ((isset($file))&amp;&amp;(file_exists($file))) {
       header("Content-length: ".filesize($file));
       header('Content-Type: application/octet-stream');
       header('Content-Disposition: attachment; filename="' . $file . '"');
       readfile("$file");
    } else {
       echo "No file selected";
    }
}</code></pre>
<h3>12. PHP创建标签云</h3>
<pre><code>function getCloud( $data = array(), $minFontSize = 12, $maxFontSize = 30 )
{
    $minimumCount = min( array_values( $data ) );
    $maximumCount = max( array_values( $data ) );
    $spread       = $maximumCount - $minimumCount;
    $cloudHTML    = '';
    $cloudTags    = array();  

    $spread == 0 &amp;&amp; $spread = 1;  

    foreach( $data as $tag =&gt; $count )
    {
        $size = $minFontSize + ( $count - $minimumCount )
            * ( $maxFontSize - $minFontSize ) / $spread;
        $cloudTags[] = '&lt;a style="font-size: ' . floor( $size ) . 'px'
        . '" href="#" title="\'' . $tag  .
        '\' returned a count of ' . $count . '"&gt;'
        . htmlspecialchars( stripslashes( $tag ) ) . '&lt;/a&gt;';
    }  

    return join( "\n", $cloudTags ) . "\n";
}
/**************************
****   Sample usage    ***/
$arr = Array('Actionscript' =&gt; 35, 'Adobe' =&gt; 22, 'Array' =&gt; 44, 'Background' =&gt; 43,
    'Blur' =&gt; 18, 'Canvas' =&gt; 33, 'Class' =&gt; 15, 'Color Palette' =&gt; 11, 'Crop' =&gt; 42,
    'Delimiter' =&gt; 13, 'Depth' =&gt; 34, 'Design' =&gt; 8, 'Encode' =&gt; 12, 'Encryption' =&gt; 30,
    'Extract' =&gt; 28, 'Filters' =&gt; 42);
echo getCloud($arr, 12, 36);</code></pre>
<h3>13. PHP寻找两个字符串的相似性</h3>
<p>PHP 提供了一个极少使用的 similar_text 函数，但此函数非常有用，用于比较两个字符串并返回相似程度的百分比。</p>
<pre><code>similar_text($string1, $string2, $percent);
//$percent will have the percentage of similarity</code></pre>
<h3>14. PHP在应用程序中使用 Gravatar 通用头像</h3>
<p>随着 WordPress 越来越普及，Gravatar 也随之流行。由于 Gravatar 提供了易于使用的 API，将其纳入应用程序也变得十分方便。</p>
<pre><code>/******************
*@email - Email address to show gravatar for
*@size - size of gravatar
*@default - URL of default gravatar to use
*@rating - rating of Gravatar(G, PG, R, X)
*/
function show_gravatar($email, $size, $default, $rating)
{
    echo '&lt;img src="http://www.gravatar.com/avatar.php?gravatar_id='.md5($email).
        '&amp;default='.$default.'&amp;size='.$size.'&amp;rating='.$rating.'" width="'.$size.'px"
        height="'.$size.'px" /&gt;';
}</code></pre>
<pre><code>
<h3>15. PHP在字符断点处截断文字</h3>

所谓断字 (word break)，即一个单词可在转行时断开的地方。这一函数将在断字处截断字符串。
<pre><code>// Original PHP code by Chirp Internet: www.chirp.com.au
// Please acknowledge use of this code by including this header.
function myTruncate($string, $limit, $break=".", $pad="...") {
    // return with no change if string is shorter than $limit
    if(strlen($string) &lt;= $limit)
        return $string;   

    // is $break present between $limit and the end of the string?
    if(false !== ($breakpoint = strpos($string, $break, $limit))) {
        if($breakpoint &lt; strlen($string) - 1) {
            $string = substr($string, 0, $breakpoint) . $pad;
        }
    }
    return $string;
}
/***** Example ****/
$short_string=myTruncate($long_string, 100, ' ');</code></pre>
<h3>16. PHP文件 Zip 压缩</h3>
<pre><code>/* creates a compressed zip file */
function create_zip($files = array(),$destination = '',$overwrite = false) {
    //if the zip file already exists and overwrite is false, return false
    if(file_exists($destination) &amp;&amp; !$overwrite) { return false; }
    //vars
    $valid_files = array();
    //if files were passed in...
    if(is_array($files)) {
        //cycle through each file
        foreach($files as $file) {
            //make sure the file exists
            if(file_exists($file)) {
                $valid_files[] = $file;
            }
        }
    }
    //if we have good files...
    if(count($valid_files)) {
        //create the archive
        $zip = new ZipArchive();
        if($zip-&gt;open($destination,$overwrite ? ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE) !== true) {
            return false;
        }
        //add the files
        foreach($valid_files as $file) {
            $zip-&gt;addFile($file,$file);
        }
        //debug
        //echo 'The zip archive contains ',$zip-&gt;numFiles,' files with a status of ',$zip-&gt;status;  

        //close the zip -- done!
        $zip-&gt;close();  

        //check to make sure the file exists
        return file_exists($destination);
    }
    else
    {
        return false;
    }
}
/***** Example Usage ***/
$files=array('file1.jpg', 'file2.jpg', 'file3.gif');
create_zip($files, 'myzipfile.zip', true);</code></pre>
<h3>17. PHP解压缩 Zip 文件</h3>
<pre><code>/**********************
*@file - path to zip file
*@destination - destination directory for unzipped files
*/
function unzip_file($file, $destination){
    // create object
    $zip = new ZipArchive() ;
    // open archive
    if ($zip-&gt;open($file) !== TRUE) {
        die (’Could not open archive’);
    }
    // extract contents to destination directory
    $zip-&gt;extractTo($destination);
    // close archive
    $zip-&gt;close();
    echo 'Archive extracted to directory';
}</code></pre>
<h3>18. PHP为 URL 地址预设 http 字符串</h3>
<p>有时需要接受一些表单中的网址输入，但用户很少添加 http:// 字段，此代码将为网址添加该字段。</p>
<pre><code>if (!preg_match("/^(http|ftp):/", $_POST['url'])) {
   $_POST['url'] = 'http://'.$_POST['url'];
}</code></pre>
<h3>19. PHP将网址字符串转换成超级链接</h3>
<p>该函数将 URL 和 E-mail 地址字符串转换为可点击的超级链接。</p>
<pre><code>function makeClickableLinks($text) {
 $text = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_+.~#?&amp;//=]+)',
 '&lt;a href="\1"&gt;\1&lt;/a&gt;', $text);
 $text = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_+.~#?&amp;//=]+)',
 '\1&lt;a href="http://\2"&gt;\2&lt;/a&gt;', $text);
 $text = eregi_replace('([_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3})',
 '&lt;a href="mailto:\1"&gt;\1&lt;/a&gt;', $text);  

return $text;
}</code></pre>
<h3>20. PHP调整图像尺寸</h3>
<p>创建图像缩略图需要许多时间，此代码将有助于了解缩略图的逻辑。</p>
<pre><code>/**********************
*@filename - path to the image
*@tmpname - temporary path to thumbnail
*@xmax - max width
*@ymax - max height
*/
function resize_image($filename, $tmpname, $xmax, $ymax)
{
    $ext = explode(".", $filename);
    $ext = $ext[count($ext)-1];  

    if($ext == "jpg" || $ext == "jpeg")
        $im = imagecreatefromjpeg($tmpname);
    elseif($ext == "png")
        $im = imagecreatefrompng($tmpname);
    elseif($ext == "gif")
        $im = imagecreatefromgif($tmpname);  

    $x = imagesx($im);
    $y = imagesy($im);  

    if($x &lt;= $xmax &amp;&amp; $y &lt;= $ymax)
        return $im;  

    if($x &gt;= $y) {
        $newx = $xmax;
        $newy = $newx * $y / $x;
    }
    else {
        $newy = $ymax;
        $newx = $x / $y * $newy;
    }  

    $im2 = imagecreatetruecolor($newx, $newy);
    imagecopyresized($im2, $im, 0, 0, 0, 0, floor($newx), floor($newy), $x, $y);
    return $im2;
}</code></pre>
<h3>21. PHP检测 ajax 请求</h3>
<p>大多数的 JavaScript 框架如 jquery，Mootools 等，在发出 Ajax 请求时，都会发送额外的 HTTP_X_REQUESTED_WITH 头部信息，头当他们一个ajax请求，因此你可以在服务器端侦测到 Ajax 请求。</p>
<pre><code>if(!emptyempty($_SERVER['HTTP_X_REQUESTED_WITH']) &amp;&amp; strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest'){
    //If AJAX Request Then
}else{
//something else
}</code></pre>
<p></code></pre>
<p></code></pre>

	标签：<a href="http://www.vpnall.com/tag/php/" title="php" rel="tag">php</a>, <a href="http://www.vpnall.com/tag/%e4%bb%a3%e7%a0%81/" title="代码" rel="tag">代码</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.vpnall.com/2009/03/about-yii-php-framework/" title="高性能的PHP框架：Yii PHP Framework (2009-03-18)">高性能的PHP框架：Yii PHP Framework</a> (5)</li>
	<li><a href="http://www.vpnall.com/2010/01/%e7%94%a8js%e7%9a%84json_decode%e8%a7%a3%e5%86%b3json%e4%b8%ad%e6%96%87%e7%bc%96%e7%a0%81%e9%97%ae%e9%a2%98/" title="用js的json_decode解决JSON中文编码问题 (2010-01-26)">用js的json_decode解决JSON中文编码问题</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/09/%e5%bc%80%e6%ba%90php%e6%95%b0%e6%8d%ae%e8%a1%a8%e7%94%9f%e6%88%90%e7%b1%bbeyedatagrid/" title="开源PHP数据表生成类EyeDataGrid (2009-09-02)">开源PHP数据表生成类EyeDataGrid</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/05/%e5%bc%80%e6%ba%90php%e5%9b%be%e8%a1%a8%e7%94%9f%e6%88%90%e5%87%bd%e6%95%b0pchart%e5%ba%94%e7%94%a8%e5%ae%9e%e4%be%8b/" title="开源PHP图表生成函数pChart应用实例 (2009-05-30)">开源PHP图表生成函数pChart应用实例</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/use-php-ajax-crossdomainhttp-get/" title="利用PHP实现AJAX跨域HTTP GET (2009-03-12)">利用PHP实现AJAX跨域HTTP GET</a> (4)</li>
	<li><a href="http://www.vpnall.com/2009/07/%e4%bb%80%e4%b9%88%e7%bc%96%e7%a8%8b%e8%af%ad%e8%a8%80%e5%bc%80%e5%a7%8b%e5%a4%9a%e4%ba%ba%e5%ad%a6%e4%b9%a0/" title="什么编程语言开始多人学习? (2009-07-27)">什么编程语言开始多人学习?</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/nginx_apache_mysql_php_memcached_squid/" title="[转]利用nginx+apache+mysql+php+memcached+squid搭建门户网站 (2009-03-09)">[转]利用nginx+apache+mysql+php+memcached+squid搭建门户网站</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/08/%e8%bd%acphp%e4%b8%ad%e7%9a%84static%e5%92%8cglobal/" title="[转]php中的static和global (2009-08-26)">[转]php中的static和global</a> (0)</li>
</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/vyD4SWkGgjY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/02/%e8%bd%ac21%e4%b8%aa%e5%ae%9e%e7%94%a8%e4%be%bf%e5%88%a9%e7%9a%84php%e4%bb%a3%e7%a0%81/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/02/%e8%bd%ac21%e4%b8%aa%e5%ae%9e%e7%94%a8%e4%be%bf%e5%88%a9%e7%9a%84php%e4%bb%a3%e7%a0%81/</feedburner:origLink></item>
		<item>
		<title>[转]普通显示器玩立体游戏|红蓝立体游戏|iZ3D设置办法</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/lLJwTVQEWTA/</link>
		<comments>http://www.vpnall.com/2010/02/%e8%bd%ac%e6%99%ae%e9%80%9a%e6%98%be%e7%a4%ba%e5%99%a8%e7%8e%a9%e7%ab%8b%e4%bd%93%e6%b8%b8%e6%88%8f%e7%ba%a2%e8%93%9d%e7%ab%8b%e4%bd%93%e6%b8%b8%e6%88%8fiz3d%e8%ae%be%e7%bd%ae%e5%8a%9e%e6%b3%95/#comments</comments>
		<pubDate>Thu, 04 Feb 2010 12:02:51 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[乱七八糟]]></category>
		<category><![CDATA[3D游戏]]></category>
		<category><![CDATA[iZ3D]]></category>
		<category><![CDATA[红蓝立体游戏]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=645</guid>
		<description><![CDATA[原文:http://hi.baidu.com/joeyao/blog/item/73f9644aee366b2a08f7ef13.html
【2010年1月15日更新：喜欢3D的朋友可以去china3-d.com看看】
【寒假过年的时候，我会给大家放出一个立体游戏的下载链接……】
【感谢来... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/m4HtrGAm6h6FA5eseo7g9Wwv1Zk/0/da"><img src="http://feedads.g.doubleclick.net/~a/m4HtrGAm6h6FA5eseo7g9Wwv1Zk/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/m4HtrGAm6h6FA5eseo7g9Wwv1Zk/1/da"><img src="http://feedads.g.doubleclick.net/~a/m4HtrGAm6h6FA5eseo7g9Wwv1Zk/1/di" border="0" ismap="true"></img></a></p><p>原文:<a href="http://hi.baidu.com/joeyao/blog/item/73f9644aee366b2a08f7ef13.html">http://hi.baidu.com/joeyao/blog/item/73f9644aee366b2a08f7ef13.html</a></p>
<p>【2010年1月15日更新：喜欢3D的朋友可以去china3-d.com看看】<br />
【寒假过年的时候，我会给大家放出一个立体游戏的下载链接……】<br />
【感谢来自<a href="http://bbs.winning11cn.com/viewthread.php?tid=826686&amp;extra=page%3D1" target="_blank">完全实况11论坛</a>网友对我的支持，谢谢】</p>
<p>首先，因为立体效果无法用言语表达，所以下面的一张红蓝立体测试图片必须用红蓝立体眼镜才可观察出立体效果。红蓝立体眼镜网上可以很轻松的买到，纸质的几块钱一副，而且去iZ3d网站可以免费索要。树脂的淘宝上卖十几块，还有那种挂夹的树脂镜，可以夹在近视眼镜上。</p>
<p>其次呢，跟立体电影一样，这个方法玩游戏也是利用的红蓝互补原理，需要红蓝分色眼镜就可以，对显示器也没有特殊要求，普通彩色显示器均可，但是如果眼镜颜色不正，效果会大打折扣。<strong>注：如果显示器有图片模式，请选择图片模式，这个模式里显示器力求色彩准确，立体效果好，不能开启动态对比功能，否则颜色会有偏差。明基显示器大都有图片模式。如果是树脂镜片，镜片颜色比较浅，需要把显示器亮度调低一些。</strong></p>
<p>最后，我想说，<strong>如果你的机器配置不太高，请跳过这篇文章</strong>。因为使用立体显示<strong>对显卡有30%-50%的额外计算量</strong>。我的显卡是ATi HD3850，需要超频才能顺畅玩孤岛危机（立体显示开启，分辨率1680*1050）。不过我这个配置立体玩WOW肯定没有问题。</p>
<p>好了，废话不多说，开始安装</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>我们首先要下载IZ3D<br />
<a title="注意!请认真查看此链接地址后再点击!" href="http://www.iz3d.com.tw/" target="_blank"><span style="text-decoration: underline;"><strong>IZ3D官方网站</strong></span></a><br />
IZ3D1.09驱动程序：<a title="注意!请认真查看此链接地址后再点击!" href="http://www.iz3d.com.tw/download/iZ3DDriverSetup.1.09.exe" target="_blank">点我下载</a><br />
IZ3D最新的1.10：<a title="注意!请认真查看此链接地址后再点击!" href="http://www.iz3d.com.tw/download/iZ3DDriverSetup.1.10.exe" target="_blank">点我下载</a><br />
【2010年2月1日更新注：1.10这个版本不提示安装系统补丁“.NET FRAMEWORK 3.51”，建议手动升级 】</p>
<p>下载完毕后双击安装，安装过程中会出现一个报错信息，如图：<br />
<img src="http://image.17173.com/bbs/upload/2009/06/10/124459730391.jpg" border="0" alt="" /><br />
这个报错信息是告诉你你还没接上IZ3D生产的立体显示器，大家可以忽视这条信息。<br />
注：iZ3D专业立体显示器要一万多块，谁买？好在iZ3D大发慈悲，红蓝立体显示是免费的。</p>
<p>安装完以后需要重新启动机器一次，重新启动之后，我们打开IZ3D程序，会看到以下界面<br />
<img src="http://image.17173.com/bbs/upload/2009/06/10/12445974083.jpg" border="0" alt="" /></p>
<p>我们选择<strong>enable stereo by hotkey</strong>（通过快捷键开启立体模式）<br />
<strong>stereo Output</strong>(立体输出模式)选择选择<strong>Anaglyph</strong>和<strong>Red/cyan</strong>（红青模式）<br />
然后点<strong>apply</strong>（应用），接着就可以关掉，进入游戏了。<br />
<strong>注：不玩游戏时时务必禁用3D(OpenGL，最好是Dx也禁用),否则会导致某些程序失效。</strong><br />
（不禁用的话会让显卡超频功能失效，游戏前先超频再启用iZ3D。不禁用的话会导致系统休眠、切换用户（Vista）功能失效）。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>进入游戏以后，小键盘*键是 开启\关闭 立体模式的开关，这个时候你会看到画面出现了和红青两色的偏移重影后，那么说明成功了。注：如果你没有看到，试试按着小键盘的“+”不动，如果出现红蓝画面分裂，则成功。</p>
<p>小键盘/为自动调节景深（推荐开启）；小键盘+ &#8211; 为增加\减少 立体强度；SHIFT加小键盘+ -为增加\减少 景深（也就是红蓝重影的距离）。这个软件的设置就这么简单了。<strong>这个软件还预置了一些游戏的配置文件，在Profile里可以选择预置游戏配置。</strong></p>
<p>另外影响观看的设置还有游戏本身的亮度调节、显示器的亮度调节。<strong>通过亮度调节你会发现颜色改善很明显。<br />
</strong><br />
到这里，软件设置就完成了。带上分色眼镜，你应该可以看到很强烈，很明显的立体效果。但是遗憾的是，因为分色眼镜质量参差不齐，所以颜色可能会有偏差。因此，我们必须根据分色眼镜自身的缺点进行调色。</p>
<p>现在我们来进行调色。在桌面上点鼠标右键，选择属性，可以打开显示面板。在那里找到color选项，右边的具体选项中要看清楚“set color correction for”。现在你要注意你用的眼镜了。实际上这个iz3d驱动支持的是红/青 3D模式。红/青 3D模式可以兼容红/蓝，红/绿两种3D眼镜。因此要根据你购买到的眼镜进行具体的调色。当然，我们要根绝3原色的基础来进行调色，本人不是学美术的，如果有错误，请大家不吝赐教。你带的是红/蓝眼睛的画，在“set color correction for”中选择Green选项。你现在可以戴上眼镜了，在Gamma选项中进行调解，右调绿色加深，左调绿色变浅（由于你戴上红蓝眼镜后，绿色被大大削弱，因此你需要把绿色加强，进行色彩的平衡）。把颜色往右调，直到你戴上红蓝分色眼镜后在游戏中的颜色看起来正常为止，这个时候你就可以点控制面板下的确定，然后关闭控制面板了。打完游戏后，如果你要把颜色改为正常色彩，请点右边的reset钮。<br />
如果你戴的是红/绿眼镜，那么同理，你需要把选择蓝色，把蓝色调深。<br />
如果你是红/青眼镜，那么你要适当的多尝试下了。<br />
经过调试后，颜色正常了。你可以戴上眼镜享受正常的3D立体游戏。</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>最后说下我昨天体验的情况</p>
<p>1。效果确实很刺激，在《使命召唤》里瞄准后，明显感觉到瞄具到准星到目标三点一线的立体感和距离感。特别是开启虚化背景效果后，有非常强烈的代入感。在《天堂2》里表现也非常好，站在QY的教堂门口往里看大神官，有明显的深度和距离感。你的人物属性，快截，聊天窗口都在画面的最前端。立体感非常强。但是，iZ3D虽然理论上支持所有DX8、DX9、DX10游戏，实际效果还是因游戏而异。</p>
<p>2。买个完美的眼镜很难。我买的3副眼镜为了节约运费都是一家买的。红色好像太厚，蓝色又有点浅。所以带上以后偏色。虽然效果看的到。但是偏色总归是不爽。眼镜还得慢慢再淘。</p>
<p>3。装了这个以后，在我的机器上只能单开，开第二个客户端开不了。可能是软件本身的缺点吧。因为这个软件的用途一般是全屏的3D游戏，不太支持窗口化以后多开3D游戏。</p>
<p>4。机器配置要好，因为要多计算每一帧的第三维，所以对FPS降低时很明显的。我的配置是AMD双核3.0G + 6G内存（2G物理内存4G用作虚拟内存和临时文件）+ 蓝宝的HD4830，应该说勉强算流畅。</p>
<p>5。这个软件，我不推荐只玩天2一种游戏的朋友使用。除非你平常只全屏玩天堂2并且不多开。如果你喜欢玩各种3D游戏，特别是代入感很强的，比如第一人称射击，飞车，或者模拟人生，我强烈推荐使用，投入非常低，软件是免费的，眼镜可以在文具店买色纸自己DIY，淘宝上买也只是十几块钱。</p>
<p><strong>最后，温馨提示，连续使用红蓝滤光眼镜半小时 请做适当的休息 以及户外运动，要爱护眼睛</strong><img src="http://image.17173.com/bbs/smile/3093.gif" border="0" alt="" /></p>
<p>参考了<a href="http://bbs.17173.com/topics/382/200906/10/12687779,1.html">http://bbs.17173.com/topics/382/200906/10/12687779,1.html</a>，感谢<strong>17173平民的</strong>原始教程。</p>

	标签：<a href="http://www.vpnall.com/tag/3d%e6%b8%b8%e6%88%8f/" title="3D游戏" rel="tag">3D游戏</a>, <a href="http://www.vpnall.com/tag/iz3d/" title="iZ3D" rel="tag">iZ3D</a>, <a href="http://www.vpnall.com/tag/%e7%ba%a2%e8%93%9d%e7%ab%8b%e4%bd%93%e6%b8%b8%e6%88%8f/" title="红蓝立体游戏" rel="tag">红蓝立体游戏</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li>无相关日志</li>
	</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/lLJwTVQEWTA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/02/%e8%bd%ac%e6%99%ae%e9%80%9a%e6%98%be%e7%a4%ba%e5%99%a8%e7%8e%a9%e7%ab%8b%e4%bd%93%e6%b8%b8%e6%88%8f%e7%ba%a2%e8%93%9d%e7%ab%8b%e4%bd%93%e6%b8%b8%e6%88%8fiz3d%e8%ae%be%e7%bd%ae%e5%8a%9e%e6%b3%95/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/02/%e8%bd%ac%e6%99%ae%e9%80%9a%e6%98%be%e7%a4%ba%e5%99%a8%e7%8e%a9%e7%ab%8b%e4%bd%93%e6%b8%b8%e6%88%8f%e7%ba%a2%e8%93%9d%e7%ab%8b%e4%bd%93%e6%b8%b8%e6%88%8fiz3d%e8%ae%be%e7%bd%ae%e5%8a%9e%e6%b3%95/</feedburner:origLink></item>
		<item>
		<title>翻墙利器之SSH代理服务器设置</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/mf1JoS48-sQ/</link>
		<comments>http://www.vpnall.com/2010/02/%e7%bf%bb%e5%a2%99%e5%88%a9%e5%99%a8%e4%b9%8bssh%e4%bb%a3%e7%90%86%e6%9c%8d%e5%8a%a1%e5%99%a8%e8%ae%be%e7%bd%ae/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 05:33:49 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[系统]]></category>
		<category><![CDATA[ssh]]></category>
		<category><![CDATA[代理]]></category>
		<category><![CDATA[翻墙]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=643</guid>
		<description><![CDATA[当然不是很多人有自己的SSH服务器,如果你有自己的国外LINUX服务器,或者带SSH的空间(DreamHost 空间就带SSH的),可以试试这个代理方法.建立自己的SSH代理.

到这里地址 http://www.chiark.greenend.org.uk/~sgta... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/Cl3pCv8d0Hmhl8Lc9m6NVhHiSig/0/da"><img src="http://feedads.g.doubleclick.net/~a/Cl3pCv8d0Hmhl8Lc9m6NVhHiSig/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Cl3pCv8d0Hmhl8Lc9m6NVhHiSig/1/da"><img src="http://feedads.g.doubleclick.net/~a/Cl3pCv8d0Hmhl8Lc9m6NVhHiSig/1/di" border="0" ismap="true"></img></a></p><p>当然不是很多人有自己的SSH服务器,如果你有自己的国外LINUX服务器,或者带SSH的空间(DreamHost 空间就带SSH的),可以试试这个代理方法.建立自己的SSH代理.</p>
<ul>
<li>到这里地址 <a title="http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html" href="http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html" target="_blank">http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html</a> 下载Plink，或者直接点<a title="Plink Download" href="http://the.earth.li/~sgtatham/putty/latest/x86/plink.exe">这里</a>下载。</li>
</ul>
<ul>
<li>打开记事本粘贴如下代码：plink user@demo.dreamhost.com -pw password -N -D 127.0.0.1:7070，另存为以.bat为后缀的批处理文件，例如ssh.bat，保存时保存类型选所有文件，将文件放在Pink.exe所在的相同文件夹下。其中将user改为SSH账号的用户名，demo.dreamhost.com 改为SSH服务器地址，password为SSH账号的密码，7070为端口号。</li>
<li>运行.bat批处理文件，如果用户名和密码都正确的话，命令行窗口会显示Using username “****”. 这时SSH服务器已经连接，可以在浏览器中设置sock5代理上网了，代理服务器设置为127.0.0.1，端口为7070。使用代理过程中不要关闭命令行窗口。</li>
</ul>
<p>至于怎样用SOCK5这里就不多说了..</p>

	标签：<a href="http://www.vpnall.com/tag/ssh/" title="ssh" rel="tag">ssh</a>, <a href="http://www.vpnall.com/tag/%e4%bb%a3%e7%90%86/" title="代理" rel="tag">代理</a>, <a href="http://www.vpnall.com/tag/%e7%bf%bb%e5%a2%99/" title="翻墙" rel="tag">翻墙</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li>无相关日志</li>
	</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/mf1JoS48-sQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/02/%e7%bf%bb%e5%a2%99%e5%88%a9%e5%99%a8%e4%b9%8bssh%e4%bb%a3%e7%90%86%e6%9c%8d%e5%8a%a1%e5%99%a8%e8%ae%be%e7%bd%ae/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/02/%e7%bf%bb%e5%a2%99%e5%88%a9%e5%99%a8%e4%b9%8bssh%e4%bb%a3%e7%90%86%e6%9c%8d%e5%8a%a1%e5%99%a8%e8%ae%be%e7%bd%ae/</feedburner:origLink></item>
		<item>
		<title>用nohup命令让Linux下程序在后台执行</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/_3A8eTlJ1us/</link>
		<comments>http://www.vpnall.com/2010/01/%e7%94%a8nohup%e5%91%bd%e4%bb%a4%e8%ae%a9linux%e4%b8%8b%e7%a8%8b%e5%ba%8f%e5%9c%a8%e5%90%8e%e5%8f%b0%e6%89%a7%e8%a1%8c/#comments</comments>
		<pubDate>Sat, 30 Jan 2010 16:18:56 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[系统]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[nohup]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=641</guid>
		<description><![CDATA[其实一句话就可以了
nohup command &#62; myout.file 2&#62;&#38;1 &#38;
nohup 命令详细
用途：不挂断地运行命令。
语法：nohup Command [ Arg ... ] [　&#38; ]
描述：nohup 命令运行由 Command 参数和任何相关的 Arg 参... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/pIqG6rBIWgN6SJjMzZj-KdolSew/0/da"><img src="http://feedads.g.doubleclick.net/~a/pIqG6rBIWgN6SJjMzZj-KdolSew/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/pIqG6rBIWgN6SJjMzZj-KdolSew/1/da"><img src="http://feedads.g.doubleclick.net/~a/pIqG6rBIWgN6SJjMzZj-KdolSew/1/di" border="0" ismap="true"></img></a></p><p>其实一句话就可以了</p>
<p><strong>nohup command &gt; myout.file 2&gt;&amp;1 &amp;</strong></p>
<p>nohup 命令详细</p>
<p>用途：不挂断地运行命令。</p>
<p>语法：nohup Command [ Arg ... ] [　&amp; ]</p>
<p>描述：nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令，忽略所有挂断（SIGHUP）信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令，添加 &amp; （ 表示&#8221;and&#8221;的符号）到命令的尾部。</p>
<p>无论是否将 nohup 命令的输出重定向到终端，输出都将附加到当前目录的 nohup.out 文件中。如果当前目录的 nohup.out 文件不可写，输出重定向到 $HOME/nohup.out 文件中。如果没有文件能创建或打开以用于追加，那么 Command 参数指定的命令不可调用。如果标准错误是一个终端，那么把指定的命令写给标准错误的所有输出作为标准输出重定向到相同的文件描述符。</p>
<p>退出状态：该命令返回下列出口值：</p>
<p>126 可以查找但不能调用 Command 参数指定的命令。</p>
<p>127 nohup 命令发生错误或不能查找由 Command 参数指定的命令。</p>
<p>否则，nohup 命令的退出状态是 Command 参数指定命令的退出状态。</p>
<p>nohup命令及其输出文件</p>
<p>nohup命令：如果你正在运行一个进程，而且你觉得在退出帐户时该进程还不会结束，那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。nohup就是不挂起的意思( n ohang up)。</p>
<p>该命令的一般形式为：nohup command &amp;</p>
<p>使用nohup命令提交作业</p>
<p>如果使用nohup命令提交作业，那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中，除非另外指定了输出文件：</p>
<p>nohup command &gt; myout.file 2&gt;&amp;1 &amp;</p>
<p>在上面的例子中，输出被重定向到myout.file文件中。</p>
<p>使用 jobs 查看任务。</p>
<p>使用 fg %n　关闭。</p>
<p>另外有两个常用的ftp工具ncftpget和ncftpput，可以实现后台的ftp上传和下载，这样就可以利用这些命令在后台上传和下载文件了。</p>

	标签：<a href="http://www.vpnall.com/tag/linux/" title="linux" rel="tag">linux</a>, <a href="http://www.vpnall.com/tag/nohup/" title="nohup" rel="tag">nohup</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.vpnall.com/2009/04/%e9%85%8d%e7%bd%aersync%e5%81%9a%e7%b3%bb%e7%bb%9f%e8%87%aa%e5%8a%a8%e5%bc%82%e5%9c%b0%e5%a4%87%e4%bb%bd/" title="配置rsync做系统自动异地备份 (2009-04-06)">配置rsync做系统自动异地备份</a> (0)</li>
	<li><a href="http://www.vpnall.com/2010/01/%e8%bd%ac%e5%9c%a8ubuntu-8-1%e4%b8%8a%e5%ae%89%e8%a3%9d%e9%85%8d%e7%bd%aefreeradius2-mysql-daloradius/" title="[转]在Ubuntu 8.1上安裝配置Freeradius2 + Mysql + Daloradius (2010-01-05)">[转]在Ubuntu 8.1上安裝配置Freeradius2 + Mysql + Daloradius</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/nginx_apache_mysql_php_memcached_squid/" title="[转]利用nginx+apache+mysql+php+memcached+squid搭建门户网站 (2009-03-09)">[转]利用nginx+apache+mysql+php+memcached+squid搭建门户网站</a> (0)</li>
	<li><a href="http://www.vpnall.com/2010/01/%e8%bd%acwget-%e4%bd%bf%e7%94%a8%e6%8c%87%e5%8d%97/" title="[转]wget 使用指南 (2010-01-31)">[转]wget 使用指南</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/06/%e8%bd%aclinux%e4%b8%8b-zip-%e5%92%8c-unzip%e7%9a%84%e7%94%a8%e6%b3%95/" title="[转]Linux下 zip 和 unzip的用法 (2009-06-23)">[转]Linux下 zip 和 unzip的用法</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/04/yum%e9%94%99%e8%af%afmetadata-file-does-not-match-checksum%e8%a7%a3%e5%86%b3%e6%96%b9%e6%b3%95/" title="YUM错误Metadata file does not match checksum解决方法 (2009-04-07)">YUM错误Metadata file does not match checksum解决方法</a> (0)</li>
	<li><a href="http://www.vpnall.com/2010/01/linux%e4%b8%8b%e6%9f%a5%e7%9c%8b%e7%89%88%e6%9c%ac%e5%8f%b7%e7%9a%84%e5%91%bd%e4%bb%a4/" title="Linux下查看版本号的命令 (2010-01-03)">Linux下查看版本号的命令</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/linux%e4%b8%8bxampp%e9%87%8c%e9%9d%a2%e7%9a%84proftpd%e7%ae%80%e6%98%8e%e4%bd%bf%e7%94%a8%e6%96%b9%e6%b3%95/" title="Linux下xampp里面的proftpd简明使用方法 (2009-03-25)">Linux下xampp里面的proftpd简明使用方法</a> (0)</li>
</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/_3A8eTlJ1us" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/01/%e7%94%a8nohup%e5%91%bd%e4%bb%a4%e8%ae%a9linux%e4%b8%8b%e7%a8%8b%e5%ba%8f%e5%9c%a8%e5%90%8e%e5%8f%b0%e6%89%a7%e8%a1%8c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/01/%e7%94%a8nohup%e5%91%bd%e4%bb%a4%e8%ae%a9linux%e4%b8%8b%e7%a8%8b%e5%ba%8f%e5%9c%a8%e5%90%8e%e5%8f%b0%e6%89%a7%e8%a1%8c/</feedburner:origLink></item>
		<item>
		<title>[转]wget 使用指南</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/oIEsU31kIP8/</link>
		<comments>http://www.vpnall.com/2010/01/%e8%bd%acwget-%e4%bd%bf%e7%94%a8%e6%8c%87%e5%8d%97/#comments</comments>
		<pubDate>Sat, 30 Jan 2010 16:06:52 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[系统]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[wget]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=639</guid>
		<description><![CDATA[wget是一个从网络上自动下载文件的自由工具。它支持HTTP，HTTPS和FTP协议，可以使用HTTP代理.
所谓的自动下载是指，wget可以在用户退出系统的之后在后台执行。这意味这你可以登录系统，启动一... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/t_9m3KwvmnaYPZxI9VFGGDRk694/0/da"><img src="http://feedads.g.doubleclick.net/~a/t_9m3KwvmnaYPZxI9VFGGDRk694/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/t_9m3KwvmnaYPZxI9VFGGDRk694/1/da"><img src="http://feedads.g.doubleclick.net/~a/t_9m3KwvmnaYPZxI9VFGGDRk694/1/di" border="0" ismap="true"></img></a></p><p>wget是一个从网络上自动下载文件的自由工具。它支持HTTP，HTTPS和FTP协议，可以使用HTTP代理.</p>
<p>所谓的自动下载是指，wget可以在用户退出系统的之后在后台执行。这意味这你可以登录系统，启动一个wget下载任务，然后退出系统，wget将在后台执行直到任务完成，相对于其它大部分浏览器在下载大量数据时需要用户一直的参与，这省去了极大的麻烦。</p>
<p>wget可以跟踪HTML页面上的链接依次下载来创建远程服务器的本地版本，完全重建原始站点的目录结构。这又常被称作&#8221;递归下载&#8221;。在递归下载的时候，wget遵循Robot Exclusion标准(/robots.txt). wget可以在下载的同时，将链接转换成指向本地文件，以方便离线浏览。</p>
<p>wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性.如果是由于网络的原因下载失败，wget会不断的尝试，直到整个文件下载完毕。如果是服务器打断下载过程，它会再次联到服务器上从停止的地方继续下载。这对从那些限定了链接时间的服务器上下载大文件非常有用。</p>
<p>wget的常见用法<br />
wget的使用格式</p>
<p>Usage: wget [OPTION]&#8230; [URL]&#8230;</p>
<p>用wget做站点镜像:<br />
wget -r -p -np -k <a href="http://dsec.pku.edu.cn/~usr_name/">http://dsec.pku.edu.cn/~usr_name/</a><br />
# 或者<br />
wget -m <a href="http://www.tldp.org/LDP/abs/html/">http://www.tldp.org/LDP/abs/html/</a></p>
<p>在不稳定的网络上下载一个部分下载的文件，以及在空闲时段下载<br />
wget -t 0 -w 31 -c <a href="http://dsec.pku.edu.cn/BBC.avi">http://dsec.pku.edu.cn/BBC.avi</a> -o down.log &amp;<br />
# 或者从filelist读入要下载的文件列表<br />
wget -t 0 -w 31 -c -B <a href="ftp://dsec.pku.edu.cn/linuxsoft">ftp://dsec.pku.edu.cn/linuxsoft</a> -i filelist.txt -o down.log &amp;</p>
<p>上面的代码还可以用来在网络比较空闲的时段进行下载。我的用法是:在mozilla中将不方便当时下载的URL链接拷贝到内存中然后粘贴到文件filelist.txt中，在晚上要出去系统前执行上面代码的第二条。</p>
<p>使用代理下载<br />
wget -Y on -p -k <a href="https://sourceforge.net/projects/wvware/">https://sourceforge.net/projects/wvware/</a></p>
<p>代理可以在环境变量或wgetrc文件中设定<br />
# 在环境变量中设定代理<br />
export PROXY=http://211.90.168.94:8080/<br />
# 在~/.wgetrc中设定代理<br />
http_proxy = <a href="http://proxy.yoyodyne.com:18023/">http://proxy.yoyodyne.com:18023/</a><br />
ftp_proxy = <a href="http://proxy.yoyodyne.com:18023/">http://proxy.yoyodyne.com:18023/</a></p>
<p>wget各种选项分类列表<br />
启动<br />
-V,  &#8211;version           显示wget的版本后退出<br />
-h,  &#8211;help              打印语法帮助<br />
-b,  &#8211;background        启动后转入后台执行<br />
-e,  &#8211;execute=COMMAND   执行`.wgetrc&#8217;格式的命令，wgetrc格式参见/etc/wgetrc或~/.wgetrc</p>
<p>记录和输入文件<br />
-o,  &#8211;output-file=FILE     把记录写到FILE文件中<br />
-a,  &#8211;append-output=FILE   把记录追加到FILE文件中<br />
-d,  &#8211;debug                打印调试输出<br />
-q,  &#8211;quiet                安静模式(没有输出)<br />
-v,  &#8211;verbose              冗长模式(这是缺省设置)<br />
-nv, &#8211;non-verbose          关掉冗长模式，但不是安静模式<br />
-i,  &#8211;input-file=FILE      下载在FILE文件中出现的URLs<br />
-F,  &#8211;force-html           把输入文件当作HTML格式文件对待<br />
-B,  &#8211;base=URL             将URL作为在-F -i参数指定的文件中出现的相对链接的前缀<br />
&#8211;sslcertfile=FILE     可选客户端证书<br />
&#8211;sslcertkey=KEYFILE   可选客户端证书的KEYFILE<br />
&#8211;egd-file=FILE        指定EGD socket的文件名</p>
<p>下载<br />
&#8211;bind-address=ADDRESS   指定本地使用地址(主机名或IP，当本地有多个IP或名字时使用)<br />
-t,  &#8211;tries=NUMBER           设定最大尝试链接次数(0 表示无限制).<br />
-O   &#8211;output-document=FILE   把文档写到FILE文件中<br />
-nc, &#8211;no-clobber             不要覆盖存在的文件或使用.#前缀<br />
-c,  &#8211;continue               接着下载没下载完的文件<br />
&#8211;progress=TYPE          设定进程条标记<br />
-N,  &#8211;timestamping           不要重新下载文件除非比本地文件新<br />
-S,  &#8211;server-response        打印服务器的回应<br />
&#8211;spider                 不下载任何东西<br />
-T,  &#8211;timeout=SECONDS        设定响应超时的秒数<br />
-w,  &#8211;wait=SECONDS           两次尝试之间间隔SECONDS秒<br />
&#8211;waitretry=SECONDS      在重新链接之间等待1&#8230;SECONDS秒<br />
&#8211;random-wait            在下载之间等待0&#8230;2*WAIT秒<br />
-Y,  &#8211;proxy=on/off           打开或关闭代理<br />
-Q,  &#8211;quota=NUMBER           设置下载的容量限制<br />
&#8211;limit-rate=RATE        限定下载输率</p>
<p>目录<br />
-nd  &#8211;no-directories            不创建目录<br />
-x,  &#8211;force-directories         强制创建目录<br />
-nH, &#8211;no-host-directories       不创建主机目录<br />
-P,  &#8211;directory-prefix=PREFIX   将文件保存到目录 PREFIX/&#8230;<br />
&#8211;cut-dirs=NUMBER           忽略 NUMBER层远程目录</p>
<p>HTTP 选项<br />
&#8211;http-user=USER      设定HTTP用户名为 USER.<br />
&#8211;http-passwd=PASS    设定http密码为 PASS.<br />
-C,  &#8211;cache=on/off        允许/不允许服务器端的数据缓存 (一般情况下允许).<br />
-E,  &#8211;html-extension      将所有text/html文档以.html扩展名保存<br />
&#8211;ignore-length       忽略 `Content-Length&#8217;头域<br />
&#8211;header=STRING       在headers中插入字符串 STRING<br />
&#8211;proxy-user=USER     设定代理的用户名为 USER<br />
&#8211;proxy-passwd=PASS   设定代理的密码为 PASS<br />
&#8211;referer=URL         在HTTP请求中包含 `Referer: URL&#8217;头<br />
-s,  &#8211;save-headers        保存HTTP头到文件<br />
-U,  &#8211;user-agent=AGENT    设定代理的名称为 AGENT而不是 Wget/VERSION.<br />
&#8211;no-http-keep-alive  关闭 HTTP活动链接 (永远链接).<br />
&#8211;cookies=off         不使用 cookies.<br />
&#8211;load-cookies=FILE   在开始会话前从文件 FILE中加载cookie<br />
&#8211;save-cookies=FILE   在会话结束后将 cookies保存到 FILE文件中</p>
<p>FTP 选项<br />
-nr, &#8211;dont-remove-listing   不移走 `.listing&#8217;文件<br />
-g,  &#8211;glob=on/off           打开或关闭文件名的 globbing机制<br />
&#8211;passive-ftp           使用被动传输模式 (缺省值).<br />
&#8211;active-ftp            使用主动传输模式<br />
&#8211;retr-symlinks         在递归的时候，将链接指向文件(而不是目录)</p>
<p>递归下载<br />
-r,  &#8211;recursive          递归下载－－慎用!<br />
-l,  &#8211;level=NUMBER       最大递归深度 (inf 或 0 代表无穷).<br />
&#8211;delete-after       在现在完毕后局部删除文件<br />
-k,  &#8211;convert-links      转换非相对链接为相对链接<br />
-K,  &#8211;backup-converted   在转换文件X之前，将之备份为 X.orig<br />
-m,  &#8211;mirror             等价于 -r -N -l inf -nr.<br />
-p,  &#8211;page-requisites    下载显示HTML文件的所有图片</p>
<p>递归下载中的包含和不包含(accept/reject)<br />
-A,  &#8211;accept=LIST                分号分隔的被接受扩展名的列表<br />
-R,  &#8211;reject=LIST                分号分隔的不被接受的扩展名的列表<br />
-D,  &#8211;domains=LIST               分号分隔的被接受域的列表<br />
&#8211;exclude-domains=LIST       分号分隔的不被接受的域的列表<br />
&#8211;follow-ftp                 跟踪HTML文档中的FTP链接<br />
&#8211;follow-tags=LIST           分号分隔的被跟踪的HTML标签的列表<br />
-G,  &#8211;ignore-tags=LIST           分号分隔的被忽略的HTML标签的列表<br />
-H,  &#8211;span-hosts                 当递归时转到外部主机<br />
-L,  &#8211;relative                   仅仅跟踪相对链接<br />
-I,  &#8211;include-directories=LIST   允许目录的列表<br />
-X,  &#8211;exclude-directories=LIST   不被包含目录的列表<br />
-np, &#8211;no-parent                  不要追溯到父目录</p>
<p>问题<br />
在递归下载的时候，遇到目录中有中文的时候，wget创建的本地目录名会用URL编码规则处理。如&#8221;天网防火墙&#8221;会被存为&#8221;%CC%EC%CD%F8%B7%C0%BB%F0%C7%BD&#8221;,这造成阅读上的极大不方便</p>

	标签：<a href="http://www.vpnall.com/tag/linux/" title="linux" rel="tag">linux</a>, <a href="http://www.vpnall.com/tag/wget/" title="wget" rel="tag">wget</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.vpnall.com/2009/04/%e9%85%8d%e7%bd%aersync%e5%81%9a%e7%b3%bb%e7%bb%9f%e8%87%aa%e5%8a%a8%e5%bc%82%e5%9c%b0%e5%a4%87%e4%bb%bd/" title="配置rsync做系统自动异地备份 (2009-04-06)">配置rsync做系统自动异地备份</a> (0)</li>
	<li><a href="http://www.vpnall.com/2010/01/%e7%94%a8nohup%e5%91%bd%e4%bb%a4%e8%ae%a9linux%e4%b8%8b%e7%a8%8b%e5%ba%8f%e5%9c%a8%e5%90%8e%e5%8f%b0%e6%89%a7%e8%a1%8c/" title="用nohup命令让Linux下程序在后台执行 (2010-01-31)">用nohup命令让Linux下程序在后台执行</a> (0)</li>
	<li><a href="http://www.vpnall.com/2010/01/%e8%bd%ac%e5%9c%a8ubuntu-8-1%e4%b8%8a%e5%ae%89%e8%a3%9d%e9%85%8d%e7%bd%aefreeradius2-mysql-daloradius/" title="[转]在Ubuntu 8.1上安裝配置Freeradius2 + Mysql + Daloradius (2010-01-05)">[转]在Ubuntu 8.1上安裝配置Freeradius2 + Mysql + Daloradius</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/nginx_apache_mysql_php_memcached_squid/" title="[转]利用nginx+apache+mysql+php+memcached+squid搭建门户网站 (2009-03-09)">[转]利用nginx+apache+mysql+php+memcached+squid搭建门户网站</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/06/%e8%bd%aclinux%e4%b8%8b-zip-%e5%92%8c-unzip%e7%9a%84%e7%94%a8%e6%b3%95/" title="[转]Linux下 zip 和 unzip的用法 (2009-06-23)">[转]Linux下 zip 和 unzip的用法</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/04/yum%e9%94%99%e8%af%afmetadata-file-does-not-match-checksum%e8%a7%a3%e5%86%b3%e6%96%b9%e6%b3%95/" title="YUM错误Metadata file does not match checksum解决方法 (2009-04-07)">YUM错误Metadata file does not match checksum解决方法</a> (0)</li>
	<li><a href="http://www.vpnall.com/2010/01/linux%e4%b8%8b%e6%9f%a5%e7%9c%8b%e7%89%88%e6%9c%ac%e5%8f%b7%e7%9a%84%e5%91%bd%e4%bb%a4/" title="Linux下查看版本号的命令 (2010-01-03)">Linux下查看版本号的命令</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/linux%e4%b8%8bxampp%e9%87%8c%e9%9d%a2%e7%9a%84proftpd%e7%ae%80%e6%98%8e%e4%bd%bf%e7%94%a8%e6%96%b9%e6%b3%95/" title="Linux下xampp里面的proftpd简明使用方法 (2009-03-25)">Linux下xampp里面的proftpd简明使用方法</a> (0)</li>
</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/oIEsU31kIP8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/01/%e8%bd%acwget-%e4%bd%bf%e7%94%a8%e6%8c%87%e5%8d%97/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/01/%e8%bd%acwget-%e4%bd%bf%e7%94%a8%e6%8c%87%e5%8d%97/</feedburner:origLink></item>
		<item>
		<title>php函数call_user_func和call_user_func_array详解</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/YXh5RYCYMMo/</link>
		<comments>http://www.vpnall.com/2010/01/php%e5%87%bd%e6%95%b0call_user_func%e5%92%8ccall_user_func_array%e8%af%a6%e8%a7%a3/#comments</comments>
		<pubDate>Sat, 30 Jan 2010 05:36:56 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[代码]]></category>
		<category><![CDATA[call_user_func]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[函数]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=633</guid>
		<description><![CDATA[今天用到一个函数call_user_func_array,发现不太清楚怎样在类内调用函数.查了一下,居然用数组作为第一个参数调用,转载call_user_func和call_user_func_array详解如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/TRgpq1JAD6Q2FswlW7yjwDQYu5I/0/da"><img src="http://feedads.g.doubleclick.net/~a/TRgpq1JAD6Q2FswlW7yjwDQYu5I/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/TRgpq1JAD6Q2FswlW7yjwDQYu5I/1/da"><img src="http://feedads.g.doubleclick.net/~a/TRgpq1JAD6Q2FswlW7yjwDQYu5I/1/di" border="0" ismap="true"></img></a></p><p>今天用到一个函数call_user_func_array,发现不太清楚怎样在类内调用函数.查了一下,居然用数组作为第一个参数调用,转载call_user_func和call_user_func_array详解如下:</p>

<div class="wp_codebox"><table><tr id="p6334"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
</pre></td><td class="code" id="p633code4"><pre class="php" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">//call_user_func函数类似于一种特别的调用函数的方法，使用方法如下： </span>
<span style="color: #000000; font-weight: bold;">function</span> a<span style="color: #009900;">&#40;</span><span style="color: #000088;">$b</span><span style="color: #339933;">,</span><span style="color: #000088;">$c</span><span style="color: #009900;">&#41;</span> 
<span style="color: #009900;">&#123;</span>
<span style="color: #b1b100;">echo</span> <span style="color: #000088;">$b</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">echo</span> <span style="color: #000088;">$c</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<a href="http://www.php.net/call_user_func"><span style="color: #990000;">call_user_func</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'a'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;111&quot;</span><span style="color: #339933;">,</span><span style="color: #0000ff;">&quot;222&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<a href="http://www.php.net/call_user_func"><span style="color: #990000;">call_user_func</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'a'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;333&quot;</span><span style="color: #339933;">,</span><span style="color: #0000ff;">&quot;444&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #666666; font-style: italic;">//显示 111 222 333 444</span>
&nbsp;
<span style="color: #666666; font-style: italic;">//调用类内部的方法比较奇怪，居然用的是array，不知道开发者是如何考虑的，当然省去了new，也是满有新意的:</span>
<span style="color: #000000; font-weight: bold;">class</span> a <span style="color: #009900;">&#123;</span>
<span style="color: #000000; font-weight: bold;">function</span> b<span style="color: #009900;">&#40;</span><span style="color: #000088;">$c</span><span style="color: #009900;">&#41;</span> 
<span style="color: #009900;">&#123;</span>
<span style="color: #b1b100;">echo</span> <span style="color: #000088;">$c</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #666666; font-style: italic;">//call_user_func(array(&quot;a&quot;, &quot;b&quot;),&quot;111&quot;);</span>
<span style="color: #666666; font-style: italic;">//显示 111</span>
&nbsp;
<span style="color: #666666; font-style: italic;">//call_user_func_array函数和call_user_func很相似，只不过是换了一种方式传递了参数，让参数的结构更清晰:</span>
<span style="color: #000000; font-weight: bold;">function</span> a<span style="color: #009900;">&#40;</span><span style="color: #000088;">$b</span><span style="color: #339933;">,</span> <span style="color: #000088;">$c</span><span style="color: #009900;">&#41;</span> 
<span style="color: #009900;">&#123;</span>
<span style="color: #b1b100;">echo</span> <span style="color: #000088;">$b</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">echo</span> <span style="color: #000088;">$c</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #009900;">&#125;</span>
<a href="http://www.php.net/call_user_func_array"><span style="color: #990000;">call_user_func_array</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'a'</span><span style="color: #339933;">,</span> <a href="http://www.php.net/array"><span style="color: #990000;">array</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;111&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;222&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #666666; font-style: italic;">//显示 111 222</span>
&nbsp;
<span style="color: #666666; font-style: italic;">//call_user_func_array函数也可以调用类内部的方法的</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">Class</span> ClassA
<span style="color: #009900;">&#123;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">function</span> bc<span style="color: #009900;">&#40;</span><span style="color: #000088;">$b</span><span style="color: #339933;">,</span> <span style="color: #000088;">$c</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
     <span style="color: #000088;">$bc</span> <span style="color: #339933;">=</span> <span style="color: #000088;">$b</span> <span style="color: #339933;">+</span> <span style="color: #000088;">$c</span><span style="color: #339933;">;</span>
  <span style="color: #b1b100;">echo</span>  <span style="color: #000088;">$bc</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span>
<a href="http://www.php.net/call_user_func_array"><span style="color: #990000;">call_user_func_array</span></a><span style="color: #009900;">&#40;</span><a href="http://www.php.net/array"><span style="color: #990000;">array</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'ClassA'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'bc'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <a href="http://www.php.net/array"><span style="color: #990000;">array</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;111&quot;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">&quot;222&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #666666; font-style: italic;">//显示 333</span>
&nbsp;
<span style="color: #666666; font-style: italic;">//call_user_func函数和call_user_func_array函数都支持引用，这让他们和普通的函数调用更趋于功能一致:</span>
<span style="color: #000000; font-weight: bold;">function</span> a<span style="color: #009900;">&#40;</span><span style="color: #339933;">&amp;</span><span style="color: #000088;">$b</span><span style="color: #009900;">&#41;</span>
<span style="color: #009900;">&#123;</span>
<span style="color: #000088;">$b</span><span style="color: #339933;">++;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000088;">$c</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">;</span>
<a href="http://www.php.net/call_user_func"><span style="color: #990000;">call_user_func</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'a'</span><span style="color: #339933;">,</span> <span style="color: #339933;">&amp;</span><span style="color: #000088;">$c</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">echo</span> <span style="color: #000088;">$c</span><span style="color: #339933;">;</span><span style="color: #666666; font-style: italic;">//显示 1</span>
<a href="http://www.php.net/call_user_func_array"><span style="color: #990000;">call_user_func_array</span></a><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'a'</span><span style="color: #339933;">,</span> <a href="http://www.php.net/array"><span style="color: #990000;">array</span></a><span style="color: #009900;">&#40;</span><span style="color: #339933;">&amp;</span><span style="color: #000088;">$c</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">echo</span> <span style="color: #000088;">$c</span><span style="color: #339933;">;</span><span style="color: #666666; font-style: italic;">//显示 2</span></pre></td></tr></table></div>

<p>原文:http://www.5iphp.com/zh-hans/content/348.html</p>

	标签：<a href="http://www.vpnall.com/tag/call_user_func/" title="call_user_func" rel="tag">call_user_func</a>, <a href="http://www.vpnall.com/tag/php/" title="php" rel="tag">php</a>, <a href="http://www.vpnall.com/tag/%e5%87%bd%e6%95%b0/" title="函数" rel="tag">函数</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.vpnall.com/2009/11/php%e5%b0%8f%e6%95%b0%e6%a0%bc%e5%bc%8f%e5%8c%96%e5%87%bd%e6%95%b0sprintf/" title="PHP小数格式化函数:sprintf() (2009-11-24)">PHP小数格式化函数:sprintf()</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/about-yii-php-framework/" title="高性能的PHP框架：Yii PHP Framework (2009-03-18)">高性能的PHP框架：Yii PHP Framework</a> (5)</li>
	<li><a href="http://www.vpnall.com/2010/01/%e7%94%a8js%e7%9a%84json_decode%e8%a7%a3%e5%86%b3json%e4%b8%ad%e6%96%87%e7%bc%96%e7%a0%81%e9%97%ae%e9%a2%98/" title="用js的json_decode解决JSON中文编码问题 (2010-01-26)">用js的json_decode解决JSON中文编码问题</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/09/%e5%bc%80%e6%ba%90php%e6%95%b0%e6%8d%ae%e8%a1%a8%e7%94%9f%e6%88%90%e7%b1%bbeyedatagrid/" title="开源PHP数据表生成类EyeDataGrid (2009-09-02)">开源PHP数据表生成类EyeDataGrid</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/05/%e5%bc%80%e6%ba%90php%e5%9b%be%e8%a1%a8%e7%94%9f%e6%88%90%e5%87%bd%e6%95%b0pchart%e5%ba%94%e7%94%a8%e5%ae%9e%e4%be%8b/" title="开源PHP图表生成函数pChart应用实例 (2009-05-30)">开源PHP图表生成函数pChart应用实例</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/use-php-ajax-crossdomainhttp-get/" title="利用PHP实现AJAX跨域HTTP GET (2009-03-12)">利用PHP实现AJAX跨域HTTP GET</a> (4)</li>
	<li><a href="http://www.vpnall.com/2009/07/%e4%bb%80%e4%b9%88%e7%bc%96%e7%a8%8b%e8%af%ad%e8%a8%80%e5%bc%80%e5%a7%8b%e5%a4%9a%e4%ba%ba%e5%ad%a6%e4%b9%a0/" title="什么编程语言开始多人学习? (2009-07-27)">什么编程语言开始多人学习?</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/nginx_apache_mysql_php_memcached_squid/" title="[转]利用nginx+apache+mysql+php+memcached+squid搭建门户网站 (2009-03-09)">[转]利用nginx+apache+mysql+php+memcached+squid搭建门户网站</a> (0)</li>
</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/YXh5RYCYMMo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/01/php%e5%87%bd%e6%95%b0call_user_func%e5%92%8ccall_user_func_array%e8%af%a6%e8%a7%a3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/01/php%e5%87%bd%e6%95%b0call_user_func%e5%92%8ccall_user_func_array%e8%af%a6%e8%a7%a3/</feedburner:origLink></item>
		<item>
		<title>jQuery 1.4.1 发布</title>
		<link>http://feedproxy.google.com/~r/LavaWorld/~3/Nv1SvnrrB1M/</link>
		<comments>http://www.vpnall.com/2010/01/jquery-1-4-1-%e5%8f%91%e5%b8%83/#comments</comments>
		<pubDate>Fri, 29 Jan 2010 15:21:50 +0000</pubDate>
		<dc:creator>lava</dc:creator>
				<category><![CDATA[代码]]></category>
		<category><![CDATA[jquery]]></category>

		<guid isPermaLink="false">http://www.vpnall.com/?p=630</guid>
		<description><![CDATA[又是是jQuery,怎么老是jQuery,没办法最近做的项目跟他有关&#8230;jQuery 1.4.1作者关注到.live(“hover”)了,今天才在想,怎么没有.live(“hover”)呢&#8230;
jQuery is a fast and concise JavaScript Library that simplifies HTM... ]]></description>
			<content:encoded><![CDATA[
<p><a href="http://feedads.g.doubleclick.net/~a/esL4m6fRBkaCghNWxAmRDAj71hA/0/da"><img src="http://feedads.g.doubleclick.net/~a/esL4m6fRBkaCghNWxAmRDAj71hA/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/esL4m6fRBkaCghNWxAmRDAj71hA/1/da"><img src="http://feedads.g.doubleclick.net/~a/esL4m6fRBkaCghNWxAmRDAj71hA/1/di" border="0" ismap="true"></img></a></p><p>又是是jQuery,怎么老是jQuery,没办法最近做的项目跟他有关&#8230;jQuery 1.4.1作者关注到.live(“hover”)了,今天才在想,怎么没有.live(“hover”)呢&#8230;<br />
jQuery is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development. jQuery is designed to change the way that you write JavaScript.</p>
<p>Download jQuery 1.4.1?</p>
<p>* jQuery Minified (23kb)<br />
* jQuery Regular (157kb)</p>
<p>New Features?</p>
<p>* &#8211; .live(“focus”) and .live(“blur”) now work – mapping to .live(“focusin”) and .live(“focusout”).<br />
* &#8211; .live(“hover”) now exists, mapping to .live(“mouseenter mouseleave”).<br />
* &#8211; It’s now possible to bind multiple event types with live.<br />
* &#8211; Calling .die() (with no arguments) removes all bound live event handlers.<br />
* &#8211; .height( function ) and .width( function ) now exist.<br />
* &#8211; jQuery.parseJSON has been exposed, allowing you to parse JSON strings into JavaScript objects.<br />
* &#8211; jQuery.error has been exposed, to be used by plugin developers to provide informative user feedback.</p>
<p>Read More jQuery On jQuery Project</p>

	标签：<a href="http://www.vpnall.com/tag/jquery/" title="jquery" rel="tag">jquery</a><br />

	<h4>相关日志</h4>
	<ul class="st-related-posts">
	<li><a href="http://www.vpnall.com/2010/01/disable-a-button-in-a-jquery-dialog-from-a-function/" title="用函数使JQuery ui dialog的按钮是否可用 (2010-01-29)">用函数使JQuery ui dialog的按钮是否可用</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/jquery-ajax-introduction/" title="[转]jQuery Ajax 全解析 (2009-03-03)">[转]jQuery Ajax 全解析</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/09/%e8%bd%ac25%e4%b8%aa%e4%b8%8b%e6%8b%89%e8%8f%9c%e5%8d%95%e5%af%bc%e8%88%aajquery%e8%84%9a%e6%9c%ac/" title="[转]25个下拉菜单导航jQuery脚本 (2009-09-01)">[转]25个下拉菜单导航jQuery脚本</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/03/%e5%8e%9f%e5%88%9b%e7%94%a8jquery%e5%81%9a%e4%ba%86%e4%b8%80%e4%b8%aa%e5%a4%8d%e5%88%b6%e6%b5%81%e9%87%8f%e7%9a%84%e4%b8%9c%e8%a5%bf/" title="[原创]用jquery做了一个复制流量的东西 (2009-03-28)">[原创]用jquery做了一个复制流量的东西</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/06/%e5%88%86%e4%ba%abjquery-13%e4%b8%ad%e6%96%87%e5%8f%82%e8%80%83%e6%96%87%e6%a1%a3/" title="[分享]jQuery 1.3中文参考文档 (2009-06-03)">[分享]jQuery 1.3中文参考文档</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/07/js%e5%ae%9e%e7%8e%b0%e9%a1%b5%e9%9d%a2%e7%84%a6%e7%82%b9%e8%ae%a1%e6%97%b6/" title="js实现页面焦点计时 (2009-07-27)">js实现页面焦点计时</a> (0)</li>
	<li><a href="http://www.vpnall.com/2009/05/jquery%e6%97%a5%e5%8e%86%e9%80%89%e6%8b%a9%e6%8f%92%e4%bb%b6datepicker-%e7%ae%80%e5%8d%95%e6%b1%89%e5%8c%96%e5%8f%8a%e5%ba%94%e7%94%a8%e5%ae%9e%e4%be%8b/" title="jquery日历选择插件datePicker 简单汉化及应用实例 (2009-05-22)">jquery日历选择插件datePicker 简单汉化及应用实例</a> (0)</li>
	<li><a href="http://www.vpnall.com/2010/01/jquery-1-3%e4%b8%ad%e6%96%b0%e5%a2%9e%e7%9a%84%e6%96%b9%e6%b3%95live%e7%9a%84%e5%ba%94%e7%94%a8/" title="jQuery 1.3中新增的方法live()的应用 (2010-01-29)">jQuery 1.3中新增的方法live()的应用</a> (0)</li>
</ul>

<img src="http://feeds.feedburner.com/~r/LavaWorld/~4/Nv1SvnrrB1M" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.vpnall.com/2010/01/jquery-1-4-1-%e5%8f%91%e5%b8%83/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.vpnall.com/2010/01/jquery-1-4-1-%e5%8f%91%e5%b8%83/</feedburner:origLink></item>
	</channel>
</rss>
