一家之言的经验之谈php+mysql扎实个人基本功


Posted in PHP onMarch 27, 2008

一. 10句话
1.不要依赖register_global=ON的环境,从你刚懂得配置php运行环境甚至尚不明白register_global的ON/OFF会对自己有什么影响的那天起,就应该勇敢地把它设为OFF.
2.写程序前看看怎么用error_reporting.
3.不懂就问本身没错,但你需要在那之前查查手册。
4.当然,你需要懂得使用手册。手册上找不到答案的时候,应该考虑下网络上的搜索引擎。
5.刚学会php+mysql之后,不要叫嚷着要写论坛,要写XXX。要明白,刚学会写汉字并不表示你有能力写诗。
6.在学web编程的时候,你应该先去认识html这个朋友。
7.有点能力后,试着回答新手的问题,不要看到自己懂的而别人不懂就沾沾自喜,扔下一名“简单,那是基本的东西”就走更要不得。
8.思考是一个好习惯,不动手去写就等于空想,什么也没有。
9.写好一段程序,如果觉得很满意,一周后再看一遍,也许你会认为它应该有所改变
10.有空多看看别人的程序,找出他人的不足或优点,自己掂量。
二. 各取所需

1.善于使用“引用”,它能直接影响到程序的效率。

2.善于用三元运算子,可以让程式较精简有效率。
比如:

PHP代码:--------------------------------------------------------------------------------
if ($data[$i]['nickname'])
{
  $nickname = $data[$i]['nickname'];
}
else
{
  $nickname = $data[$i]['ip'];
}

--------------------------------------------------------------------------------

可以写成:

PHP代码:--------------------------------------------------------------------------------
$nickname = $data[$i]['nickname'] ? $data[$i]['nickname'] : $data[$i]['ip'];

--------------------------------------------------------------------------------

3.善于组织if...else...回圈
比如:

PHP代码:--------------------------------------------------------------------------------
$ext_name = strtolower(str_replace(".", "", strrchr($upfilename, ".")));
if (!empty($type))
{
  if (!strpos($type, $ext_name))
  {
    echo "Please upload the file of $type form.";
    exit();
  }
}

--------------------------------------------------------------------------------

上面的代码你应该写成这样:

PHP代码:--------------------------------------------------------------------------------
$ext_name = strtolower(str_replace(".", "", strrchr($upfilename, ".")));
if (!($type==='') && strpos($type, $ext_name)===false)
{
  echo "Please upload the file of $type form.";
  exit();
}

--------------------------------------------------------------------------------

4.尽量让你的代码清淅些
如果写成这样,是比较让人头痛的:

PHP代码:--------------------------------------------------------------------------------
$foo=$_post["foo"];
  $username=$_post["user"]; 
$group=$_POST["group"];
if ($group=="wheel"){
$username=$username."wheel";
}

--------------------------------------------------------------------------------

同样的代码,这样就比较让人看得舒服了:

PHP代码:--------------------------------------------------------------------------------
$foo     = $_post["foo"];
$username = $_post["username"];
$group   = $_POST["group"];
if ($group=="wheel")
{
  $username = $username."wheel";
}

--------------------------------------------------------------------------------

当然,有一定基础后,你应该要写成这样:

PHP代码:--------------------------------------------------------------------------------
$foo     = &$_POST['foo'];
$username = $_POST["group"]!='wheel' ? $_POST["username"] : $_POST["username"].'wheel';

--------------------------------------------------------------------------------

5.编写规范的mysql 语句。
字段和表名用"`"引起来,避免保留字的影响。
如果看到下面这样的一个sql query,会让人比较头痛:

PHP代码:--------------------------------------------------------------------------------
$query="select `flash_comment`.`content` , `flash_comment`.`nickname` , `flash_comment`.`date` , `flash_comment`.`ip` , `product`.`p_name` , `sgflash`.`fid` from `flash_comment` left join `product` on ( `flash_comment`.`p_no` = `product`.`p_no` ) left join `sgflash` on ( `product`.`p_name` = `sgflash`.`f_name` ) where `flash_comment`.`p_no` != '' order by `flash_comment`.`date`";

--------------------------------------------------------------------------------

同样的一个query,写成这样就令人看得明白得多了:

PHP代码:--------------------------------------------------------------------------------
$query = "Select `flash_comment`.`content` , `flash_comment`.`nickname` , `flash_comment`.`date` , `flash_comment`.`ip` , `product`.`p_name` , `sgflash`.`fid` 
      FROM `flash_comment` 
      LEFT JOIN `product` ON ( `flash_comment`.`p_no` = `product`.`p_no` ) 
      LEFT JOIN `sgflash` ON ( `product`.`p_name` = `sgflash`.`f_name` ) 
      Where `flash_comment`.`p_no` != ''
      orDER BY `flash_comment`.`date`";

--------------------------------------------------------------------------------

//
..... 

PHP 相关文章推荐
PHP 替换模板变量实现步骤
Aug 24 PHP
php下使用SimpleXML 处理XML 文件
Feb 27 PHP
PHP禁止页面缓存的代码
Oct 23 PHP
php中可能用来加密字符串的函数[base64_encode、urlencode、sha1]
Jan 16 PHP
用PHP实现弹出消息提示框的两种方法
Dec 17 PHP
destoon实现资讯信息前面调用它所属分类的方法
Jul 15 PHP
跟我学Laravel之视图 & Response
Oct 15 PHP
php 在线导入mysql大数据程序
Jun 11 PHP
微信红包随机生成算法php版
Jul 21 PHP
详解PHP原生DOM对象操作XML的方法
Oct 17 PHP
php微信开发之音乐回复功能
Jun 14 PHP
laravel实现图片上传预览,及编辑时可更换图片,并实时变化的例子
Nov 14 PHP
php部分常见问题总结
Mar 27 #PHP
php+mysql分页代码详解
Mar 27 #PHP
Mysql和网页显示乱码解决方法集锦
Mar 27 #PHP
require(),include(),require_once()和include_once()区别
Mar 27 #PHP
php图片验证码代码
Mar 27 #PHP
几个php应用技巧
Mar 27 #PHP
PHP详细彻底学习Smarty
Mar 27 #PHP
You might like
yii实现model添加默认值的方法(2种方法)
2016/01/06 PHP
php微信公众平台开发之微信群发信息
2016/09/13 PHP
Laravel使用memcached缓存对文章增删改查进行优化的方法
2016/10/08 PHP
php的socket编程详解
2016/11/20 PHP
PHP 返回数组后处理方法(开户成功后弹窗提示)
2017/07/03 PHP
TP5框架实现一次选择多张图片并预览的方法示例
2020/04/04 PHP
jquery中的事件处理详细介绍
2013/06/24 Javascript
javascript中数组的冒泡排序使用示例
2013/12/18 Javascript
windows下安装nodejs及框架express
2015/08/07 NodeJs
jQuery实现仿百度首页滑动伸缩展开的添加服务效果代码
2015/09/09 Javascript
JQuery Mobile 弹出式登录框的实现方法
2016/05/28 Javascript
全面解析Node.js 8 重要功能和修复
2017/06/02 Javascript
JS中的多态实例详解
2017/10/15 Javascript
angular2/ionic2 实现搜索结果中的搜索关键字高亮的示例
2018/08/17 Javascript
Vue 样式切换及三元判断样式关联操作
2020/08/09 Javascript
[19:26]TNC vs EG (BO3)
2018/06/07 DOTA
使用python实现strcmp函数功能示例
2014/03/25 Python
Python写的Socks5协议代理服务器
2014/08/06 Python
python 处理微信对账单数据的实例代码
2019/07/19 Python
pytorch如何冻结某层参数的实现
2020/01/10 Python
python中matplotlib实现随鼠标滑动自动标注代码
2020/04/23 Python
python logging通过json文件配置的步骤
2020/04/27 Python
用HTML5制作一个简单的弹力球游戏
2015/05/12 HTML / CSS
贝嫂喜欢的婴儿品牌,个性化的婴儿礼物:My 1st Years
2017/11/19 全球购物
Lookfantastic日本官网:英国知名护肤、化妆品和头发护理购物网站
2018/04/21 全球购物
寻找迷宫的一条出路,o通路;X:障碍
2016/07/10 面试题
业务经理的岗位职责
2013/11/16 职场文书
化工专业推荐信范文
2013/11/28 职场文书
我们的节日国庆活动方案
2014/08/19 职场文书
解放思想大讨论活动心得体会
2014/09/11 职场文书
学校政风行风自查自纠报告
2014/10/21 职场文书
见习报告的格式
2014/10/31 职场文书
2015年毕业生个人自荐书
2015/03/24 职场文书
2015年大学生党员承诺书
2015/04/27 职场文书
生产实习心得体会范文
2016/01/22 职场文书
吉利入股戴姆勒后smart“长大了”
2022/04/21 数码科技