<?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>CodePy.Net &#187; PHP</title>
	<atom:link href="http://codepy.net/tag/php/feed" rel="self" type="application/rss+xml" />
	<link>http://codepy.net</link>
	<description>专注网络开发：Python,PHP,Vim,Linux 分享我的快乐 -- Share My Happiness</description>
	<lastBuildDate>Sun, 15 Jan 2012 16:20:02 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>保存文件时VIM自动检查PHP语法错误</title>
		<link>http://codepy.net/2009/11/05/auto-check-php-syntax-errors-in-vim.html</link>
		<comments>http://codepy.net/2009/11/05/auto-check-php-syntax-errors-in-vim.html#comments</comments>
		<pubDate>Thu, 05 Nov 2009 12:55:35 +0000</pubDate>
		<dc:creator>ruitao</dc:creator>
				<category><![CDATA[得力工具]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://codepy.net/?p=164</guid>
		<description><![CDATA[Google了一下，让VIM能够检查PHP的语法错误无外乎以下这段VIM配置： &#34;====================================================== &#34;PHP语法检查 &#34;====================================================== &#160; function! PhpCheckSyntax&#40;&#41; &#34; Check php syntax setlocal makeprg=\php\ -l\ -n\ -d\ html_errors=off\ % &#160; &#34; Set shellpipe setlocal shellpipe=&#62; &#160; &#34; Use error format for parsing PHP error output setlocal errorformat=%m\ in\ %f\ on\ line\ %l make % endfunction &#160; &#34; Perform :PhpCheckSyntax() map &#60;F6&#62; :call PhpCheckSyntax&#40;&#41;&#60;CR&#62; &#34; imap &#60;F6&#62; [...]]]></description>
			<content:encoded><![CDATA[<p>Google了一下，让VIM能够检查PHP的语法错误无外乎以下这段VIM配置：</p>

<div class="wp_syntax"><div class="code"><pre class="vim" style="font-family:monospace;"><span style="color: #adadad; font-style: italic;">&quot;======================================================</span><span style="color: #adadad; font-style: italic;">
&quot;PHP语法检查</span><span style="color: #adadad; font-style: italic;">
&quot;======================================================</span>
&nbsp;
<span style="color: #804040;">function</span><span style="color: #000000;">!</span> PhpCheckSyntax<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #adadad; font-style: italic;">
  &quot; Check php syntax</span>
  <span style="color: #804040;">setlocal</span> <span style="color: #668080;">makeprg</span>=\php\ <span style="color: #000000;">-</span>l\ <span style="color: #000000;">-</span>n\ <span style="color: #000000;">-</span>d\ html_errors=<span style="color: #25BB4D;">off</span>\ <span style="color: #000000;">%</span><span style="color: #adadad; font-style: italic;">
&nbsp;
  &quot; Set shellpipe</span>
  <span style="color: #804040;">setlocal</span> <span style="color: #668080;">shellpipe</span>=<span style="color: #000000;">&gt;</span><span style="color: #adadad; font-style: italic;">
&nbsp;
  &quot; Use error format for parsing PHP error output</span>
  <span style="color: #804040;">setlocal</span> <span style="color: #668080;">errorformat</span>=<span style="color: #000000;">%</span>m\ <span style="color: #804040;">in</span>\ <span style="color: #000000;">%</span>f\ <span style="color: #25BB4D;">on</span>\ <span style="color: #25BB4D;">line</span>\ <span style="color: #000000;">%</span>l
  make <span style="color: #000000;">%</span>
endfunction<span style="color: #adadad; font-style: italic;">
&nbsp;
&quot; Perform :PhpCheckSyntax()</span>
<span style="color: #804040;">map</span> <span style="color: #668080;">&lt;F6&gt;</span> <span style="color: #000000;">:</span><span style="color: #804040;">call</span> PhpCheckSyntax<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #668080;">&lt;CR&gt;</span><span style="color: #adadad; font-style: italic;">
&quot; imap &lt;F6&gt; &lt;ESC&gt;:call PhpCheckSyntax()&lt;CR&gt;</span></pre></div></div>

<p>不过我希望能够在保存的时候自动检查，所以加了这一句：</p>

<div class="wp_syntax"><div class="code"><pre class="vim" style="font-family:monospace;"><span style="color: #804040;">autocmd</span> <span style="color: #25BB4D;">BufWritePost</span> <span style="color: #000000;">*.</span>php <span style="color: #000000;">:</span><span style="color: #804040;">call</span> PhpCheckSyntax<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://codepy.net/2009/11/05/auto-check-php-syntax-errors-in-vim.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>网站性能优化小结 – 前端优化</title>
		<link>http://codepy.net/2009/10/21/web-optimization-fron-end-optimization.html</link>
		<comments>http://codepy.net/2009/10/21/web-optimization-fron-end-optimization.html#comments</comments>
		<pubDate>Wed, 21 Oct 2009 12:50:04 +0000</pubDate>
		<dc:creator>ruitao</dc:creator>
				<category><![CDATA[编程随想]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[optimization]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://codepy.net/?p=162</guid>
		<description><![CDATA[说到对前端的优化，不得不提到Yahoo 的 Exceptional Performance Team，他们的努力，为我们提供了34条优化建议，并且提供了Firefox下面进行前端分析的扩展YSlow，根据 YSlow对网站的分析报告，逐条进行优化即可。下面只是总结一下我在优化我们网站时针对YSlow分析生成的报告中需要配置服务器端的部分： 1.Add Expires headers 在HTTP/1.1中，Expires headers出现在Caching in HTTP中，用户通过浏览器第一次访问我们的网站时，会请求很多静态文件（css，js，图片等），我们可以通过添加Expires headers来缓存这些文件，以Apache为例： 先注释掉httpd.conf里面的 LoadModule headers_module modules/mod_headers.so 在文件末尾添加上： ExpiresActive On ExpiresDefault &#34;access plus 1 year&#34; 这里我将文件的有效时间设置为1年。 关于Apache mod_headers的文档，查看这里 2.Compress components with gzip 用gzip压缩服务器端和浏览器端传输的数据，可以大大减少流量，按照YSlow中的说法：“Approximately 90% of today’s Internet traffic travels through browsers that claim to support gzip”，所以我们大可启用gzip压缩来减少流量。也是以Apache为例： 注释掉http.conf里面的 LoadModule deflate_module modules/mod_deflate.so 添加 DeflateCompressionLevel 6 AddOutputFilterByType [...]]]></description>
			<content:encoded><![CDATA[<p>说到对前端的优化，不得不提到Yahoo 的 Exceptional Performance Team，他们的努力，为我们提供了34条优化建议，并且提供了Firefox下面进行前端分析的扩展YSlow，根据 YSlow对网站的分析报告，逐条进行优化即可。下面只是总结一下我在优化我们网站时针对YSlow分析生成的报告中需要配置服务器端的部分：<br />
<strong><br />
1.Add Expires headers</strong></p>
<p>在HTTP/1.1中，Expires headers出现在Caching in HTTP中，用户通过浏览器第一次访问我们的网站时，会请求很多静态文件（css，js，图片等），我们可以通过添加Expires headers来缓存这些文件，以Apache为例： 先注释掉httpd.conf里面的</p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;"><span style="color: #00007f;">LoadModule</span> headers_module modules/mod_headers.so</pre></div></div>

<p>在文件末尾添加上：</p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;"><span style="color: #00007f;">ExpiresActive</span> <span style="color: #0000ff;">On</span>
<span style="color: #00007f;">ExpiresDefault</span> <span style="color: #7f007f;">&quot;access plus 1 year&quot;</span></pre></div></div>

<p>这里我将文件的有效时间设置为1年。 关于Apache mod_headers的文档，查看这里</p>
<p><strong>2.Compress components with gzip</strong></p>
<p>用gzip压缩服务器端和浏览器端传输的数据，可以大大减少流量，按照YSlow中的说法：“Approximately 90% of today’s Internet traffic travels through browsers that claim to support gzip”，所以我们大可启用gzip压缩来减少流量。也是以Apache为例：<br />
注释掉http.conf里面的</p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;"><span style="color: #00007f;">LoadModule</span> deflate_module modules/mod_deflate.so</pre></div></div>

<p>添加</p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;"><span style="color: #00007f;">DeflateCompressionLevel</span> <span style="color: #ff0000;">6</span>
<span style="color: #00007f;">AddOutputFilterByType</span> DEFLATE text/html text/plain text/xml application/x-httpd-php
<span style="color: #00007f;">AddOutputFilter</span> DEFLATE js css</pre></div></div>

<p>到文件末尾，这里我们只对js和css进行压缩，不至于占用太多的CPU资源，jpg、png这些本身就是被压缩好的文件也没有必要进行二次压缩。 DeflateCompressionLevel表示的是压缩程度，越高的压缩程度就会有越好的压缩效果，同时也意味着占用越多的CPU资源。取值范围在 1~9之间，这里我们选择6，保证较好的压缩效果又不占用太多的CPU资源。</p>
<p><strong>3.Configure entity tags (ETags)</strong></p>
<p>关闭last-modified和Etags可以减少服务器的带宽和负载，简单点说，这两个参数会比较本地缓存的资源对应的服务器资源是否被修改过，如果修改过，则重新下载。想更深入地了解，可以看一下InfoQ的《使用ETags减少Web应用带宽和负载》。同样，以Apache为例，我们通过添加以下规则来关闭last-modified和Etags： # 关闭last-modified</p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;"><span style="color: #00007f;">Header</span> unset Last-Modified</pre></div></div>

<p># 关闭etags</p>

<div class="wp_syntax"><div class="code"><pre class="apache" style="font-family:monospace;"><span style="color: #00007f;">FileETag</span> <span style="color: #0000ff;">none</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://codepy.net/2009/10/21/web-optimization-fron-end-optimization.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP5.3 和CakePHP1.2的兼容性问题</title>
		<link>http://codepy.net/2009/09/30/cakephp-with-php5-3.html</link>
		<comments>http://codepy.net/2009/09/30/cakephp-with-php5-3.html#comments</comments>
		<pubDate>Wed, 30 Sep 2009 12:45:22 +0000</pubDate>
		<dc:creator>ruitao</dc:creator>
				<category><![CDATA[编程语言]]></category>
		<category><![CDATA[cakephp]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[php5.3]]></category>

		<guid isPermaLink="false">http://codepy.net/?p=160</guid>
		<description><![CDATA[最近一次升级Archlinux，PHP升级到了5.3，遇到了两个问题： 1.Arch里面PHP更换了打包的方式，PHP的Aapche模块被独立封装为php-apache模块，所以安装了php包之后还要安装 php-apache包（如果你用Apache作为你的Web server ^^ ）。 2.另外就是Cakephp1.2跟PHP5.3的兼容性问题了。安装PHP5.3之后，运行Cakephp应用遇到了错误： 一个是提示strtotime()出错，最终修改php.ini的 date.timezone 解决，改为： date.timezone = Asia/Chongqing 时区的列表可以到这里查看：http://us.php.net/manual/pt_BR/timezones.php 另外就是报类似以下的错误： Deprecated: Assigning the return value of new by reference is deprecated… 这个有两种解决方法，一是将Cakephp升级到最新的Cakephp1.3dev版本，但是现在1.3版本并不是稳定版本，如果想继续使用1.2 版本的话，需要: 1.修改cake运行库下面cake/console/cake.php文件。 将141行的 141 142 143 144 145 function __initConstants&#40;&#41; &#123; if &#40;function_exists&#40;'ini_set'&#41;&#41; &#123; ini_set&#40;'display_errors', '1'&#41;; ini_set&#40;'error_reporting', E_ALL&#41;; ... 改为： 141 142 143 144 145 146 147 148 [...]]]></description>
			<content:encoded><![CDATA[<p>最近一次升级Archlinux，PHP升级到了5.3，遇到了两个问题：</p>
<p>1.Arch里面PHP更换了打包的方式，PHP的Aapche模块被独立封装为php-apache模块，所以安装了php包之后还要安装 php-apache包（如果你用Apache作为你的Web server ^^ ）。</p>
<p>2.另外就是Cakephp1.2跟PHP5.3的兼容性问题了。安装PHP5.3之后，运行Cakephp应用遇到了错误：</p>
<p>一个是提示strtotime()出错，最终修改php.ini的 <strong>date.timezone </strong>解决，改为：<strong> </strong></p>
<pre>date.timezone = Asia/Chongqing</pre>
<p>时区的列表可以到这里查看：<a href="http://us.php.net/manual/pt_BR/timezones.php" target="_blank">http://us.php.net/manual/pt_BR/timezones.php</a></p>
<p>另外就是报类似以下的错误：</p>
<p>Deprecated: Assigning the return value of  new by reference is deprecated…</p>
<p>这个有两种解决方法，一是将Cakephp升级到最新的Cakephp1.3dev版本，但是现在1.3版本并不是稳定版本，如果想继续使用1.2 版本的话，需要:</p>
<p>1.修改cake运行库下面cake/console/cake.php文件。</p>
<p>将141行的</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>141
142
143
144
145
</pre></td><td class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> __initConstants<span style="color: #009900;">&#40;</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: #990000;">function_exists</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'ini_set'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
       <span style="color: #990000;">ini_set</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'display_errors'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'1'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
       <span style="color: #990000;">ini_set</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'error_reporting'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">E_ALL</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">...</span></pre></td></tr></table></div>

<p>改为：</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>141
142
143
144
145
146
147
148
149
</pre></td><td class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> __initConstants<span style="color: #009900;">&#40;</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: #990000;">function_exists</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'ini_set'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
      <span style="color: #990000;">ini_set</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'display_errors'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'1'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
      <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">defined</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'E_DEPRECATED'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #990000;">ini_set</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'error_reporting'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">E_ALL</span> <span style="color: #339933;">&amp;</span>amp<span style="color: #339933;">;</span> ~E_DEPRECATED<span style="color: #009900;">&#41;</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: #990000;">ini_set</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'error_reporting'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">E_ALL</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
      <span style="color: #009900;">&#125;</span>
<span style="color: #339933;">...</span></pre></td></tr></table></div>

<p>2.修改cake/libs/configure.php<br />
将292行的</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>292
293
294
295
</pre></td><td class="code"><pre class="php" style="font-family:monospace;"><span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">isset</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$config</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'debug'</span><span style="color: #009900;">&#93;</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;">$_this</span><span style="color: #339933;">-&amp;</span>gt<span style="color: #339933;">;</span>debug<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #990000;">error_reporting</span><span style="color: #009900;">&#40;</span><span style="color: #009900; font-weight: bold;">E_ALL</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #339933;">......</span></pre></td></tr></table></div>

<p>修改为：</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>292
293
294
295
296
297
298
299
</pre></td><td class="code"><pre class="php" style="font-family:monospace;"><span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">isset</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$config</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'debug'</span><span style="color: #009900;">&#93;</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;">$_this</span><span style="color: #339933;">-&amp;</span>gt<span style="color: #339933;">;</span>debug<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: #990000;">defined</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'E_DEPRECATED'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
          <span style="color: #990000;">ini_set</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'error_reporting'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">E_ALL</span> <span style="color: #339933;">&amp;</span>amp<span style="color: #339933;">;</span> ~E_DEPRECATED<span style="color: #009900;">&#41;</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: #990000;">ini_set</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'error_reporting'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">E_ALL</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        <span style="color: #009900;">&#125;</span>
<span style="color: #339933;">......</span></pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://codepy.net/2009/09/30/cakephp-with-php5-3.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Yahoo:VIM for (PHP) Programmers 课件pdf版</title>
		<link>http://codepy.net/2009/05/05/vim-for-php-programmers.html</link>
		<comments>http://codepy.net/2009/05/05/vim-for-php-programmers.html#comments</comments>
		<pubDate>Tue, 05 May 2009 09:25:47 +0000</pubDate>
		<dc:creator>ruitao</dc:creator>
				<category><![CDATA[LINUX生活]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[yahoo]]></category>

		<guid isPermaLink="false">http://codepy.net/?p=111</guid>
		<description><![CDATA[翻翻自己的电子书“储存库”的时候，发现了这一个PDF，拿出来分享一下，对于想用VIM写PHP的同学应该是很有帮助。 作者的地址：http://gravitonic.com/ 文章地址：http://gravitonic.com/2007/02/vim-for-php-programmers-slides-and-resources 下载地址：Uushare Box.net]]></description>
			<content:encoded><![CDATA[<p>翻翻自己的电子书“储存库”的时候，发现了这一个PDF，拿出来分享一下，对于想用VIM写PHP的同学应该是很有帮助。</p>
<p>作者的地址：<a href="http://gravitonic.com/" target="_blank">http://gravitonic.com/</a></p>
<p>文章地址：<a href="http://gravitonic.com/2007/02/vim-for-php-programmers-slides-and-resources">http://gravitonic.com/2007/02/vim-for-php-programmers-slides-and-resources</a></p>
<p>下载地址：<a href="http://www.uushare.com/user/ruitao/file/1572401">Uushare</a> <a href="http://www.box.net/shared/jhqm8vui6r">Box.net</a></p>
]]></content:encoded>
			<wfw:commentRss>http://codepy.net/2009/05/05/vim-for-php-programmers.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP和MySQL Web开发（原书第三版）中文版 PDF</title>
		<link>http://codepy.net/2007/12/07/php-mysql-web-development-chinese-version-pdf.html</link>
		<comments>http://codepy.net/2007/12/07/php-mysql-web-development-chinese-version-pdf.html#comments</comments>
		<pubDate>Fri, 07 Dec 2007 15:33:08 +0000</pubDate>
		<dc:creator>ruitao</dc:creator>
				<category><![CDATA[电子书]]></category>
		<category><![CDATA[编程语言]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://ruitao.host5.meyu.net/?p=22</guid>
		<description><![CDATA[学PHP&#38;MySQL必看的圣经，个人特别推崇，看看CSDN里面的介绍吧： 本书将PHP开发与MySQL应用相结合，分别对PHP和MySQL做了深入浅出的分析，不仅介绍PHP和MySQL的一般概念，而且对PHP和MySQL的Web应用做了较全面的阐述，并包括几个经典且实用的例子。 本书是第3版，经过了全面的更新、重写以及扩展，包括PHP5的最新特性——新的对象模型、更好的异常处理和SimpleXML；以及MySQL 5的新特性，例如存储过程和存储引擎。 PHP是PHP：Hypertext Preprocessor的缩写，一种被广泛应用的开源（Open Source）多用途脚本语言。它可嵌入到 HTML中，尤其适合Web开发。然而，PHP的功能并不局限于此。它可以作为服务器端脚本、命令行脚本甚至客户端GUI程序的开发语言。如今，PHP能够在所有的主流操作系统和大多数的Web服务器。PHP的易用性、高性能、与 Apache Web 服务器的紧密集成以及大量应用程序构建块使其成为领先的Web应用程序开发语言之一。 MySQL是一个非常快速、健壮的关系数据库管理系统（RDBMS）。它是一个能使你高效地保存、搜索、排序和检索数据的数据库。MySQL服务器可以控制你对数据的访问，从而确保只有经过身份认证的用户才能访问数据。因此，MySQL是一个多用户、多线程服务器，它使用为业界所支持的标准数据库查询语言 SQL（结构化查询语言）。自从1996年开始，MySQL就开始正式发布，但是其开发历史还必须追溯到1979年。如今，MySQL已经获得了《Linux Journal》杂志的读者选择奖。 由Laura Thomson和Luke Welling编著的这本《PHP and MySQL Web Development》（中文版：《PHP与MySQL Web开发指南》）已经出版了第三版。就像《Thinking in Java》是关于Java的圣经类图书，这本书就是使用PHP和MySQL进行面向数据库的Web应用开发宝典。 该书语言通俗易懂，结构合理清晰。采用了循序渐进的方式介绍如何使用PHP和MySQL进行面向数据库的Web应用开发：PHP语言、MySQL服务器、电子商务基础、安全问题以及实战示例。这对于希望从事PHP和MySQL Web开发的入门级程序员来说，是合理的学习曲线。 本书介绍的PHP为最新版本，5.0。它详细介绍了PHP的历史和现在，以及作为面向过程和面向对象语言的特点和功能，其中还包括了PHP 5语言新特性的介绍，例如面向对象的改进。这对于不熟悉面向对象语言的读者来说，是基本的入门知识。 本书介绍的MySQL也是最新版本，4.0。考虑到读者可能对数据库理论的不熟悉，本书还用了两章的内容详细介绍关系数据库基础知识和SQL语言。在介绍 MySQL时，作者也是按照由浅入深的学习曲线逐步展开的。首先是MySQL数据库的特性，然后是MySQL的高级应用，这些应用与现实世界的开发紧密相关，包括MySQL权限系统的深入介绍，MySQL安全性问题的全面解析，以及一些令开发人员头疼的性能优化问题。 在详细介绍PHP和MySQL之后，本书也就进入最有特点和最有价值的部分：实战篇。PHP和MySQL的结合，能产生什么样的应用？答案很明显，电子商务。在进入用PHP和MySQL进行电子商务网站开发之前，作者还详细介绍了电子商务网站的基本特性以及需要特别注意的安全问题。在本书的关于电子商务安全问题部分，读者可以学习几乎所有的网站安全概念和技巧。这对于经验还不够丰富的网站开发人员来说，是不可多得手册。在实战项目介绍中，作者凭借多年的开发经验，给出了几个最具有代表性的例子：购物车，内容管理系统，基于Web的邮件管理系统，邮件列表管理器，Web论坛等。所有这些例子都具有非常高的实用性。设想一下，一个经验不够丰富的开发人员加入到一家电子商务网站，开始新的职业生涯，当他一边工作，一边学习本书时，他会说什么呢？“天啊，怎么书上的内容就是我工作的内容呢！感谢上帝！”。 除了面向开发人员外，作者还考虑到了电子商务网站的系统管理员可能遇到的问题：系统环境的搭建和维护。在本书的附录部分，作者详细介绍了如何在主流的操作系统平台上安装、配置甚至自己编译PHP和MySQL。因为PHP和MySQL开放源码的缘故，企业可能会需要对这些工具和平台进行定制，而本书附录的内容，恰恰为系统管理员提供了这方面的帮助。 综观本书全篇，内容广泛，风格严谨，理论和实践紧密结合。既有详细的概念说明，又有复杂而完整的实例代码，读者能够轻松地将自己所学的理论知识付诸实践。正是由于这个原因，本书适用的读者群非常广发。对于初学者来说，本书可以作为他们的教材和参考书,9对于有丰富经验的PHP和MySQL高手，本书也是一本很好的参考手册，因此本书适用于各个层次的PHP程序员。 当然，本书也存在不一些不足的地方。笔者认为作者应该尝试在本书中加入一些关于PHP和MySQL协作开发与当今最流行的J2EE平台以及.NET平台的比较。这种比较内容将有助于企业和开发人员选择合适的平台和工具。或许，这些内容将在不远的第四版看到。 （上部份）下载地址 （下部分）下载地址]]></description>
			<content:encoded><![CDATA[<p><img src="http://images.china-pub.com/ebook25001-30000/25384/zcover.jpg" alt="" width="154" height="200" /></p>
<p>学PHP&amp;MySQL必看的圣经，个人特别推崇，看看CSDN里面的介绍吧：</p>
<p>本书将PHP开发与MySQL应用相结合，分别对PHP和MySQL做了深入浅出的分析，不仅介绍PHP和MySQL的一般概念，而且对PHP和MySQL的Web应用做了较全面的阐述，并包括几个经典且实用的例子。   <span id="more-22"></span><br />
本书是第3版，经过了全面的更新、重写以及扩展，包括PHP5的最新特性——新的对象模型、更好的异常处理和SimpleXML；以及MySQL 5的新特性，例如存储过程和存储引擎。<br />
PHP是PHP：Hypertext Preprocessor的缩写，一种被广泛应用的开源（Open Source）多用途脚本语言。它可嵌入到 HTML中，尤其适合Web开发。然而，PHP的功能并不局限于此。它可以作为服务器端脚本、命令行脚本甚至客户端GUI程序的开发语言。如今，PHP能够在所有的主流操作系统和大多数的Web服务器。PHP的易用性、高性能、与 Apache Web 服务器的紧密集成以及大量应用程序构建块使其成为领先的Web应用程序开发语言之一。<br />
MySQL是一个非常快速、健壮的关系数据库管理系统（RDBMS）。它是一个能使你高效地保存、搜索、排序和检索数据的数据库。MySQL服务器可以控制你对数据的访问，从而确保只有经过身份认证的用户才能访问数据。因此，MySQL是一个多用户、多线程服务器，它使用为业界所支持的标准数据库查询语言 SQL（结构化查询语言）。自从1996年开始，MySQL就开始正式发布，但是其开发历史还必须追溯到1979年。如今，MySQL已经获得了《Linux Journal》杂志的读者选择奖。<br />
由Laura Thomson和Luke Welling编著的这本《PHP and MySQL Web Development》（中文版：《PHP与MySQL Web开发指南》）已经出版了第三版。就像《Thinking in Java》是关于Java的圣经类图书，这本书就是使用PHP和MySQL进行面向数据库的Web应用开发宝典。<br />
该书语言通俗易懂，结构合理清晰。采用了循序渐进的方式介绍如何使用PHP和MySQL进行面向数据库的Web应用开发：PHP语言、MySQL服务器、电子商务基础、安全问题以及实战示例。这对于希望从事PHP和MySQL Web开发的入门级程序员来说，是合理的学习曲线。<br />
本书介绍的PHP为最新版本，5.0。它详细介绍了PHP的历史和现在，以及作为面向过程和面向对象语言的特点和功能，其中还包括了PHP 5语言新特性的介绍，例如面向对象的改进。这对于不熟悉面向对象语言的读者来说，是基本的入门知识。<br />
本书介绍的MySQL也是最新版本，4.0。考虑到读者可能对数据库理论的不熟悉，本书还用了两章的内容详细介绍关系数据库基础知识和SQL语言。在介绍 MySQL时，作者也是按照由浅入深的学习曲线逐步展开的。首先是MySQL数据库的特性，然后是MySQL的高级应用，这些应用与现实世界的开发紧密相关，包括MySQL权限系统的深入介绍，MySQL安全性问题的全面解析，以及一些令开发人员头疼的性能优化问题。<br />
在详细介绍PHP和MySQL之后，本书也就进入最有特点和最有价值的部分：实战篇。PHP和MySQL的结合，能产生什么样的应用？答案很明显，电子商务。在进入用PHP和MySQL进行电子商务网站开发之前，作者还详细介绍了电子商务网站的基本特性以及需要特别注意的安全问题。在本书的关于电子商务安全问题部分，读者可以学习几乎所有的网站安全概念和技巧。这对于经验还不够丰富的网站开发人员来说，是不可多得手册。在实战项目介绍中，作者凭借多年的开发经验，给出了几个最具有代表性的例子：购物车，内容管理系统，基于Web的邮件管理系统，邮件列表管理器，Web论坛等。所有这些例子都具有非常高的实用性。设想一下，一个经验不够丰富的开发人员加入到一家电子商务网站，开始新的职业生涯，当他一边工作，一边学习本书时，他会说什么呢？“天啊，怎么书上的内容就是我工作的内容呢！感谢上帝！”。<br />
除了面向开发人员外，作者还考虑到了电子商务网站的系统管理员可能遇到的问题：系统环境的搭建和维护。在本书的附录部分，作者详细介绍了如何在主流的操作系统平台上安装、配置甚至自己编译PHP和MySQL。因为PHP和MySQL开放源码的缘故，企业可能会需要对这些工具和平台进行定制，而本书附录的内容，恰恰为系统管理员提供了这方面的帮助。<br />
综观本书全篇，内容广泛，风格严谨，理论和实践紧密结合。既有详细的概念说明，又有复杂而完整的实例代码，读者能够轻松地将自己所学的理论知识付诸实践。正是由于这个原因，本书适用的读者群非常广发。对于初学者来说，本书可以作为他们的教材和参考书,9对于有丰富经验的PHP和MySQL高手，本书也是一本很好的参考手册，因此本书适用于各个层次的PHP程序员。<br />
当然，本书也存在不一些不足的地方。笔者认为作者应该尝试在本书中加入一些关于PHP和MySQL协作开发与当今最流行的J2EE平台以及.NET平台的比较。这种比较内容将有助于企业和开发人员选择合适的平台和工具。或许，这些内容将在不远的第四版看到。</p>
<blockquote><p><span style="color: #ff0000;">（上部份）<a href="http://www.rayfile.com/files/cac45a91-a4d3-11dc-95c5-00142218fc6e/" target="_blank">下载地址</a></span></p>
<p><span style="color: #ff0000;">（下部分）<a href="http://www.rayfile.com/files/cac59c8f-a4d3-11dc-852b-00142218fc6e/" target="_blank">下载地址</a></span></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://codepy.net/2007/12/07/php-mysql-web-development-chinese-version-pdf.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

