More Related Content
Similar to Demo review (20)
Demo review
- 1. Demo Review
Part-1
仙羽
12年3月19日星期一
- 2. PHP
起始符和结束符:<?php ?>
文件末尾的?>结束符不是必须的
不要使用short_tag <? ?> <?=$val;?>
__是demo-dev-lib中定义的快捷输出函数
12年3月19日星期一
- 3. PHP
变量和作用域:数据类型
12年3月19日星期一
- 4. PHP
变量和作用域:类型转换及相关
12年3月19日星期一
- 5. PHP
变量和作用域:预定义变量
12年3月19日星期一
- 6. PHP
变量和作用域:作用域
函数内部不能引用外部的变量
预定义变量、常量除外
使用global声明的变量除外
函数内可以定义静态变量,其值函数执行后不消失
文件中定义的变量在include、require的文件中也生效
12年3月19日星期一
- 8. PHP
运算符
和javascript基本⼀一样
$a = $a || $b;
False == ‘’,‘0’,0,0.0,array(), Null
== 值等于
=== 全等于
字符串连接 . .=
数组存取: [下标]
12年3月19日星期一
- 13. PHP
学习资源
code.google.com/p/phpdoc-zh
12年3月19日星期一
- 14. tm-dev-lib
服务器要求
1.php5.3+
2.开启以下拓展:curl、mbstring、mysql、json
3.将tm-dev-lib路径添加到include_path中
12年3月19日星期一
- 15. tm-dev-lib
Assets
静态资源服务
CategoryModel DPL
类目模型 标准样式库
ItemModel phpcommon
商品模型 页头页尾
Model View
MySQL 模型 视图
Input
Action ORG 输入获取
控制器 公共类库
tmdev.php Common Function
公共函数库
入口文件
12年3月19日星期一
- 16. tm-dev-lib
a.tbcdn.cn
1.支持combo,其中??为分隔符
2.如果文件不存在(含combo),则发送404
3.不寻找未压缩版本
4.头信息中不包含编码格式,包括文件类型
5.每个文件都可以有查询串(?部分)
12年3月19日星期一
- 17. tm-dev-lib
tm-dev-lib assets
1.以a.tbcdn.cn为蓝本
2.支持less、coffeescript、markdown实时解析
3.支持指定不同的分支目录
4.支持文件缓存,当本地文件不存在时,自动从
指定的服务器获取文件,并能侦测404状态
5.约定优于配置,没有配置页面(ucool)
12年3月19日星期一
- 18. tm-dev-lib
assets.local.tmall.net
开发者本地机器 svn up
svn ci
taobao assets
server
svn up
svn ci
挂载共享目录
assets.demo.tmall.net
12年3月19日星期一
- 20. tm-dev-lib
assets note
1.assets只支持js、css文件(含less、coffee)
2.getAssetsLink支持任意文件
3.assets combo服务支持js、css的combo
4.可以用本地的assets combo代理日常、线上
assets
5.建议在本地启用assets服务进行开发,编写完毕
后再同步到demo服务器
6.demo服务器上assets方法固定使用
assets.demo.tmall.net作为assets服务
12年3月19日星期一
- 21. tm-dev-lib
assets 管理
目前的状态:令人疑惑,容易出错
scm like + crontab release?
12年3月19日星期一
- 22. tm-dev-lib
文件引入
dpl header、bodyHeader、footer
调用dpl库 调用php页头页尾
render($file, $data)
引入指定文件
12年3月19日星期一
- 23. tm-dev-lib
文件引入 dpl和php页头页尾
应用优先级高于框架
12年3月19日星期一
- 24. tm-dev-lib
文件引入 数据传递
1、通过assign($name, $data)向模板赋值
assign方法可以突破作用域的限制
2、通过方法的参数传值,建议使用数组的形式
12年3月19日星期一
- 25. tm-dev-lib
跨文件使用变量 突破作用域限制
在模板内部获取View实例,调用assign方法赋值
将变量声明为global
使用C方法
12年3月19日星期一
- 26. tm-dev-lib
引入TMS区块
importTMS($file)
目前只适合于引入没有php代码的区块
12年3月19日星期一
- 27. tm-dev-lib
索引机制
http://demo.tmall.net/
12年3月19日星期一
- 29. tm-dev-lib
索引机制 如何生成
svn hook : post-commit
svn update 更新web目录
svnlook changed 获取变更列表
分别处理目录和文件变动,生成sql语句并执行
遇到@noindex标记:删除索引
insert into .... on duplicate key update...
12年3月19日星期一
- 31. tm-dev-lib
后续
svn diff、svn log
使开发方便地看到更改
12年3月19日星期一
- 34. end
thank you
12年3月19日星期一