php 文章调用类代码
2024-05-04 22:06:33
供稿:网友
调用方法如下:
代码如下:
$Template= '<li class="xxx">[<a href="{catedir}">{catetitle}</a>]<a href="{html}" title="{title}" >{title|6}{title2|20}</a>点击数:{hits} 日期:{posttime|H:i:s}</li>';
$Article=new Article();
$Article->Template=$Template;
$Article->CateId=30;
DebugStr('根据模板调用文章');
DebugStr($Article->getArticleListByCateId());
$Template='<li class="xxx"><a href="{html}" title="{title}" >{title}</a>点击数:{hits} 日期:{posttime|Y-m-d H:i:s}</li>';
$Article->Template=$Template;
$Article->CateId=30;
DebugStr($Article->getArticleListByCateId($Template, 30));
$Template='<a href="{html}" title="{title}" >{title}</a> 日期:{posttime}<br>';
$Article->Template=$Template;
$Article->CateId=28;
DebugStr($Article->getArticleListByCateId($Template, 28));
类代码如下:
代码如下:
<?php
/**
* 文章类,方便文章列表、内容的调用
* 仅支持PHP5
*
* 类函数列表:
* getArticleListByCateId();
*
* @author Zerolone
* @version 2011-3-14 9:53:42
*
* 2011-1-31 10:11:07 增加静态方法 getCatePreviewUrl getPreviewUrl
*/
class Article {
public $CateId = 0; //栏目编号 0,可以为一个栏目编号, 或者多个栏目。例如:12, 或者12,13
public $Count = 10; //记录数 10
public $TitleCount = 20; //文字显示数 20
public $BeginCount = 0; //起始记录数 0
public $OrderBy = 'id'; //排序字段 默认以id字段排序
public $OrderSort = 'DESC'; //排序顺序 默认DESC,倒序
public $OrderBy2 = ''; //排序字段2
public $OrderSort2 = ''; //排序顺序2
public $Area = 0; //显示区域 0,全部显示
public $Flag = ISSUEFLAG; //显示文章状态 2,2为 已保存 已发布
public $Pic = 0; //仅调用有图片的 0,1为仅调用有图的
public $Video = 0; //仅调用有视频的 0,1为仅调用视频的
public $notshowlist= 0; //不显示不在列表中的 0,不显示, 1 显示
public $AndWhere = ''; //额外加入的查询
public $Loop = 0; //循环列表 0,
public $Template = ''; //模板
public $IdList = ''; //Id列表,用于外部调用
//内部使用的变量
protected $SqlCateId = ''; //栏目Sql语句
protected $SqlCateTitleId = ''; //栏目Sql语句
protected $SqlArea = ''; //显示区域Sql语句
protected $SqlFlag = ''; //状态
protected $SqlNotShow = ''; //不显示列表中
protected $SqlPic = ''; //是否仅调用图片
protected $SqlVideo = ''; //是否仅调用视频
protected $SqlOrder = ''; //排序
protected $SqlLimit = ''; //显示个数
protected $SqlWhere = ''; //加入查询
public $SqlStr = ''; //调试用
/**
* 初始化Sql语句
*
*/
function InitSql(){
//栏目编号
$CateId=$this->CateId;
if (strpos($CateId, ',')) {
$this->SqlCateId=' AND `cateid` in ('.$CateId.')';