uchome的二次开发有感
来源:互联网 发布:在虚拟机中安装ubuntu 编辑:程序博客网 时间:2024/05/16 04:59
网络上关于uchome的二次开发的讨论和研究蛮多,我也是站在这些前人的肩上走过来的。以前是写c++,做应用程序的,从一个web开发和php的门外汉到基本了解web开发方法,也算是经过了一个艰难的时期。不过总体来说,还算顺利,很感谢上一个公司项目给我的帮助 - 用c++写得cgi,让我对http,html,json,javascript,xml+xsl,flash都有一定的基础。
我想,用c写过web程序的人,在理解上可能比直接写php,jsp,asp的朋友来来的深刻。因为有很多web程序的基础构件要靠你自己来完善,但是现在主流的服务器后台语言框架都帮你做了,比如说:get/post的数据编解码,http头,url重定向,缓存机制,session。我不算是精通,但从c写得cgi角度来讲,也算是入门了吧。总之,如果有对web开发原理感兴趣的朋友,可以考虑用c写写cgi。呵呵,扯远了。
对uchome二次开发,我认为简单来说必须掌握以下几点:
网站入口文件需要include common.php
比如space.php, cp.php, do.php,作为网站入口,需要初始化很多全局变量,比如$_SGLOBAL
在入口php之后,是具体的模块php,具体的分发机制在入口文件中实现
你需要了解其原理是url中‘ac'或者'do'字段指定的内容,比如cp.php?ac=profile,那么打开的就是模块文件就是cp_profile
然后你需要掌握uchome里面全局变量的作用
这里有很多朋友都有说过,你可以google以下,我用的比较多得可就是$_SGLOBAL['db']和$space
调试方法
你最好有个支持debug的浏览器,我用的是google chrome,你可以用firefox。另外uchome里面的API showmessage()也很有用,可以查看很多变量。当你不清楚某一个全局变量到底是什么东西时,你可以用print_r在模板里面打出来,比如<!--{eval print_r($space)}-->,或者直接在php文件中用showmessage(print_r($space,TRUE))
最后讲一下对uc_client的扩展
uchome主要使用了php的call_user_func()函数,在uc_clinet/client.php中,一般指向uc_api_mysql,而uc_api_mysql()函数则负责分发到uc_client/control中的on*函数,再由on*函数call到uc_client/model中操作uc数据库。
末了,欢迎大家来我的网站“乐上网”,这是个基于uchome二次开发的SNS。主要功能是帮助你找到和你兴趣爱好相同的朋友,这是一个专门针对“兴趣爱好”的SNS,在乐上网,兴趣爱好不再是自我简介中的一段话,而是可选项。现在网站还比较朴素,但基本功能已经具备,希望大家来提点意见!
- uchome的二次开发有感
- UCHOME二次开发
- uchome二次开发必须知道的通用方法
- uchome二次开发记录
- uchome 二次开发 AJAX解析
- uchome二次开发参考资料汇总
- UcHome二次开发调试技巧
- UCHome二次开发 规范
- uchome二次开发 数据库操作
- UCHome二次开发 规范
- 第十三章:【UCHome二次开发】与UCenter的交互解析
- 第一章:【UCHome二次开发】uchome文件体系介绍
- 第十四章:【UCHome二次开发】uchome通用方法
- UCHome二次开发:uchome文件体系介绍
- 第一章:【UCHome二次开发】uchome文件体系介绍
- 【UCHome二次开发】UCHome模板语法…
- uchome 二次开发数据库表结构
- 第二章:【UCHome二次开发】基础
- Ubuntu配置tftp和nfs服务的步骤
- oracle查看表结构的几种方法
- 对于mysql数据库引擎myISAM不支持事务的了解
- 推荐5个免费项目管理工具
- 虚拟机Linux网络设置
- uchome的二次开发有感
- .NET压缩文件 (可多层目录)
- java string.split()函数的c/c++两种实现——strtok_r及string.find()
- 判断数据库是否登录成功
- (JQuery)双击修改table里面的值
- 目前看到的最好的mfc开发activeX入门教材
- VS2003"无法启动调试 没有正确安装调试器"的解决方法
- Linux之U盘挂载
- 用Admin而不是来宾的方式登陆局域网中的机器