- 于2016-11-12首次整理
1.该项目总体的思路整理:
数据库<----->PHP程序<------>用户界面
简单的说就是上边的这三者之间的交互:
(1)利用PHP程序读取数据库数据显示在用户界面上
(2)说在界面上获取数据信息写入到数据库
应用的主要技术:
HTML+CSS前端页面制作
JS辅助处理信息或验证信息
PHP处理、存储、读取数据
PS:对程序的理解(个人理解,不足之后补充)->不管什么样的语言最终要实现的就是,如果高效、安全、合理的处理、存储、读取数据,
并传递给前端界面,使得前端界面做出合理的显示,完成交互。其实,最终的目的就是对数据(对象)的操作
2.必须考虑的问题,系统的安全性、合理性
(1)数据的安全
不能让不合法的数据存入数据库-----从用户界面获取的数据要做合理的处理,然后再存入数据库
这里有两个问题: ①什么是不合法的数据②怎么处理不合法的数据
这两个问题是以后学习的时候重点考虑的地方
(2)系统的合理性
通俗的讲:系统中的每一个步骤(对象)都要有自己的身份或者说每一次访问都要可控(验证身份)。比如,不能在不登陆的情况下进行帖子的发布,或者
系统的中的每一个文件都要进行有区别的调用,不能随意调用
3.该项目细节分析整理:
(1)防止恶意调用----'上锁与开锁'
$bool = defined(string $name) — 检查某个名称的常量是否存在<----->上锁过程,检查调用者是否有调用许可证
$bool = define(string $name, $string $value[, $bool true-常量对大小写不敏感])<------>开锁过着,赋予调用者许可证(其实就是定义一个常量)
(2)注重性能----这个问题是个大问题,现在只能列出,在以后学习中注意(可以用执行耗时来衡量性能)
例如:绝对路径要比相对路径访问的效率更高
函数:mixed microtime()----本函数以 "msec sec" 的格式返回一个字符串,表示当前的时间。
int sleep(int $seconds) ----- 程序延迟执行指定的 seconds
的秒数,可以用作来测试。成功返回0
代码:
'; echo '程序暂停1秒', sleep(1), ''; echo '结束时间结点时间:', microtime(), ''; ?>
结果:
可以用explode()函数分解microtime()得到的数据
代码:
'; echo '----------------------', ''; //分解时间 $startArr = explode(' ',$startTime);//以空格进行分割 var_dump($startArr); echo '----------------------', ''; echo '程序暂停1秒', sleep(1), ''; echo '----------------------', ''; echo '结束时间结点时间:', $endTime = microtime(), ''; echo '----------------------', ''; //分解时间 $endArr = explode(' ',$endTime);//以空格进行分割 var_dump($endArr);?>
结果:
(3)PHP中全局常量(9个)-----能够快速的获取服务器的相关信息(未深入研究)
-
-
- $GLOBALS
- $_SERVER
- $_GET
- $_POST
- $_FILES
- $_COOKIE
- $_SESSION
- $_REQUEST
- $_ENV
-
(4)JS对数据的处理或验证-----整理于JS篇
(5)二维码、分页等会分别单独整理
4.总结
程序就是处理数据的,以这个中心展开学习,切记,勿忘!!!
程序的重用性,可移植性是一个很重要的问题,要时刻记住,尽量应用!!!