这几天给国外的一个站点做个小项目,有机会看到了全站源代码。
是php+pgsql,我已经很久没用过php了,原来本就不熟练。
看了老外的代码,很有收益,觉得很多方面都获益非浅。
全站结构非常合理,完全是面向对象的方式。
我觉得,相比asp,php是为程序员设计的语言,而asp,大概只能称为脚本,.net就进步多了。
安全性上,实现程序和界面的分离。
核心的类文件和全局文件都提到了根目录的外面,这一点让我看了好久才明白,原来还可以这样来做,呵呵~~,学到一招了
数据库方面设计的更是精巧,相比我看到的一些国内数据库,简直没法比。
也许pgsql在某些方面很出色,我没有接触过,不知道。
数据库本身的函数设计这应该是数据结构优化的一个重要手段,我想很多人没有用过。
数据库本身就是一个大的系统,太需要花时间学习了。
以下是一条sql语句:
$sql = 'select u.login, u.id, _get_score(u.id) as score, min(px.id) as pic_id
FROM users as u
inner join _profiles as p on p.user_id=u.id
inner join pictures as px on px.profile_id=u.id
inner join contest_pictures as cp on px.id=cp.picture_id
WHERE cp.contest_period='.$curr_contest.' and p.gender='.$id_gender.
'AND
( cp.primary_pic OR px.profile_id not in
(select u.id from users u inner join pictures as px on px.profile_id=u.id
inner join contest_pictures as cp on px.id=cp.picture_id and cp.primary_pic
)
)
GROUP BY u.id, u.login
ORDER BY score desc LIMIT '.$PAGE_size.' OFFSET '.(($PAGE_curr-1)*$PAGE_size);
my God!!
是php+pgsql,我已经很久没用过php了,原来本就不熟练。
看了老外的代码,很有收益,觉得很多方面都获益非浅。
全站结构非常合理,完全是面向对象的方式。
我觉得,相比asp,php是为程序员设计的语言,而asp,大概只能称为脚本,.net就进步多了。
安全性上,实现程序和界面的分离。
核心的类文件和全局文件都提到了根目录的外面,这一点让我看了好久才明白,原来还可以这样来做,呵呵~~,学到一招了
数据库方面设计的更是精巧,相比我看到的一些国内数据库,简直没法比。
也许pgsql在某些方面很出色,我没有接触过,不知道。
数据库本身的函数设计这应该是数据结构优化的一个重要手段,我想很多人没有用过。
数据库本身就是一个大的系统,太需要花时间学习了。
以下是一条sql语句:
$sql = 'select u.login, u.id, _get_score(u.id) as score, min(px.id) as pic_id
FROM users as u
inner join _profiles as p on p.user_id=u.id
inner join pictures as px on px.profile_id=u.id
inner join contest_pictures as cp on px.id=cp.picture_id
WHERE cp.contest_period='.$curr_contest.' and p.gender='.$id_gender.
'AND
( cp.primary_pic OR px.profile_id not in
(select u.id from users u inner join pictures as px on px.profile_id=u.id
inner join contest_pictures as cp on px.id=cp.picture_id and cp.primary_pic
)
)
GROUP BY u.id, u.login
ORDER BY score desc LIMIT '.$PAGE_size.' OFFSET '.(($PAGE_curr-1)*$PAGE_size);
my God!!
回复Comments
作者:
{commentrecontent}