<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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/"
	>

<channel>
	<title>扯Web &#187; php</title>
	<atom:link href="http://cheweb.org/tag/php/feed" rel="self" type="application/rss+xml" />
	<link>http://cheweb.org</link>
	<description>闲扯天朝网络，助力中国博客</description>
	<lastBuildDate>Fri, 18 Nov 2011 02:03:15 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>选择网站主机时必须注意的20个问题</title>
		<link>http://cheweb.org/535.html</link>
		<comments>http://cheweb.org/535.html#comments</comments>
		<pubDate>Sun, 25 Jul 2010 13:07:07 +0000</pubDate>
		<dc:creator>Ven</dc:creator>
				<category><![CDATA[互联网络]]></category>
		<category><![CDATA[adwords]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[uptime]]></category>
		<category><![CDATA[vps]]></category>
		<category><![CDATA[主机]]></category>
		<category><![CDATA[在线率]]></category>
		<category><![CDATA[域名]]></category>

		<guid isPermaLink="false">http://cheweb.org/535.html</guid>
		<description><![CDATA[
哈哈，既然你点开了这篇文章，我猜十有八九你是个Web开发人员。虽然开发网站比考虑主机方面的问题有趣多了，但主机的选择的确是个非常重要的事情，不可草率决定，否则后患无穷。
本文指出了20个在选择网站主机时必须注意的问题，希望对你有所帮助。
1 容量
在选择主机时，首先你考虑的就是“我可以存储多少数据？”对绝大多数中小型网站来说，有上那么几个G的容量就足够了。有些主机商提供“无限空间”的主机（主要是国外的主机商），这其实是骗人的。仔细去读他们的《服务条款》，他们往往会说：没错，我们提供无限容量的主机，前提是你必须是“正常”网站。但什么是正常网站？这可就由不得你了。所以还是选择又设定容量的主机比较稳妥。
另外特别要注意的是，有些国内主机是把数据库容量和网页空间容量分开计算的，购买前务必注意。
2 带宽（流量）
带宽有时又叫流量，和容量两个概念容易搞混。容量指的是你拥有的硬盘空间，比如100MB，那你最多就只能存储100MB的网页、数据或多媒体文件。而带宽指的是在一定周期内（通常是一个月）你的主机允许的用户上传/下载的总容量。比如你的主机上有个1MB的网页，当用户查看这个网页1000次，就产生了1G的流量（带宽）。
如果容量用满了，那最多是不能再上传新的文件。但如果带宽耗光了，主机商就会禁止访客访问你的网站，直到下个月带宽归零前，这事可就闹不住了。因此你必须时刻关注带宽消耗情况，并且在带宽的选择上留有冗余，以应对访问量爆发的情况。
3 域名/子域名数量
对很多初级用户来说，他们只建一个网站，1个域名就足够了。但难保未来他们不会建立更多的网站，或者在当前网站下开设子域名。所以尽量选择允许绑定多域名/子域的主机，给未来发展留下余地。
4 Email账户和功能
很多主机商为用户提供Email账户功能，你可以用自己的域名创建邮箱。如果你希望主机商提供的这个功能，那你就要留意下允许创建的账户个数、是否有在线的Email控制面板、是否能与Gmail正和、是否支持POP3发信等问题。
当然，你也可以选择Google企业套件、腾讯域名邮箱等免费服务，他们的服务质量往往比主机商提供的更可靠。
5 数据库支持
现在的互联网上，再小的网站背后都有数据库支持。大部分主机都支持MySQL数据库，但如果你在使用PostgreSQL、Oracle、SQL Server或其他数据库，务必弄清楚你的主机是否支持。
6 框架支持和一键安装
很多国外主机商提供流行框架、博客系统、CMS的一键安装功能。这对于新手非常有用，但如果你是个老手，可能就没什么价值了。
7 移动App或网站
是否想通过手机也能管理你的网站，查看访问数据？如果主机商提供移动App，这就很简单的。可惜的是，目前只有Media Template和SliceHost两家推出了支持iPhone和Android的app。但我相信这是个趋势，其他主机上也会跟随的。
8 技术支持
非常、非常重要！务必搞清你的主机商都有哪些技术支持手段：是否有客服电话？是否有客服QQ？是否支持email客服？是否有ticket系统（国内不常见）？多久会对问题给予响应？多久能解决问题？等等等等
9 Shell访问
这是个高级功能，只有专业人士才会用得到。Shell访问允许你通过SSH以命令行的方式管理主机：安全的拷贝、删除文件，快速的更改文件权限，执行多线程任务等等。
10 .htaccess文件支持
.htaccess文件允许Apache服务器处理URL改写，简单的说它能帮你创建干净的URL，WordPress、Drupal、Discuz这些著名的建站系统都需要用到。你还可以用它来给文件夹加密码、重定向网页等等。
11 Cron jobs（定时任务）
Cron允许主机在指定时间执行指定任务，比如“每隔8小时重新生成网页缓存”或“每3天给未登录的用户发邮件”，这些都需要cron的支持。有cron总是件好事，而且支持shell访问的主机一般也都支持cron。
12 编程语言支持
这个其实不用专门提的，但是现在有些主机支持多种编程语言，比如薄荷主机就同时支持PHP、Perl和Ruby。当然，如果你只使用PHP一种语言，这个就不用考虑了。
13 免费的AdWords
有些国外主机商会赠送Google AdWords广告额度（一般是50$），或赠送其他一些形式的广告。有总比没有好，是吧！
14 网站备份
不要以为服务器上的数据保存会比你自己的电脑更稳定，服务器也有故障崩溃导致数据丢失的时候。记住，服务器只是台人人都可以访问的大号电脑。留意主机商提供什么样的数据备份策略。如果主机商不提供频繁的备份，那你就要考虑自己的备份策略了。
15 操作系统
对大部分人来说，这不是个问题。除非你使用ASP.Net，那你就只能去找Windows服务器了；其他时候，Linux系的操作系统是主流选择。不过国内的情况不太一样，盗版使得Windows操作系统的服务器同样不少。但是要注意，上文中提到的shell访问、.htaccess这些都是只有Linux系的服务器才支持的。我就遇到不少朋友，用的是Windows+IIS的服务器，对.htaccess不支持，导致WordPress的链接出现问题的情况。
16 额外的应用程序
第6条里提到的“一键安装”其实就属于主机服务之外的应用程序。或许你还需要邮件列表、访问量分析等相关程序，那么就留意一下吧。
17 最新版的服务器程序
如果可能，尽量找软件安装的都是最新版的服务器。有些服务商软件更新的不频繁，比如都这时候了服务器上跑的还是PHP4，那可就杯具了。另外，及时更新软件也是防止安全隐患的好方法。
18 在线率（uptime）
我不说你也知道在线率的重要性。务必选择口碑好的服务商，他们的在线率往往更有保障。但是，100%的在线率也是不可能的，务必阅读服务商承诺的在线率，并用工具进行监测。我之前介绍过的Pingdom就是一款很好的监测在线率的工具。
19 免费域名
有些主机商赠送免费的顶级域名，这对还没有域名的用户来说是个好事。不过注意这里面其实也是有陷阱的，一旦使用主机商赠送的域名，如果你要退款，主机商是会把域名的钱单独扣下来的。
20 虚拟主机？VPS？还是专属服务器？
虚拟主机、VPS、专属服务器，三者各有千秋，各有优劣。这里不再详细分析，可以看我之前写的一篇文章，里面做了仔细的分析。

原创编著/编译，转载请给面子： 转载自扯Web，本文原始链接: 选择网站主机时必须注意的20个问题

继续阅读：phpMyAdmin开发人员访谈&#8212;&#8212;4个人支持整个项目VPS完全指南高效邮件管理的20条守则10个不常见却很有用的PHP函数用最简单的方法黑掉别人的网站

觉得文章靠谱？欢迎发表评论！ &#124;
本文永久链接 
&#124;作者: Ven  &#124; © 扯Web, 2010 版权所有 
]]></description>
			<content:encoded><![CDATA[<p><a href="http://cheweb.org/wp-content/uploads/2010/07/image30.png" target="_blank"><img style="display: inline; border: 0px;" title="image" src="http://cheweb.org/index.php?feedimage=wp-content/uploads/2010/07/image_thumb30.png" border="0" alt="image" width="604" height="204" /></a></p>
<p>哈哈，既然你点开了这篇文章，我猜十有八九你是个Web开发人员。虽然开发网站比考虑主机方面的问题有趣多了，但主机的选择的确是个非常重要的事情，不可草率决定，否则后患无穷。</p>
<p>本文指出了20个在选择网站主机时必须注意的<a href="http://cheweb.org/535.html">问题</a>，希望对你有所帮助。</p>
<h3>1 容量</h3>
<p>在选择主机时，首先你考虑的就是“我可以存储多少数据？”对绝大多数中小型网站来说，有上那么几个G的容量就足够了。有些主机商提供“无限空间”的主机（主要是国外的主机商），这其实是骗人的。仔细去读他们的《服务条款》，他们往往会说：没错，我们提供无限容量的主机，前提是你必须是“正常”网站。但什么是正常网站？这可就由不得你了。所以还是选择又设定容量的主机比较稳妥。</p>
<p>另外特别要注意的是，有些国内主机是把数据库容量和网页空间容量分开计算的，购买前务必注意。</p>
<h3>2 带宽（流量）</h3>
<p>带宽有时又叫流量，和容量两个概念容易搞混。容量指的是你拥有的硬盘空间，比如100MB，那你最多就只能存储100MB的网页、数据或多媒体文件。而带宽指的是在一定周期内（通常是一个月）你的主机允许的用户上传/下载的总容量。比如你的主机上有个1MB的网页，当用户查看这个网页1000次，就产生了1G的流量（带宽）。</p>
<p><span id="more-535"></span>如果容量用满了，那最多是不能再上传新的文件。但如果带宽耗光了，主机商就会禁止访客访问你的网站，直到下个月带宽归零前，这事可就闹不住了。因此你必须时刻关注带宽消耗情况，并且在带宽的选择上留有冗余，以应对访问量爆发的情况。</p>
<h3>3 域名/子域名数量</h3>
<p>对很多初级用户来说，他们只建一个网站，1个域名就足够了。但难保未来他们不会建立更多的网站，或者在当前网站下开设子域名。所以尽量选择允许绑定多域名/子域的主机，给未来发展留下余地。</p>
<h3>4 Email账户和功能</h3>
<p>很多主机商为用户提供Email账户功能，你可以用自己的域名创建邮箱。如果你希望主机商提供的这个功能，那你就要留意下允许创建的账户个数、是否有在线的Email控制面板、是否能与Gmail正和、是否支持POP3发信等问题。</p>
<p>当然，你也可以选择<a href="http://www.google.com/apps/intl/zh-CN/business/index.html" target="_blank">Google企业套件</a>、<a href="http://domain.mail.qq.com/" target="_blank">腾讯域名邮箱</a>等免费服务，他们的服务质量往往比主机商提供的更可靠。</p>
<h3>5 数据库支持</h3>
<p>现在的互联网上，再小的网站背后都有数据库支持。大部分主机都支持MySQL数据库，但如果你在使用PostgreSQL、Oracle、SQL Server或其他数据库，务必弄清楚你的主机是否支持。</p>
<h3>6 框架支持和一键安装</h3>
<p>很多国外主机商提供流行框架、博客系统、CMS的一键安装功能。这对于新手非常有用，但如果你是个老手，可能就没什么价值了。</p>
<h3>7 移动App或网站</h3>
<p>是否想通过手机也能管理你的网站，查看访问数据？如果主机商提供移动App，这就很简单的。可惜的是，目前只有Media Template和SliceHost两家推出了支持iPhone和Android的app。但我相信这是个趋势，其他主机上也会跟随的。</p>
<h3>8 技术支持</h3>
<p>非常、非常重要！务必搞清你的主机商都有哪些技术支持手段：是否有客服电话？是否有客服QQ？是否支持email客服？是否有ticket系统（国内不常见）？多久会对问题给予响应？多久能解决问题？等等等等</p>
<h3>9 Shell访问</h3>
<p>这是个高级功能，只有专业人士才会用得到。Shell访问允许你通过SSH以命令行的方式管理主机：安全的拷贝、删除文件，快速的更改文件权限，执行多线程任务等等。</p>
<h3>10 .htaccess文件支持</h3>
<p>.htaccess文件允许Apache服务器处理URL改写，简单的说它能帮你创建干净的URL，WordPress、Drupal、Discuz这些著名的建站系统都需要用到。你还可以用它来给文件夹加密码、重定向网页等等。</p>
<h3>11 Cron jobs（定时任务）</h3>
<p>Cron允许主机在指定时间执行指定任务，比如“每隔8小时重新生成网页缓存”或“每3天给未登录的用户发邮件”，这些都需要cron的支持。有cron总是件好事，而且支持shell访问的主机一般也都支持cron。</p>
<h3>12 编程语言支持</h3>
<p>这个其实不用专门提的，但是现在有些主机支持多种编程语言，比如<a href="http://www.bohehost.com" target="_blank">薄荷主机</a>就同时支持PHP、Perl和Ruby。当然，如果你只使用PHP一种语言，这个就不用考虑了。</p>
<h3>13 免费的AdWords</h3>
<p>有些国外主机商会赠送Google AdWords广告额度（一般是50$），或赠送其他一些形式的广告。有总比没有好，是吧！</p>
<h3>14 网站备份</h3>
<p>不要以为服务器上的数据保存会比你自己的电脑更稳定，服务器也有故障崩溃导致数据丢失的时候。记住，服务器只是台人人都可以访问的大号电脑。留意主机商提供什么样的数据备份策略。如果主机商不提供频繁的备份，那你就要考虑自己的备份策略了。</p>
<h3>15 操作系统</h3>
<p>对大部分人来说，这不是个问题。除非你使用ASP.Net，那你就只能去找Windows服务器了；其他时候，Linux系的操作系统是主流选择。不过国内的情况不太一样，盗版使得Windows操作系统的服务器同样不少。但是要注意，上文中提到的shell访问、.htaccess这些都是只有Linux系的服务器才支持的。我就遇到不少朋友，用的是Windows+IIS的服务器，对.htaccess不支持，导致WordPress的链接出现问题的情况。</p>
<h3>16 额外的应用程序</h3>
<p>第6条里提到的“一键安装”其实就属于主机服务之外的应用程序。或许你还需要邮件列表、访问量分析等相关程序，那么就留意一下吧。</p>
<h3>17 最新版的服务器程序</h3>
<p>如果可能，尽量找软件安装的都是最新版的服务器。有些服务商软件更新的不频繁，比如都这时候了服务器上跑的还是PHP4，那可就杯具了。另外，及时更新软件也是防止安全隐患的好方法。</p>
<h3>18 在线率（uptime）</h3>
<p>我不说你也知道在线率的重要性。务必选择口碑好的服务商，他们的在线率往往更有保障。但是，100%的在线率也是不可能的，务必阅读服务商承诺的在线率，并用工具进行监测。我之前介绍过的<a href="http://cheweb.org/108.html">Pingdom</a>就是一款很好的<a href="http://cheweb.org/108.html">监测在线率的工具</a>。</p>
<h3>19 免费域名</h3>
<p>有些主机商赠送免费的顶级域名，这对还没有域名的用户来说是个好事。不过注意这里面其实也是有陷阱的，一旦使用主机商赠送的域名，如果你要退款，主机商是会把域名的钱单独扣下来的。</p>
<h3>20 虚拟主机？VPS？还是专属服务器？</h3>
<p>虚拟主机、VPS、专属服务器，三者各有千秋，各有优劣。这里不再详细分析，可以看我之前写的<a href="http://cheweb.org/370.html">一篇文章</a>，里面做了仔细的分析。
<div style="margin-top: 15px;">
<p><strong>原创编著/编译，转载请给面子：</strong> 转载自<a href="http://cheweb.org/">扯Web</a>，<strong>本文原始链接:</strong> <a href="http://cheweb.org/535.html">选择网站主机时必须注意的20个问题</a></p>
</div>
<h3  class="related_post_title">继续阅读：</h3><ul class="related_post"><li><a href="http://cheweb.org/438.html" title="phpMyAdmin开发人员访谈&mdash;&mdash;4个人支持整个项目">phpMyAdmin开发人员访谈&mdash;&mdash;4个人支持整个项目</a></li><li><a href="http://cheweb.org/370.html" title="VPS完全指南">VPS完全指南</a></li><li><a href="http://cheweb.org/342.html" title="高效邮件管理的20条守则">高效邮件管理的20条守则</a></li><li><a href="http://cheweb.org/298.html" title="10个不常见却很有用的PHP函数">10个不常见却很有用的PHP函数</a></li><li><a href="http://cheweb.org/236.html" title="用最简单的方法黑掉别人的网站">用最简单的方法黑掉别人的网站</a></li></ul><hr />
<p><small>
<a href="http://cheweb.org/535.html#comments">觉得文章靠谱？欢迎发表评论！</a> |
<a href="http://cheweb.org/535.html">本文永久链接</a> 
|作者: Ven  | © <a href="http://cheweb.org">扯Web</a>, 2010 版权所有 
</small></p>]]></content:encoded>
			<wfw:commentRss>http://cheweb.org/535.html/feed</wfw:commentRss>
		<slash:comments>39</slash:comments>
		</item>
		<item>
		<title>phpMyAdmin开发人员访谈&#8212;&#8212;4个人支持整个项目</title>
		<link>http://cheweb.org/438.html</link>
		<comments>http://cheweb.org/438.html#comments</comments>
		<pubDate>Sat, 15 May 2010 12:55:51 +0000</pubDate>
		<dc:creator>Ven</dc:creator>
				<category><![CDATA[互联网络]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[phpmyadmin]]></category>
		<category><![CDATA[sourceforge]]></category>

		<guid isPermaLink="false">http://cheweb.org/438.html</guid>
		<description><![CDATA[
如果说哪个开源程序不需要介绍大家就认识，那一定是phpMyAdmin，一款流行的MySQL数据库的Web管理界面。MySQL是全球最流行的Web程序数据库，而phpMyAdmin让MySQL更易于管理。phpMyAdmin允许数据库设计师连接MySQL，查看他们具有权限的所有数据库和数据表，并在上面执行操作，如创建和调整表结构、插入和更新数据、导入和导出，以及在多个服务器上同步数据。
phpMyAdmin是SourceForge.net上“最活跃”和“下载量最多”的程序。phpMyAdmin项目主导人之一的Marc Delisle说，像phpMyAdmin这样流行的程序，难题之一是如何支持如此之多的用户。“我们的用户范围非常宽，一些人精通数据库原理，而另一些则几乎是门外汉。我们努力为不同用户提供支持，这非常不容易。另一个难题是是处理web环境自身的问题，如应对不同的操作系统，web服务器问题，以及浏览器兼容性问题”。
你也许认为如此流行的项目需要很多开发者来维护，而据Delisle透露，“不算翻译人员，当前我们实际上只有4名开发者，因此在沟通协作上完全没有问题。其他人员虽然没有参与代码编写，但他们也在负责着项目的重要组成部分，如维护项目wiki、在IRC上提供帮助、帮我安排好phpMyAdmin的各类会议等等。”
phpMyAdmin项目同时欢迎来自用户的贡献。“这是一个社区项目，”Delisle说到，“是的，人们可以建议新的功能，但我们更希望用户给项目贡献真正的代码，或参与到我们超过60种语言的翻译工作中来。”
“近几年，通过加入Google Summer of Code，我们实现了一些重大的新功能。参与GSoC的一个巨大好处就是为我们带来了很多活跃的开发者。”
phpMyAdmin于2001年进驻SourceForge.net。“SourceForge很好的满足了我们的需求，我们找不到换到其他平台的理由。”Delisle说。“但是同时，我们在我们的SourceForge主页上发现很多用户在抱怨下载出错，希望SourceForge在这方面能做得更好。”

原创编著/编译，转载请给面子： 转载自扯Web，本文原始链接: phpMyAdmin开发人员访谈&#8212;&#8212;4个人支持整个项目

继续阅读：选择网站主机时必须注意的20个问题10个不常见却很有用的PHP函数PHP4何时会死？

觉得文章靠谱？欢迎发表评论！ &#124;
本文永久链接 
&#124;作者: Ven  &#124; © 扯Web, 2010 版权所有 
]]></description>
			<content:encoded><![CDATA[<p><a href="http://cheweb.org/wp-content/uploads/2010/05/673phpmyadminlogos.png" target="_blank"><img style="display: inline; border: 0px;" title="673-phpmyadmin-logo-s-" src="http://cheweb.org/index.php?feedimage=wp-content/uploads/2010/05/673phpmyadminlogos_thumb.png" border="0" alt="673-phpmyadmin-logo-s-" width="194" height="194" /></a></p>
<p>如果说哪个开源程序不需要介绍大家就认识，那一定是<a href="http://www.phpmyadmin.net/" target="_blank">phpMyAdmin</a>，一款流行的MySQL数据库的Web管理界面。MySQL是全球最流行的Web程序数据库，而phpMyAdmin让MySQL更易于管理。phpMyAdmin允许数据库设计师连接MySQL，查看他们具有权限的所有数据库和数据表，并在上面执行操作，如创建和调整表结构、插入和更新数据、导入和导出，以及在多个服务器上同步数据。</p>
<p><span id="more-438"></span>phpMyAdmin是<a href="http://sourceforge.net/" target="_blank">SourceForge.net</a>上“最活跃”和“下载量最多”的程序。phpMyAdmin项目主导人之一的Marc Delisle说，像phpMyAdmin这样流行的程序，难题之一是如何支持如此之多的用户。“我们的用户范围非常宽，一些人精通数据库原理，而另一些则几乎是门外汉。我们努力为不同用户提供支持，这非常不容易。另一个难题是是处理web环境自身的问题，如应对不同的操作系统，web服务器问题，以及浏览器兼容性问题”。</p>
<p>你也许认为如此流行的项目需要很多开发者来维护，而据Delisle透露，“不算翻译人员，当前我们实际上只有4名开发者，因此在沟通协作上完全没有问题。其他人员虽然没有参与代码编写，但他们也在负责着项目的重要组成部分，如维护项目wiki、在IRC上提供帮助、帮我安排好phpMyAdmin的各类会议等等。”</p>
<p>phpMyAdmin项目同时欢迎来自用户的贡献。“这是一个社区项目，”Delisle说到，“是的，人们可以建议新的功能，但我们更希望用户给项目贡献真正的代码，或参与到我们超过60种语言的翻译工作中来。”</p>
<p>“近几年，通过加入<a href="http://code.google.com/soc/" target="_blank">Google Summer of Code</a>，我们实现了一些重大的新功能。参与GSoC的一个巨大好处就是为我们带来了很多活跃的开发者。”</p>
<p>phpMyAdmin于2001年进驻SourceForge.net。“SourceForge很好的满足了我们的需求，我们找不到换到其他平台的理由。”Delisle说。“但是同时，我们在我们的SourceForge主页上发现很多用户在抱怨下载出错，希望SourceForge在这方面能做得更好。”
<div style="margin-top: 15px;">
<p><strong>原创编著/编译，转载请给面子：</strong> 转载自<a href="http://cheweb.org/">扯Web</a>，<strong>本文原始链接:</strong> <a href="http://cheweb.org/438.html">phpMyAdmin开发人员访谈&mdash;&mdash;4个人支持整个项目</a></p>
</div>
<h3  class="related_post_title">继续阅读：</h3><ul class="related_post"><li><a href="http://cheweb.org/535.html" title="选择网站主机时必须注意的20个问题">选择网站主机时必须注意的20个问题</a></li><li><a href="http://cheweb.org/298.html" title="10个不常见却很有用的PHP函数">10个不常见却很有用的PHP函数</a></li><li><a href="http://cheweb.org/49.html" title="PHP4何时会死？">PHP4何时会死？</a></li></ul><hr />
<p><small>
<a href="http://cheweb.org/438.html#comments">觉得文章靠谱？欢迎发表评论！</a> |
<a href="http://cheweb.org/438.html">本文永久链接</a> 
|作者: Ven  | © <a href="http://cheweb.org">扯Web</a>, 2010 版权所有 
</small></p>]]></content:encoded>
			<wfw:commentRss>http://cheweb.org/438.html/feed</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>10个不常见却很有用的PHP函数</title>
		<link>http://cheweb.org/298.html</link>
		<comments>http://cheweb.org/298.html#comments</comments>
		<pubDate>Sat, 16 Jan 2010 07:42:49 +0000</pubDate>
		<dc:creator>Ven</dc:creator>
				<category><![CDATA[Web技术]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[函数]]></category>

		<guid isPermaLink="false">http://cheweb.org/?p=298</guid>
		<description><![CDATA[1. sys_getloadavg()
sys_getloadavt()可以获得系统负载情况。该函数返回一个包含三个元素的数组，每个元素分别代表系统再过去的1、5和15分钟内的平均负载。
与其让服务器因负载过高而宕掉，不如在系统负载很高时主动die掉一个脚本，sys_getloadavg()就是用来帮你实现这个功能的。 不过很遗憾，该函数在windows下无效。
2. pack()
Pack()能将md5()返回的32位16进制字符串转换为16位的二进制字符串，可以节省存储空间。
3. cal_days_in_month()
cal_days_in_month()能够返回指定月份共有多少天。
4. _()
WordPress开发者经常能见到这个函数，还有_e()。这两个函数功能相同，与gettext()函数结合使用，能实现网站的多语言化。具体可参见PHP手册的相关部分介绍。
5. get_browser()
在发送页面前先看看用户的浏览器都能做些什么是不是挺好？get_browser()能获得用户的浏览器类型，以及浏览器支持的功能，不过首先你需要一个php_browscap.ini文件，用来给函数做参考文件。
要注意，该函数对浏览器功能的判断是基于该类浏览器的一般特性的。例如，如果用户关闭了浏览器对JavaScript的支持，函数无法得知这一点。但是在判断浏览器类型和OS平台方面，该函数还是很准确的。
6. debug_print_backtrace()
这是一个调试用的函数，能帮助你发现代码中的逻辑错误。要理解这个函数，还是直接看个例子吧：
$a = 0;
function iterate() {
global $a;
if( $a &#60; 10 )
recur();
echo $a . &#8220;, &#8220;;
}
function recur() {
global $a;
$a++;
// how did I get here?
echo &#8220;\n\n\n&#8221;;
debug_print_backtrace();
if( $a &#60; 10 )
iterate();
}
iterate();
# OUTPUT:
#0  recur() called at [C:\htdocs\php_stuff\index.php:8]
#1  iterate() called at [C:\htdocs\php_stuff\index.php:25]
#0  recur() called at [C:\htdocs\php_stuff\index.php:8]
#1  iterate() called at [C:\htdocs\php_stuff\index.php:21]
#2  recur() called at [C:\htdocs\php_stuff\index.php:8]
#3 ...]]></description>
			<content:encoded><![CDATA[<p><strong>1. sys_getloadavg()</strong></p>
<p>sys_getloadavt()可以获得系统负载情况。该函数返回一个包含三个元素的数组，每个元素分别代表系统再过去的1、5和15分钟内的平均负载。</p>
<p>与其让服务器因负载过高而宕掉，不如在系统负载很高时主动die掉一个脚本，sys_getloadavg()就是用来帮你实现这个功能的。 不过很遗憾，该函数在windows下无效。</p>
<p><strong>2. pack()</strong></p>
<p>Pack()能将md5()返回的32位16进制字符串转换为16位的二进制字符串，可以节省存储空间。</p>
<p><strong>3. cal_days_in_month()</strong></p>
<p><span id="more-298"></span>cal_days_in_month()能够返回指定月份共有多少天。</p>
<p><strong>4. _()</strong></p>
<p>WordPress开发者经常能见到这个函数，还有_e()。这两个函数功能相同，与gettext()函数结合使用，能实现网站的多语言化。具体可参见PHP手册的相关部分介绍。</p>
<p><strong>5. get_browser()</strong></p>
<p>在发送页面前先看看用户的浏览器都能做些什么是不是挺好？get_browser()能获得用户的浏览器类型，以及浏览器支持的功能，不过首先你需要一个php_browscap.ini文件，用来给函数做参考文件。</p>
<p>要注意，该函数对浏览器功能的判断是基于该类浏览器的一般特性的。例如，如果用户关闭了浏览器对JavaScript的支持，函数无法得知这一点。但是在判断浏览器类型和OS平台方面，该函数还是很准确的。</p>
<p><strong>6. debug_print_backtrace()</strong></p>
<p>这是一个调试用的函数，能帮助你发现代码中的逻辑错误。要理解这个函数，还是直接看个例子吧：</p>
<blockquote><p>$a = 0;</p>
<p>function iterate() {<br />
global $a;<br />
if( $a &lt; 10 )<br />
recur();<br />
echo $a . &#8220;, &#8220;;<br />
}</p>
<p>function recur() {<br />
global $a;<br />
$a++;</p>
<p>// how did I get here?<br />
echo &#8220;\n\n\n&#8221;;<br />
debug_print_backtrace();</p>
<p>if( $a &lt; 10 )<br />
iterate();</p>
<p>}</p>
<p>iterate();</p>
<p># OUTPUT:</p>
<p>#0  recur() called at [C:\htdocs\php_stuff\index.php:8]<br />
#1  iterate() called at [C:\htdocs\php_stuff\index.php:25]</p>
<p>#0  recur() called at [C:\htdocs\php_stuff\index.php:8]<br />
#1  iterate() called at [C:\htdocs\php_stuff\index.php:21]<br />
#2  recur() called at [C:\htdocs\php_stuff\index.php:8]<br />
#3  iterate() called at [C:\htdocs\php_stuff\index.php:25]</p>
<p>#0  recur() called at [C:\htdocs\php_stuff\index.php:8]<br />
#1  iterate() called at [C:\htdocs\php_stuff\index.php:21]<br />
#2  recur() called at [C:\htdocs\php_stuff\index.php:8]<br />
#3  iterate() called at [C:\htdocs\php_stuff\index.php:21]<br />
#4  recur() called at [C:\htdocs\php_stuff\index.php:8]<br />
#5  iterate() called at [C:\htdocs\php_stuff\index.php:25]</p></blockquote>
<p><strong>7. metaphone()</strong></p>
<p>这个函数返回单词的metaphone值，相同读音的单词具有相同的metaphone值，也就是说这个函数可以帮你判断两个单词的读音是否相同。不过对中文就无效了。。。</p>
<p><strong>8. natsort()</strong></p>
<p>natsort()能将一个数组以自然排序法进行排列，直接看个例子吧：</p>
<blockquote><p>$items = array(<br />
&#8220;100 apples&#8221;, &#8220;5 apples&#8221;, &#8220;110 apples&#8221;, &#8220;55 apples&#8221;<br />
);</p>
<p>// normal sorting:<br />
sort($items);<br />
print_r($items);<br />
# Outputs:<br />
# Array<br />
# (<br />
#     [0] =&gt; 100 apples<br />
#     [1] =&gt; 110 apples<br />
#     [2] =&gt; 5 apples<br />
#     [3] =&gt; 55 apples<br />
# )</p>
<p>natsort($items);<br />
print_r($items);<br />
# Outputs:<br />
# Array<br />
# (<br />
#     [2] =&gt; 5 apples<br />
#     [3] =&gt; 55 apples<br />
#     [0] =&gt; 100 apples<br />
#     [1] =&gt; 110 apples<br />
# )</p></blockquote>
<p><strong>9. levenshtein()</strong></p>
<p>Levenshtein()告诉你两个单词之间的“距离”。它告诉你如果想把一个单词变成另一个单词，需要插入、替换和删除多少字母。</p>
<p>看个例子吧：</p>
<blockquote><p>$dictionary = array(<br />
&#8220;php&#8221;, &#8220;javascript&#8221;, &#8220;css&#8221;<br />
);</p>
<p>$word = &#8220;japhp&#8221;;</p>
<p>$best_match = $dictionary[0];<br />
$match_value = levenshtein($dictionary[0], $word);</p>
<p>foreach($dictionary as $w) {<br />
$value = levenshtein($word, $w);<br />
if( $value &lt; $match_value ) {<br />
$best_match = $w;<br />
$match_value = $value;<br />
}<br />
}</p>
<p>echo &#8220;Did you mean the &#8216;$best_match&#8217; category?&#8221;;</p></blockquote>
<p><strong>10. glob()</strong></p>
<p>glob()会让你觉得用opendir(), readdir()和closedir()来寻找文件非常蠢。</p>
<blockquote><p>foreach (glob(&#8220;*.php&#8221;) as $file)<br />
echo &#8220;$file\n&#8221;;</p></blockquote>
<p>本文首发于<a href="http://www.mrven.com/?p=533">布鲁文的蓝色奇想</a>
<div style="margin-top: 15px;">
<p><strong>原创编著/编译，转载请给面子：</strong> 转载自<a href="http://cheweb.org/">扯Web</a>，<strong>本文原始链接:</strong> <a href="http://cheweb.org/298.html">10个不常见却很有用的PHP函数</a></p>
</div>
<h3  class="related_post_title">继续阅读：</h3><ul class="related_post"><li><a href="http://cheweb.org/535.html" title="选择网站主机时必须注意的20个问题">选择网站主机时必须注意的20个问题</a></li><li><a href="http://cheweb.org/438.html" title="phpMyAdmin开发人员访谈&mdash;&mdash;4个人支持整个项目">phpMyAdmin开发人员访谈&mdash;&mdash;4个人支持整个项目</a></li><li><a href="http://cheweb.org/49.html" title="PHP4何时会死？">PHP4何时会死？</a></li></ul><hr />
<p><small>
<a href="http://cheweb.org/298.html#comments">觉得文章靠谱？欢迎发表评论！</a> |
<a href="http://cheweb.org/298.html">本文永久链接</a> 
|作者: Ven  | © <a href="http://cheweb.org">扯Web</a>, 2010 版权所有 
</small></p>]]></content:encoded>
			<wfw:commentRss>http://cheweb.org/298.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>PHP4何时会死？</title>
		<link>http://cheweb.org/49.html</link>
		<comments>http://cheweb.org/49.html#comments</comments>
		<pubDate>Wed, 28 Oct 2009 01:54:06 +0000</pubDate>
		<dc:creator>Ven</dc:creator>
				<category><![CDATA[Web技术]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://cheweb.org/?p=49</guid>
		<description><![CDATA[
PHP4 何时会死？要回答这个问题，先得明确 PHP4 应不应该死。从 PHP5 开始，大量强化面向对象编程的功能和特性被加入到PHP中，OOP编程变得更加容易和高效；一些函数的性能得到了优化；增加了如 XML 处理等符合时代潮流的函数系列；修改了部分设置以强化安全性。从发展的眼光看，新的版本淘汰旧版本是必然趋势。
PHP 官方在2007年的最后一天正式停止对PHP4的更新，但PHP4并没有立刻死亡：许多升级缓慢的服务器、尤其是虚拟主机提供商仍然保留着 PHP4。
我们无法统计有多少服务器仍然在运行PHP4，但是在对ChkVersion上46个基于PHP的建站程序的最新稳定版本做了一番调查后，发现其中竟然有30个程序仍然支持PHP4，占到总数的65%。其中不乏耳熟能详的著名建站软件，如WordPress（最低支持到4.3）、Drupal（最低支持到4.3.5）、Joomla（最低支持到4.3.10）、Dizcuz（最低支持到4.1）。
而在对6个主流PHP开发框架（Zend Framework, CakePHP, Symfony, QeePHP, Yii, CodeIgniter）的调查中，其中也有三分之一的框架继续支持PHP4（CakePHP和CodeIgniter），这对于追求OOP思想和MVC结构的框架来说基本上是难以容忍的。
大量的建站程序及脚本为了顾及PHP4而无法放手去享受PHP5带来的性能提升。他们之所以不愿抛弃PHP4，正是因为大量用户仍然在使用运行着PHP4的主机；而服务器管理员为了顾及老用户的脚本稳定性（PHP5和PHP4部分不兼容），则采取保守态度不升级。服务器和脚本之间的博弈，更是加重阻碍了PHP4的死亡。
当初PHP3到PHP4的换代为何进展的很顺利？我想这和当时PHP并不非常流行有关。而随着PHP逐渐成为第一大Web脚本语言，升级问题越来越牵一发而动全身。那么PHP4究竟何时会死？我相信在不短的一段时间内，至少3年以内它仍然会时常出现在我们的视野中。也许正如麦克阿瑟所说，“老兵永远不死，只会慢慢凋零”。

原创编著/编译，转载请给面子： 转载自扯Web，本文原始链接: PHP4何时会死？

继续阅读：选择网站主机时必须注意的20个问题phpMyAdmin开发人员访谈&#8212;&#8212;4个人支持整个项目10个不常见却很有用的PHP函数

觉得文章靠谱？欢迎发表评论！ &#124;
本文永久链接 
&#124;作者: Ven  &#124; © 扯Web, 2009 版权所有 
]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-51" title="goPHP5-283x100" src="http://cheweb.org/index.php?feedimage=wp-content/uploads/2009/10/goPHP5-283x100.png" alt="goPHP5-283x100" width="283" height="100" /></p>
<p>PHP4 何时会死？要回答这个问题，先得明确 PHP4 应不应该死。从 PHP5 开始，大量强化面向对象编程的功能和特性被加入到PHP中，OOP编程变得更加容易和高效；一些函数的性能得到了优化；增加了如 XML 处理等符合时代潮流的函数系列；修改了部分设置以强化安全性。从发展的眼光看，新的版本淘汰旧版本是<a href="http://cheweb.org/49.html">必然趋势</a>。</p>
<p>PHP 官方在2007年的最后一天正式停止对PHP4的更新，但PHP4并没有立刻死亡：许多升级缓慢的服务器、尤其是虚拟主机提供商仍然保留着 PHP4。</p>
<p>我们无法统计有多少服务器仍然在运行PHP4，但是在对<a href="http://chkversion.com">ChkVersion</a>上46个基于PHP的建站程序的最新稳定版本做了一番调查后，发现其中竟然有30个程序仍然支持PHP4，占到总数的65%。其中不乏耳熟能详的著名建站软件，如WordPress（最低支持到4.3）、Drupal（最低支持到4.3.5）、Joomla（最低支持到4.3.10）、Dizcuz（最低支持到4.1）。</p>
<p><span id="more-49"></span>而在对6个主流PHP开发框架（Zend Framework, CakePHP, Symfony, QeePHP, Yii, CodeIgniter）的调查中，其中也有三分之一的框架继续支持PHP4（CakePHP和CodeIgniter），这对于追求OOP思想和MVC结构的框架来说基本上是难以容忍的。</p>
<p>大量的建站程序及脚本为了顾及PHP4而无法放手去享受PHP5带来的性能提升。他们之所以不愿抛弃PHP4，正是因为大量用户仍然在使用运行着PHP4的主机；而服务器管理员为了顾及老用户的脚本稳定性（PHP5和PHP4部分不兼容），则采取保守态度不升级。服务器和脚本之间的博弈，更是加重阻碍了PHP4的死亡。</p>
<p>当初PHP3到PHP4的换代为何进展的很顺利？我想这和当时PHP并不非常流行有关。而随着PHP逐渐成为第一大Web脚本语言，升级问题越来越牵一发而动全身。那么PHP4究竟何时会死？我相信在不短的一段时间内，至少3年以内它仍然会时常出现在我们的视野中。也许正如麦克阿瑟所说，“老兵永远不死，只会慢慢凋零”。
<div style="margin-top: 15px;">
<p><strong>原创编著/编译，转载请给面子：</strong> 转载自<a href="http://cheweb.org/">扯Web</a>，<strong>本文原始链接:</strong> <a href="http://cheweb.org/49.html">PHP4何时会死？</a></p>
</div>
<h3  class="related_post_title">继续阅读：</h3><ul class="related_post"><li><a href="http://cheweb.org/535.html" title="选择网站主机时必须注意的20个问题">选择网站主机时必须注意的20个问题</a></li><li><a href="http://cheweb.org/438.html" title="phpMyAdmin开发人员访谈&mdash;&mdash;4个人支持整个项目">phpMyAdmin开发人员访谈&mdash;&mdash;4个人支持整个项目</a></li><li><a href="http://cheweb.org/298.html" title="10个不常见却很有用的PHP函数">10个不常见却很有用的PHP函数</a></li></ul><hr />
<p><small>
<a href="http://cheweb.org/49.html#comments">觉得文章靠谱？欢迎发表评论！</a> |
<a href="http://cheweb.org/49.html">本文永久链接</a> 
|作者: Ven  | © <a href="http://cheweb.org">扯Web</a>, 2009 版权所有 
</small></p>]]></content:encoded>
			<wfw:commentRss>http://cheweb.org/49.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

