作者归档:admin

PHP中插件机制的一种实现方案

插件,亦即Plug-in,是指一类特定的功能模块(通常由第三方开发者实现),它的特点是:当你需要它的时候激活它,不需要它的时候禁用/删除它;且无 论是激活还是禁用都不影响系统核心模块的运行,也就是说插件是一种非侵入式的模块化设计,实现了核心程序与插件程序的松散耦合。一个典型的例子就是 WordPress中众多的第三方插件,比如Akimet插件用于对用户的评论进行Spam过滤。

继续阅读

vmware克隆centos后,网卡无法启动的解决方法

以CentOS6为例,虚拟机软件为VMware Workstaion,通过链接克隆虚拟机后发现网卡不能正常启动了。
检查发现,克隆虚拟机后,网卡的实际MAC地址和设备的UUID都发生了改变,但是网卡配置文件/etc/sysconfig/network-scripts/ifcfg-eth0HWADDRUUID没有做自动调整。

继续阅读

linux下的cad软件LibreCAD

LibreCAD is a free Open Source CAD application for Windows, Apple and Linux. Support and documentation is free from our large, dedicated community of users, contributors and developers. You, too, can also get involved!

继续阅读

开源面板Vesta CP

简介

Vesta CP是开源Web控制面板,它随带丰富的功能特性,可以从一个简单而整洁的界面,管理和配置你的Linux系统。

VestaCP目前支持RHEL/CentOS 7/6/5、Ubuntu 15.10-12.04和Debian 8/7/6。支持中文。

继续阅读

dedecms重置密码

重置管理员密码为admin
dede_admin表,将pwd的值修改为f297a57a5a743894a0e4,这串数字就是织梦的默认密码admin

dedecms调用指定栏目文章列表

我要调用指定栏目id为1的文章列表,下面是调用代码:

{dede:arclist typeid='1' titlelen='60' row='8'}
<div class="item">
    <div class="img">
        <a href="[field:arcurl/]" target="_blank"><img src="[field:picname/]" alt="[field:fulltitle/]" title="[field:fulltitle/]" /></a>
    </div>
    <div class="title"><a href="[field:arcurl%20/]">[field:title /]</a></div>
    <div class="time">[field:pubdate function="GetDateTimeMK(@me)"/]</div>
</div>
{/dede:arclist}

获取手机号码所属省份、城市、运营商Api接口

<?php
/**
 * 要查询的电话号码归属地
 * http://www.baidu.com/api.php?m=Tel&p=13281098058
 * {"province":"\u56db\u5ddd","city":"\u6210\u90fd","supplier":"\u8054\u901a"}
 * supplier 运营商 city 城市 province 省份
 * Some rights reserved:abc3210.com
 * Contact email:admin@abc3210.com
 */
class TelAction extends AppframeAction {
    public function index() {
        $mobile = $_GET['p'];  //要查询的电话号码
        $ko = $_GET['ko'];  //要查询的端口 1 为淘宝,2为财付通
        $data='';
        if($mobile){
           if($ko==1){
              $data=$this->taobao($mobile);
           }else{
              $data=$this->tenpay($mobile);
           }
        }
        exit($data);
    }

    private function taobao($mobile=0){//淘宝接口
        $url = "http://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel=".$mobile."&t=".time();  //根据淘宝的数据库调用返回值
        $content = file_get_contents($url);
        $data['province'] = substr($content, "56", "4");  //截取字符串
        $data['supplier'] = substr($content, "81", "4");
        return '{"province":"'.$data['province'].'","supplier":"'.$data['supplier'].'"}';
    }

    private function tenpay($mobile=0){//财付通接口
        $doc = new DOMDocument(); 
        $xmlurl='http://life.tenpay.com/cgi-bin/mobile/MobileQueryAttribution.cgi?chgmobile='.$mobile.'&f.xml';
        $doc->load($xmlurl); //读取xml文件 
        $xmls = $doc->getElementsByTagName("root"); //取得root标签的对象数组 
        foreach( $xmls as $xml ) { 
            $province = $xml->getElementsByTagName( "province" ); //省份
            $data['province'] = $this->delspace($province->item(0)->nodeValue); //省份
            $city = $xml->getElementsByTagName( "city" ); 
            $data['city']= $this->delspace($city->item(0)->nodeValue); //城市
            $supplier = $xml->getElementsByTagName( "supplier" ); 
            $data['supplier'] = $this->delspace($supplier->item(0)->nodeValue); //联通 移动 电信
        }
        return json_encode($data);
    }
    //过滤空格回车
    private function delspace($pcon){
         $pcon = preg_replace("/ /","",$pcon);
         $pcon = preg_replace("/ /","",$pcon);
         $pcon = preg_replace("/ /","",$pcon);
         $pcon = preg_replace("/\r\n/","",$pcon);
         $pcon = str_replace(chr(13),"",$pcon);
         $pcon = str_replace(chr(10),"",$pcon);
         $pcon = str_replace(chr(9),"",$pcon);
         return $pcon;
    }

}
?>

在 linux 中自动备份 mysql

以下是我在服务器上利用cron部署的自动备份mysql数据库的shell脚本,脚本按天生成每次备份目录,生成的文件经过 gzip 压缩节省磁盘空间。

编辑口令配置 /home/mysql_backup/extra.cnf

[client]
user=mysqluser
password=mysqlpassword

编辑备份脚本 /home/mysql_backup/backsql.sh

#!/bin/bash
root='/home/back/mysql'
data="$root/data"
extra="$root/extra.cnf"
tag=`date +%Y/%m%d`
log="$data/backup.log"

mkdir -p $data/$tag/

mysqldump --defaults-extra-file=$extra tableName | pigz > $data/$tag/tableName.sql.gz

# 删除10天以前的备份
find $root/* -mtime +10 -exec rm {} \;

# 写日志
echo "backup finished at $(date +'%Y-%m-%d %H:%M:%S')" >> $log

继续阅读