一家之言的经验之谈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写的采集程序
Mar 16 PHP
PHP求小于1000的所有水仙花数的代码
Jan 10 PHP
PHP中全局变量global和$GLOBALS[]的区别分析
Aug 06 PHP
php和javascript之间变量的传递实现代码
Dec 19 PHP
php求正负数数组中连续元素最大值示例
Apr 11 PHP
PHP实现显示照片exif信息的方法
Jul 11 PHP
PHP向socket服务器收发数据的方法
Jan 24 PHP
浅谈PHP中output_buffering
Jul 13 PHP
php nginx 实时输出的简单实现方法
Jan 21 PHP
PHP7如何开启Opcode打造强悍性能详解
May 11 PHP
使用Git实现Laravel项目的自动化部署
Nov 24 PHP
phpcmsv9.0任意文件上传漏洞解析
Oct 20 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
用PHP写的MySQL数据库用户认证系统代码
2007/03/22 PHP
MySQL修改密码方法总结
2008/03/25 PHP
简单的移动设备检测PHP脚本代码
2011/02/19 PHP
Ubuntu中搭建Nginx、PHP环境最简单的方法
2015/03/05 PHP
Yii框架函数简单用法分析
2019/09/09 PHP
Laravel 添加多语言提示信息的方法
2019/09/29 PHP
jquery获取下拉列表的值为null的解决方法
2011/03/18 Javascript
提高javascript效率 一次判断,而不要次次判断
2012/03/30 Javascript
jQuery 在光标定位的地方插入文字的插件
2012/05/10 Javascript
js自动下载文件到本地的实现代码
2013/04/28 Javascript
jquery特效 幻灯片效果示例代码
2013/07/16 Javascript
jQuery中size()方法用法实例
2014/12/27 Javascript
Jquery-1.9.1源码分析系列(十一)之DOM操作
2015/11/25 Javascript
分享使用AngularJS创建应用的5个框架
2015/12/05 Javascript
jquery form表单获取内容以及绑定数据
2016/02/24 Javascript
js点击返回跳转到指定页面实现过程
2020/08/20 Javascript
jQuery原理系列-css选择器的简单实现
2016/06/07 Javascript
使用Vue如何写一个双向数据绑定(面试常见)
2018/04/20 Javascript
this.$toast() 了解一下?
2019/04/18 Javascript
[01:30]我们共输赢 完美世界城市挑战赛开启全新赛季
2019/04/19 DOTA
Python2中的raw_input() 与 input()
2015/06/12 Python
Python学习笔记之open()函数打开文件路径报错问题
2018/04/28 Python
老生常谈python中的重载
2018/11/11 Python
Python获取航线信息并且制作成图的讲解
2019/01/03 Python
Python利用全连接神经网络求解MNIST问题详解
2020/01/14 Python
Python 无限级分类树状结构生成算法的实现
2021/01/21 Python
纯css3显示隐藏一个div特效的具体实现
2014/02/10 HTML / CSS
美国设计师精美珠宝购物网:Netaya
2016/08/28 全球购物
Seavenger官网:潜水服、浮潜、靴子和袜子
2020/03/05 全球购物
公务员总结性个人自我评价
2013/12/05 职场文书
求职信范文怎么写
2014/01/29 职场文书
文明宿舍获奖感言
2014/02/07 职场文书
英语课前三分钟演讲稿(6篇)
2014/09/13 职场文书
全国法制宣传日活动总结
2015/05/05 职场文书
python对文档中元素删除,替换操作
2022/04/02 Python
MYSQL中文乱码问题的解决方案
2022/06/14 MySQL