forked from netkiller/netkiller.github.io
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcoding.html
More file actions
executable file
·132 lines (116 loc) · 9.13 KB
/
coding.html
File metadata and controls
executable file
·132 lines (116 loc) · 9.13 KB
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
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>第 13 章 编码风格</title><link rel="stylesheet" type="text/css" href="..//docbook.css" /><meta name="generator" content="DocBook XSL Stylesheets V1.78.1" /><meta name="keywords" content=", , , " /><link rel="home" href="../index.html" title="Netkiller DevOps 手札" /><link rel="up" href="index.html" title="部分 II. 开发篇(Development)" /><link rel="prev" href="ch12.html" title="第 12 章 每周例会" /><link rel="next" href="coding.string.html" title="13.2. String" /></head><body><a xmlns="" href="http://www.netkiller.cn/">Home</a> |
<a xmlns="" href="http://netkiller.github.io/">简体中文</a> |
<a xmlns="" href="http://netkiller.sourceforge.net/">繁体中文</a> |
<a xmlns="" href="/journal/index.html">杂文</a> |
<a xmlns="" href="/search.html">Search</a> |
<a xmlns="" href="http://netkiller-github-com.iteye.com/">ITEYE 博客</a> |
<a xmlns="" href="http://my.oschina.net/neochen/">OSChina 博客</a> |
<a xmlns="" href="https://www.facebook.com/bg7nyt">Facebook</a> |
<a xmlns="" href="http://cn.linkedin.com/in/netkiller/">Linkedin</a> |
<a xmlns="" href="mailto:netkiller@msn.com">Email</a><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">第 13 章 编码风格</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch12.html">上一页</a> </td><th width="60%" align="center">部分 II. 开发篇(Development)</th><td width="20%" align="right"> <a accesskey="n" href="coding.string.html">下一页</a></td></tr></table><hr /></div><table xmlns=""><tr><td><iframe src="http://ghbtns.com/github-btn.html?user=netkiller&repo=netkiller.github.com&type=watch&count=true&size=large" height="30" width="170" frameborder="0" scrolling="0" style="width:170px; height: 30px;" allowTransparency="true"></iframe></td><td><iframe src="http://ghbtns.com/github-btn.html?user=netkiller&repo=netkiller.github.com&type=fork&count=true&size=large" height="30" width="170" frameborder="0" scrolling="0" style="width:170px; height: 30px;" allowTransparency="true"></iframe></td><td><iframe src="http://ghbtns.com/github-btn.html?user=netkiller&type=follow&count=true&size=large" height="30" width="240" frameborder="0" scrolling="0" style="width:240px; height: 30px;" allowTransparency="true"></iframe></td></tr></table><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a id="coding"></a>第 13 章 编码风格</h2></div></div></div><div class="toc"><p><strong>目录</strong></p><dl class="toc"><dt><span class="section"><a href="coding.html#coding.file">13.1. php 文件</a></span></dt><dd><dl><dt><span class="section"><a href="coding.html#idm45956306864592">13.1.1. 格式与 编码</a></span></dt><dt><span class="section"><a href="coding.html#idm45956306862864">13.1.2. 循环嵌套</a></span></dt><dt><span class="section"><a href="coding.html#idm45956306860720">13.1.3. 取出行尾的空格以及多余的换行符</a></span></dt><dt><span class="section"><a href="coding.html#idm45956306859904">13.1.4. php 标签</a></span></dt><dt><span class="section"><a href="coding.html#idm45956306858304">13.1.5. 头部注释</a></span></dt></dl></dd><dt><span class="section"><a href="coding.string.html">13.2. String</a></span></dt><dt><span class="section"><a href="coding.db.html">13.3. Database</a></span></dt><dd><dl><dt><span class="section"><a href="coding.db.html#idm45956306852272">13.3.1. 结果集使用注意事项</a></span></dt><dt><span class="section"><a href="coding.db.html#idm45956306852144">13.3.2. 索引</a></span></dt><dt><span class="section"><a href="coding.db.html#idm45956306846368">13.3.3. 缓存</a></span></dt></dl></dd></dl></div><pre class="screen">
https://code.google.com/p/google-styleguide/
http://lxr.linux.no/linux/Documentation/CodingStyle
http://perldoc.perl.org/perlstyle.html
http://www.gnu.org/prep/standards/
</pre><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="coding.file"></a>13.1. php 文件</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="idm45956306864592"></a>13.1.1. 格式与 编码</h3></div></div></div><p>使用 UNIX 风格换行, 请在你的编辑器内调整</p><pre class="screen">
UNIX (LF或"\n")
MAC OS (CR 或"\r")
Windows CRLF \r\n
</pre><p>源码文件使用 UTF-8</p><p>有些IDE环境 UTF-8 BOM</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="idm45956306862864"></a>13.1.2. 循环嵌套</h3></div></div></div><p>if, while, for, foreach, do ... loop, switch... 等的嵌套必须小于等于3层</p><p>如下面的例子,可读性极差。</p><pre class="screen">
if (xxx){
if (xxx){
if(xxx){
if(xxx){
if(xxx){
}
}
}
if(xxx){
if(xxx){
}
}
}
if (xxx){
if(xxx){
if(xxx){
}
}
if(xxx){
if(xxx){
}
}
}
}
</pre><p>加以改造</p><pre class="screen">
func aaa(p){
if(p){
if(xxx){
}
}
}
func bbb(b){
if(b){
if(xxx){
if(xxx){
}
}
}
}
if(xxx){
aaa(xxx)
}
if(b){
bbb(b)
} </pre></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="idm45956306860720"></a>13.1.3. 取出行尾的空格以及多余的换行符</h3></div></div></div><p>一个空格占用一个字节,换行符Window是两个字节\r\n, Unix与Mac占用一个字节</p></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="idm45956306859904"></a>13.1.4. php 标签</h3></div></div></div><p>禁止这样使用</p><pre class="screen">
<?
...
?>
</pre><p>正确的使用方法</p><pre class="screen">
<?php
...
or
<?php
...
?>
</pre></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a id="idm45956306858304"></a>13.1.5. 头部注释</h3></div></div></div><pre class="screen">
<?php
/**
* Project Name
*
* @author $Author: netkiller $
* @copyright Copyright (c) 2012 Company
* @version $Id: chapter.coding.xml 584 2013-05-15 05:13:17Z netkiller $
*/
<?php
/**
* Project Name
*
* @author $Author: netkiller $
* @license GNU General Public License 2.0
* @version $Id: chapter.coding.xml 584 2013-05-15 05:13:17Z netkiller $
*/
</pre></div></div></div><div xmlns="" id="disqus_thread"></div><script xmlns="" type="text/javascript">
/* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
//if(document.domain == 'netkiller.github.com'){
var disqus_shortname = 'netkiller'; // required: replace example with your forum shortname
//}else{
//var disqus_shortname = 'neochan';
//}
/* * * DON'T EDIT BELOW THIS LINE * * */
(function() {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})();
</script><noscript xmlns="">Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript><a xmlns="" href="http://disqus.com" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a><br xmlns="" /><script xmlns="" type="text/javascript" id="clustrmaps" src="//cdn.clustrmaps.com/map_v2.js?u=r5HG&d=9mi5r_kkDC8uxG8HuY3p4-2qgeeVypAK9vMD-2P6BYM"></script><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch12.html">上一页</a> </td><td width="20%" align="center"><a accesskey="u" href="index.html">上一级</a></td><td width="40%" align="right"> <a accesskey="n" href="coding.string.html">下一页</a></td></tr><tr><td width="40%" align="left" valign="top">第 12 章 每周例会 </td><td width="20%" align="center"><a accesskey="h" href="../index.html">起始页</a></td><td width="40%" align="right" valign="top"> 13.2. String</td></tr></table></div><script xmlns="">
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-11694057-1', 'auto');
ga('send', 'pageview');
</script><script xmlns="" type="text/javascript">
var _bdhmProtocol = (("https:" == document.location.protocol) ? " https://" : " http://");
document.write(unescape("%3Cscript src='" + _bdhmProtocol + "hm.baidu.com/h.js%3F997cd4a7320a82d72cb74d179118f697' type='text/javascript'%3E%3C/script%3E"));
</script><script xmlns="" type="text/javascript" src="/js/q.js"></script></body></html>