写在学完 Laravel 之后
2017-04-09
这应该是大多数PHPer最为推崇的一套框架了吧,不少地方把它定位为一套简洁、优雅的PHP Web开发框架,期间并无任何不妥。
从2012年开始接触PHP以来,我最早采用的是原生的写法,从头到尾自己打码码出一套我想要的,亦或是客户需要的程序 ,代码简单明了,需要什么便想办法实现什么,虽然在一开始的时候写起来十分顺手,但到了后期,回头一看,不少东西自己都已经记不清楚,更别说交给别人来维护了。一直有学习一门流行PHP框架的打算,之前接触过了Slim-Framework不过对它的好感莫过于它的简洁,今年寒假回家前,在学校工作室老师的推荐以及我多年蹲守在拉钩等招聘类APP的观察,还是决定入laravel的坑了。
学习的过程倒也是挺一帆风顺的。一次偶然的情况,进入了laravel-china,购买了他们的在线书籍教程在头一个星期里粗略地看了基本的用法(那本教程真的细致不到哪儿去,认真脸),之后一段时间内临近春节,加上自己别的外包项目,拖沓了一段时间,直到2月份开学了军训,才又拾起了被我遗弃在角落的laravel。顶着军训期间的劳累,我选择了另一种方式,坚持每天在网易云课堂看一个高品质的laravel实战视频,大约每节课10分钟左右,军训结束也便看完了十几节的内容。
后来我便开始了实践的阶段,做了这么多年的WordPress二次开发,这次就决定用laravel小打小闹做了个简单的博客程序。这里不得不由衷地感叹一下,laravel果然是一个优雅的PHP框架,用上了就会爱上他,非slim之辈可以媲美的。
也正是这期间,有了我的上一篇关于 sublime text 美化的文章。
在我刚刚好把这个 SimpleBlog 写到满意的时候,工作室的BOSS突然召见了我,要给我分配一个新的任务,使用PHP来开发。咦,这不正好可以拿来练手吗?我自然是欣喜的答应了。一个个modal、controller,加上view,我写起来还算是挺得心应手的,把要求的功能一一实现,一次次被laravel的强大所折服。除此之外,我还得负责这个项目的前端,虽然我自称是一名前端人员,网页重构还原方面实打实的还算不错,但是在JavaScript方面还是不够扎实,在需要复杂的页面渲染时,传统的jQuery做法相形见绌。因为项目的问题,不得不采用了特殊的方法调用JavaScript来加载图片,以避开微信公众号的防盗链,与此同时如果再加上传统无刷新翻页做法(ajax .load())的话,将会在第二页出现只显示第一张图片而无文字的情况,解决的路比较曲折,这里我也并不想去回忆了(即是就发生在昨天),最终我是自己造轮子,写了一套laravel配合jquery实现iframe方式的翻页,iframe每次的高度由laravel去读数据库获取条数来确定,还是在脑力的挣扎下完成了这个项目。这里说个题外话,这个项目需要一个关于获取访问者大学的功能,我是这样实现的,先去通过HTML5获取到访问者的经纬度信息,然后使用百度地图的API,逆向推出访问者所在的城市/地区,然后建立一个全国各个大学中心坐标的数据库,通过访问者的“坐标点”与所在城市/地区的所有大学进行距离的排序,取最近的哪所==那所大学,但是这然又出现了一个新问题:如果访问者在学校的边缘,两所学校又挨得特别近该怎么判断…
谨以此文,纪念我与laravel的三个月。