Typecho里面的数据库组件独立作为第三方库引用方法

4 篇文章 0 订阅
1 篇文章 0 订阅

Typecho是一个开源PHP博客程序。其表结构,模板插件,管理设置,代码风格都与早期Wordpress版本相似,低CPU和低内存占用,安装时直接支持Mysql和SQLite。

Typecho数据库组件(包括其它组件)代码写得不错。在没使用namespace的情况下就实现了较为清晰的文件夹类包结构。
简单易用,我认为这就是原味的php,自由地轻快地专注于自己的想法实现,不需要太多的花巧语法规则约束。新版本语法lib不兼容是开发最大的麻烦,SwiftCode和Net是这样,php7和8也有这方面倾向。。。

扯远了,回到正题。按照如下步骤就能把Typecho数据库组件独立作为第三方库引用。


1,解压 Typecho_1.17 源码包,把里面的 /var/Typecho 文件夹复制出来。复制到你的项目下。

2,在项目下新建 typechodb.inc.php 代码如下面。

3,在项目下新建 test.php 代码如下面。

注:这两个文件都要修改代码,修改为你实际作用的数据库地址和表。

项目结构如下:

MyProject
 |
 ——Typecho
 |
 ——typechodb.inc.php
 |
 ——test.php
 

<?php

//typechodb.inc.php

/**
 * Typecho db component test
 * 
 * @summary 这个文件也是复制自config.inc.php
 * @By RoadToTheExpert
 */

/** 定义根目录 */
define('__TYPECHO_ROOT_DIR__', dirname(__FILE__));


/** 设置包含路径 */
@set_include_path(get_include_path() . PATH_SEPARATOR .
    __TYPECHO_ROOT_DIR__ );

/** 载入API支持 */
require_once 'Typecho/Common.php';


/** 载入配置支持 */
require_once 'Typecho/Config.php';

/** 载入异常支持 */
require_once 'Typecho/Exception.php';


/** 程序初始化 */
Typecho_Common::init();

/** 定义数据库参数 */
$db = new Typecho_Db('Mysql', 'typecho_');
$db->addServer(array (
    'host' => 'localhost',
/以下参数修改为你测试的数据库
    'user' => 'xxx',
    'password' => 'xxx',
    'database' => 'xxx',
/
    'charset' => 'utf8',
    'port' => '3306',
), Typecho_Db::READ | Typecho_Db::WRITE);
Typecho_Db::set($db);

<%  //test.php
require_once 'typechodb.inc.php';
$res = Typecho_Db::get()->fetchRow("select count(*) as cnt from your_table");
var_dump($res);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值