澳大利亚新闻 澳洲留学移民 澳洲留学移民精华 澳大利亚广播电台 澳大利亚英语讲座 雅思听力 雅思口语 雅思阅读 雅思写作 澳大利亚贴图 新西兰论坛 澳大利亚招聘 澳大利亚租房 澳大利亚旅游 澳大利亚黄页 澳大利亚宠物 澳大利亚文学 澳大利亚美食 堪培拉,Canberra论坛 悉尼,Sydney论坛 墨尔本,Melbourne论坛 布里斯本,Brisbane论坛 悉尼大学,USYD Forum 新南威尔士大学,UNSW CSA Forum 麦觉理大学,MQ Forum 悉尼科技大学,UTS Forum TAFE 澳洲高中,Taylors College论坛 墨尔本大学联盟 Adelaide大学联盟 昆士兰大学联盟

一家之言的经验之谈php+mysql扎实个人基本功(页 1) - 澳洲网页设计 -

澳洲中文网 » 澳洲网页设计 » 一家之言的经验之谈php+mysql扎实个人基本功
悉尼专业美发
2006-9-2 01:10 lovphp
一家之言的经验之谈php+mysql扎实个人基本功

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

一. 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.善于用三元运算子,可以让程式较精简有效率。
比如:


CODE:<?php
if ($data[$i]['nickname'])
{
    $nickname =  $data[$i]['nickname'];
}
else
{
    $nickname =  $data[$i]['ip'];
}
?>
可以写成:


CODE:<?php
$nickname =  $data[$i]['nickname'] ? $data[$i]['nickname'] : $data[$i]['ip'];
?>
3.善于组织if...else...回圈
比如:


CODE:<?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();
    }
}
?>
上面的代码你应该写成这样:


CODE:<?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.尽量让你的代码清淅些
如果写成这样,是比较让人头痛的:


CODE:<?php
$foo=$_post["foo"];
   $username=$_post["user"];
$group=$_POST["group"];
if ($group=="wheel"){
$username=$username."wheel";
}
?>
同样的代码,这样就比较让人看得舒服了:


CODE:<?php
$foo      = $_post["foo"];
$username = $_post["username"];
$group    = $_POST["group"];
if ($group=="wheel")
{
    $username = $username."wheel";
}
?>
当然,有一定基础后,你应该要写成这样:


CODE:<?php
$foo      = &$_POST['foo'];
$username =  $_POST["group"]!='wheel' ? $_POST["username"] : $_POST["username"].'wheel';
?>
5.编写规范的mysql 语句。
字段和表名用"`"引起来,避免保留字的影响。
如果看到下面这样的一个sql query,会让人比较头痛:


CODE:<?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,写成这样就令人看得明白得多了:


CODE:<?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`";
?>
//

[[i] 本帖最后由 lovphp 于 2006-9-2 01:16 编辑 [/i]]

2006-11-24 19:44 xjlf123
支持 下了漫漫的消化~~~~~~~~~~~


2007-1-11 04:14 云消雾散
eclipse php 解决所有问题
与其说练习扎实基本功不如说是浪费时间在一项技术上

2007-5-6 00:10 cc.yuki
我比較支持 lovphp 的說法

2007-5-9 20:09 javaajax
很久没有上来看,老的帐户不能用了,用新的上来踩下脚印。

2007-8-31 16:56 kr2000
补充一点,多用用opensource的软件,看看别人的系统结构,你会发现你进步的很快. 或许你会说,论坛,cms,购物车也不是那么难嘛.

2007-10-1 12:49 flyspirit
同意,看代码是学习编程技术的王道.

2007-10-1 22:57 bibilili
一看就眼晕

2007-12-6 06:03 4eyesnb
看不懂PHP....路过:monkey4

2008-1-19 23:03 markyao
一直想学 php +mysql  就是入不了门

2008-2-5 12:09 n3c
我买了本php+mysql
一个月可以搞定么

2008-5-27 11:45 烧饼
我以在这个领域十年的工作经验说句话:掌握编程思想才是王道,代码好看否都是表面功夫

2008-8-23 23:31 twalex
编程思想和代码编写习惯是基础,当然要稳固。

不过你真的想学,就只能不断去看别人的代码,不断地去写自己的代码,你才能真正学会。

程序员最值钱的就是经验,而经验只有不断累计代码的编写,之后你才可以写出更加robust和secure的程序。

ps:看代码的话,可以考虑参考流行的架构,一是看架构设计,一是看代码编写的pattern,养成良好的coding习惯,一是看安全设计

页: [1]


澳洲中文网模特

Powered by 澳大利亚中文网 5.5.0  © 2005-2007 澳大利亚论坛