我们在《Jsnpp框架模板变量》一文里面介绍了基本的模板变量,实际上,我们还会使用一些较为复杂的模板变量,即复合变量,这一篇我们就来详细介绍模板的复合变量。 我们在前面的教程里面介绍的模板变量是形如“{$name}”这样的模板变量,我们称这种形式的模板变量为基础变量,或者简单起见我们可以直接称之为“模板变量”,当然这里所指的模板变量并不能包含所有Jsnpp模板的模板变量,还有复合模板变量。 为...
我们在《Jsnpp框架模板概述》这篇教程里面初步介绍了Jsnpp框架的模板,大家已经知道Jsnpp的模板标签长什么样,这一篇我们来详细介绍Jsnpp框架模板的模板变量。 先来介绍几个概念,一个是模板标签,一个是模板变量,还有一个是模板语法。 Jsnpp的模板里面,模板标签是一个总称,包括了模板变量和模板语法。 模板变量是可以直接输出内容的模板标签。 模板语法是可以用于控制执行流程的模板标签...
PHP是一种很灵活的编程语言,在PHP语言最初的时候主要是嵌入到HTML代码里面执行的,我们可以把这种方式称之为传统的PHP编程。也就是说,传统PHP编程是面向过程的,并且逻辑代码和HTML是混编在一起的。虽然这种方式的编程在PHP中一直是被允许的,但随着编程的发展,我们在实际编程工作中更需要的是面向对象以及逻辑代码和HTML分离的方式来写程序。这样会让代码更清晰易懂,维护也方便。 Jsnpp是...
我们在《 Jsnpp框架数据库操作where详解》一文里面介绍了数据库语句“where”条件语句的更多用法,这一篇我们将进一步来介绍“where”的扩展用法。 “where”语句是可以连续使用的,如下面的代码所示: ->where('id', '>', 3)->where('name', 'mike...
我们通过前面教程的学习,已经知道数据库语句里面“where”的用法,这一篇我们进一步来详细介绍数据库语句的“where”的使用。 之所以要单独把“where”提出来详细介绍,是因为“where”的使用相对比较丰富些,在前面介绍过用法里面并不能包括“where”用法的全部内容。 我们知道,“where”是用于条件的,类似下面的代码,我们前面的教程里面经常看到: ->where('...
到现在为止,我们已经在前面的教程里面介绍了大部分 Jsnpp里面使用数据库的方法,事务操作也是数据库操作中的一个经常可能会用到实现。我们这一篇就来介绍怎么在Jsnpp框架的数据库语句里面实现事务操作。 为了说明更加清楚起见,我们先来看一个没有使用事务的数据库语句,看下面的代码: $this->app->db->table('users')->wher...
我们在前面的教程里面详细介绍了一些Jsnpp框架的数据库查询操作,包括单表查询、多表查询、聚合查询等内容,这一篇我们来介绍子查询。 我们先来看下面的示例代码: $this->app->db->table('subtable')->where('test', 1)->field('uid')->box...
我们通过前面的教程已经对Jsnpp框架的数据库操作有了一定程度的了解和熟悉了,这篇我们进一步来介绍Jsnpp数据库的聚合查询。 当我们需要获得一些统计数据的时候,我们就会用到聚合查询。例如,通过下面的查询语句可以获得记录的总数: $this->app->db->table('users')->box('count')->co...
我们在《Jsnpp框架如何查询数据库记录》一文里面介绍了单记录查询,多记录查询,以及分页查询,在介绍这些内容的时候,都是以单表查询为例子的。实际的开发工作中,我们经常会对多个表格进行联合查询,这一篇我们就来介绍怎么实现多表查询。 我们先来看一个多表查询的例子: $this->app->db->table('posts')->field('i...
我们在《Jsnpp框架如何查询数据库记录》一文里面介绍了怎么查询数据库的记录,通过学习我们已经知道怎么实现单记录查询,多记录查询,以及分页查询,这一篇教程我们将进一步学习怎么获取查询后的结果集。 Jsnpp里面要获取数据库查询后的结果集,需要用到Jsnpp的盒子,我们在教程《Jsnpp框架的盒子简介》一文里面已经学习了Jsnpp盒子的基本概念和基本使用方法,这一篇我们将学习Jsnpp的盒子怎么在...
Jsnpp
自豪地采用 Jpwrt