Jsnpp框架是一款优秀的PHP框架,从开始接触学习到现在已经有一段时间了,其中印象最深刻的是Jsnpp的全链式语法。由于本人也是初学不久,所以这里只是浅显地讨论一下全链式语法,以作抛砖引玉之用。
全链式语法粗看起来,跟我们平常在使用的链式语法很相像,可能一眼看就觉得是普通的链式语法。我刚开始接触Jsnpp框架的时候,就有这种感觉,甚至当时觉得全链也没什么特别。但是,当我深入学习后,才发现原来全链式语法跟普通的链式语法差别巨大,完全是两个层次的东西,虽然从写法上都是使用箭头,但当你真正理解全链式编程后,就会发现新大陆。
关于全链式语法的实际应用,这篇文章不详细介绍了,因为Jsnpp框架的官网(http://www.jsnpp.com)都有详细的教程,我这里主要来分析一下全链式语法跟普通的链式语法的区别。
链式语法在主流框架里面应用得很多,只要学习过PHP框架的朋友都会接触过链式语法,所以链式语法是我们熟悉的。链式语法的作用主要是方便代码书写,可以使用箭头来串接语句,例如下面的代码:
Db::name('user')->where('id', '>', 10)->select();
上面代码是我们经常会遇到的数据库操作的链式语法(这里仅仅是举个例子,以上代码不是Jsnpp框架的代码),这种语法给我们编写带来了方便。但链式语法是基于方法层面的,我们看下面的图: