使用emlog写的最后一篇博客

此主页首次上线与2013年4月,当时emlog应该正是如日中天的时候,我尝试了一下感觉系统还不错,相应速度要比WordPress快不少,再加上是国人开发,于是就从众多开源博客系统中选择了emlog.

有插件市场,但是数量不多,质量也不是特别理想,但是总体来说能用,够用,我还心血来潮开发了一个可以把博客内容发送到指定邮箱的小插件.

使用中没什么大问题,不过在插入代码块的时候是真的难受,经常把页面搞的乱七八糟的,还得切换到源码模式来修改.一来二去,我对emlog渐渐的失去了耐心,一心想要把博客迁移走.

记录一个跨域相关的疑难杂症

最近在做一个前后端完全分离的项目,这其中自然少不了一个经典的话题——跨域。

前端用的uniapp,后端用的Laravel。

前者刚刚开始接触,用后者也从来没有做过前后端分离的项目,正因为两个都不是特别的熟悉,导致这次在坑中摸爬滚打了好久才爬出来。

PECL、PEAR、phpize、composer 的区别和联系

首先,我们先分别了解一下这四个东西的官方介绍。

PECL:

PECL是PHP扩展的存储库,提供了所有已知的扩展和托管设施的目录,用于下载和开发PHP扩展。

PECL使用的包装和分配系统与它的姐妹PEAR共享。

PEAR:

PEAR是一个可重用PHP组件的框架和分发系统。

phpize:

用 phpize 编译共享 PECL 扩展库。

有时候不能用 pecl 安装命令。这可能是因为在防火墙后面,或者是因为想要安装的扩展库还没有 PECL 兼容的包,例如 SVN 中尚未发布的扩展库。如果要编译这种扩展库,可以用更底层的编译工具来手工进行编译。

Composer:

是 PHP 用来管理依赖(dependency)关系的工具。你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer 会帮你安装这些依赖的库文件。

Yii2自动生成接口文档插件 yii2-doc-online

    眼下前后端完全分离的开发模式是越来越火,好多项目都直接摒弃了常规的套页面方式,而改用前端控制主要业务逻辑,后端只提供接口数据的模式。这样一来,前后端就需要频繁的沟通接口含义。于是一个好的接口文档总是能事半功倍的,但是后台开发人员开发出接口后,写接口文档又是一个麻烦的事情,费时费力不说,当接口改动时,还要时刻记着去修改接口文档。

    介于本人平时需要开发很多接口,也要写很多文档,于是决定开发一款可以自动生成接口文档的小工具——yii2-doc-online,只要开发人员按照规范写好注释,那么接口文档就会自动生成了。

<转>微信素材上传返回提示 “errcode”:41005的原因以及以及解决方案

【原因】:由于不同php版本导致curl方法用法有所改变导致的

【解决方案】:将自己即将要进行微信请求的数据适当处理一下,如下:

例如未处理的数据如下

$data=array(
    'media'=>'@'.'自己的文件路径'
);

上面的格式微信官方文档也是这样的写的,但是如果你php版本>=5.6后,这种写法就会导致文件无法进行上传到微信服务器最保险的做法如下(兼容所有php版本),将上面的数组作如下处理

if (class_exists('\CURLFile')) {
    $data[$k] = new \CURLFile(realpath($this->getImage($v, $file_name)));
} else {
    $data[$k] = '@'.realpath($this->getImage($v, $file_name));
}

【为什么要这么做?】:

php使用glob方法引入多个文件

有时候我们有这样的需求,一个项目的入口处,需要引入多个配置文件,最简单粗暴的方法是这样的。

require(__DIR__.'/config/database.php');
require(__DIR__.'/config/redis.php');
require(__DIR__.'/config/memcache.php');

这样引入自然是可以的,但是有两个问题:

完全卸载yum安装的php

使用yum安装了php后,用yum remove php命令删除php,但是再次使用php -v命令,还能看到之前的版本号,说明php并没有删除干净,如果想删除干净,需要逐一删除php依赖的rpm包。

php生成数据字典

开发中数据库必不可少,关于数据字典,独自开发的小项目还好 ,一旦项目大起来,或者其他开发人员参与进来,那么数据库就像是一本天书,尤其一些状态值,更是猜不透什么意思,这时候一个完善的状态字典就显得意义非凡了,而编写数据字典又是一件异常繁琐的事,尤其是数据库结构出现变动的时候。不过有了这个,生成数据字典将是一件非常享受的事情。

代码是网上找的,非原创,效果图如下: