經驗之談php mysql紮實個人基本功

2021-03-31 08:56:29 字數 2925 閱讀 5403

家之言的經驗之談php+mysql紮實個人基本功

一. 10句話

1.不要依賴register_global=on的環境,從你剛懂得配置php執行環境甚至尚不明白register_global的on/off會對自己有什麼影響的那天起,就應該勇敢地把它設為off.

2.寫程式前看看怎麼用error_reporting.

3.不懂就問本身沒錯,但你需要在那之前查查手冊。

4.當然,你需要懂得使用手冊。手冊上找不到答案的時候,應該考慮下網路上的搜尋引擎。

5.剛學會php+mysql之後,不要叫嚷著要寫論壇,要寫***。要明白,剛學會寫漢字並不表示你有能力寫詩。

6.在學web程式設計的時候,你應該先去認識html這個朋友。

7.有點能力後,試著回答新手的問題,不要看到自己懂的而別人不懂就沾沾自喜,扔下一名「簡單,那是基本的東西」就走更要不得。

8.思考是乙個好習慣,不動手去寫就等於空想,什麼也沒有。

9.寫好一段程式,如果覺得很滿意,一周後再看一遍,也許你會認為它應該有所改變

10.有空多看看別人的程式,找出他人的不足或優點,自己掂量。

二. 各取所需

1.善於使用「引用」,它能直接影響到程式的效率。

2.善於用三元運運算元,可以讓程式較精簡有效率。

比如:

code:

[copy to clipboard]

if ($data[$i]['nickname'])

else

可以寫成:

code:

[copy to clipboard]

$nickname =  $data[$i]['nickname'] ? $data[$i]['nickname'] : $data[$i]['ip'];

3.善於組織if...else...迴圈

比如:code:

[copy to clipboard]

$ext_name = strtolower(str_replace(".", "", strrchr($upfilename, ".")));

if (!empty($type))}

上面的**你應該寫成這樣:

code:

[copy to clipboard]

$ext_name = strtolower(str_replace(".", "", strrchr($upfilename, ".")));

if (!($type==='') && strpos($type, $ext_name)===false)

4.盡量讓你的**清淅些

如果寫成這樣,是比較讓人頭痛的:

code:

[copy to clipboard]

$foo=$_post["foo"];$username=$_post["user"];

$group=$_post["group"];

if ($group=="wheel")

同樣的**,這樣就比較讓人看得舒服了:

code:

[copy to clipboard]

$foo      = $_post["foo"];

$username = $_post["username"];

$group    = $_post["group"];

if ($group=="wheel")

當然,有一定基礎後,你應該要寫成這樣:

code:

[copy to clipboard]

$foo      = &$_post['foo'];

$username =  $_post["group"]!='wheel' ? $_post["username"] : $_post["username"].'wheel';

5.編寫規範的mysql 語句。

欄位和表名用"`"引起來,避免保留字的影響。

如果看到下面這樣的乙個sql query,會讓人比較頭痛:

code:

[copy to clipboard]

$query="select `flash_***ment`.`content` , `flash_***ment`.`nickname` , `flash_***ment`.`date` , `flash_***ment`.`ip` , `product`.`p_name` , `sgflash`.`fid` from `flash_***ment` left join `product` on ( `flash_***ment`.`p_no` = `product`.`p_no` ) left join `sgflash` on ( `product`.`p_name` = `sgflash`.`f_name` ) where `flash_***ment`.`p_no` != '' order by `flash_***ment`.`date`";

同樣的乙個query,寫成這樣就令人看得明白得多了:

code:

[copy to clipboard]

$query = "select `flash_***ment`.`content` , `flash_***ment`.`nickname` , `flash_***ment`.`date` , `flash_***ment`.`ip` , `product`.`p_name` , `sgflash`.`fid`

from `flash_***ment`

left join `product` on ( `flash_***ment`.`p_no` = `product`.`p_no` )

left join `sgflash` on ( `product`.`p_name` = `sgflash`.`f_name` )

where `flash_***ment`.`p_no` != ''

order by `flash_***ment`.`date`";

面試經驗之談

這裡是2017年11月7日,鄙人不才,17年應屆畢業,經驗不足,十一之後來到上海找工作,目前一無所獲。無奈,今天又逛了一趟培訓機構,看著和自己年齡相仿同學在前台焦急等待的時候感觸頗深,為什麼總是接到培訓機構的邀請,而不見想象之中offer也看不見期待的公司的回覆。剛好有哥哥姐姐在上海這邊,所以借住在...

併發控制經驗之談

多年使用鎖的經驗說明,我們很難駕輕就熟地使用鎖。併發的管理本來就非常棘手,而許多使用方法都可能導致錯誤。本文將總結一些併發控制中容易導致錯誤的東西。不明確的規則 恰當的鎖定模式需要清晰和明確的規則。當我們建立乙個可被並行訪問的物件時,應該同時定義用來控制訪問的鎖。鎖定模式必須在一開始就安排好,否則其...

幾次面試經驗之談

幾次面試經驗之談 文 飛天含雪 從十一假期結束到現在,近乙個月了,大大小小的面試總共參加了六七場,對面試有些感想,筆者知道網上談論該話題也多,但要麼片面,要麼扯淡,不僅達不到目的,反而有誤導民眾之嫌,筆者今日將經驗之談一一和盤托出,希望大家能有所借鑑。一 首當其衝 者 凶多吉少 收拾殘局 者 漁翁得...