欢迎来到 54818模板网!这是一个yzmcms的模板分享站。

对YZMCMS6.3版本搜索模板新变量$tag->total的一些见解

相关案例演示

        YZMCMS6.3版本已经发布很多天了。最近我才有些空闲时间,打算对我的网站程序进行升级。新版本改动还是蛮大的。由于我的网站对源码修改的地方比较多,所以升级很慢。

        对于制作网站一直以来都是我的一个兴趣爱好。也没有系统的学习过网页编程。从ASP到PHP,一直以来都是通过自学,没老师教,半路出家啊。自学往往也是东一榔头西一棒槌的。很多东西不懂,理解起来也蛮吃力。那废话就说到这里,下面开始说正题。

        新版本搜索页模板中出现了一个新的变量 $tag->total ,这个变量会显示本次搜索记录的总数量。刚开始我一直不怎么理解,怎么突然就出了一个$tag呢,我找了找搜索的代码中也没有出现$tag这个变量啊,没有定义怎么可能就直接用出来了呢,还能显示总数量,真是莫名其妙。

        不懂也没办法,只能在实践中寻找真理了。于是我先在m:search标签前用 var_dump() 打印了一下 $tag 显示代码为:

object(yzm_tag)#7 (4) {    
    ["tablename"]=> NULL    
    ["page"]=>  NULL    
    ["total"]=>    NULL    
    ["db"]=>  NULL    
}

        可以看出在 m:search标签 之前$tag里的值都是空值,但已经有了 total 这个键名。 再在m:search标签后用 var_dump() 打印了一下,代码如下:

object(yzm_tag)#7 (4) {    
    ["tablename"]=>    NULL    
    ["page"]=>    object(page)#12 (8) {    
        ["url":"page":private]=>    string(69) "http://ddtt.54818.cn/search/index/init/modelid/0/q/cms/page/PAGE.html"    
        ["total_rows":"page":private]=>    string(1) "1"    
        ["list_rows":"page":private]=>    string(2) "10"    
        ["total_page":"page":private]=>    float(1)    
        ["now_page":"page":private]=>    int(1)    
        ["parameter":"page":private]=>    array(3) {    
            ["modelid"]=>    string(1) "0"    
            ["q"]=>    string(3) "cms"    
            ["page"]=>    string(4) "PAGE"    
        }    
        ["url_rule":"page":private]=>    bool(false)    
        ["page_prefix":"page":private]=>   string(5) "list_"    
    }    
    ["total"]=>    string(1) "1"    
    ["db"]=>    NULL    
}

        已经有值了。由此可以看出,模板解析那里肯定定义了$tag这个变量。

        通过查看yzm_tpl模板解析类文件 yzm_tpl.class.php 总算有了发现。在文件当中有个yzm_tag函数,函数里面就定义了 $tag = yzm_base::load_sys_class(\'yzm_tag\');。再通过上面我用var_dump() 打印出的代码可以看到 object(yzm_tag)#7 (4) 和 object(page)#12 (8) 。于是我打开 yzmcms标签类文件 yzm_tag.class.php 从代码开头就可以看到文件中定义了 $tablename, $page, $total, $db 四个公共变量。再打开 数据分页类 page.class.php 开头就看到了局部变量的定义

	private $url;         		//当前URL
	private $total_rows;  		//一共多少条数据
	private $list_rows;   		//每页显示记录数
	private $total_page;  		//总的分页数
	private $now_page; 	  		//当前页
	private $parameter;   		//分页跳转的参数
	private $url_rule;    		//URL规则
	private $page_prefix; 		//URL分页前缀,默认为list_

        这下全了,全都找到了出处。原来类中的变量还能这样调用,又学到了一招。以后做模板更方便了。

        这半路出家就是半路出家啊,不懂的地方真多。写下本文,供以后温故知新。

    作者:54818模板网 关注:552 时间:2022-01-24 23:28:03
    相关网站教程