前提:tableName
表中 tags
字段是以 ,
分割的一些 id
值,就像23,54,84,67,45
以下语句会将 tableName
表中 tags
字段删除 70
这个值
1 | UPDATE tableName set tags = TRIM(BOTH ',' FROM REPLACE(CONCAT(',',tags,','), ',70,', ',')) where find_in_set("70",tags)>0 |
前提:tableName
表中 tags
字段是以 ,
分割的一些 id
值,就像23,54,84,67,45
以下语句会将 tableName
表中 tags
字段删除 70
这个值
1 | UPDATE tableName set tags = TRIM(BOTH ',' FROM REPLACE(CONCAT(',',tags,','), ',70,', ',')) where find_in_set("70",tags)>0 |
近日经用户反馈,我们网站的上传功能出现了问题,经核查,是iphone的浏览器对new FormData()
获得的对象无get
、set
方法
例如这样在iphone上会报错
1 | var form = new FormData(); |
解决方式:用append
代替set
1 | var form = new FormData(); |
FormData.set
和 append()
的区别在于,如果指定的键已经存在, FormData.set
会使用新值覆盖已有的值,而 append()
会把新值添加到已有值集合的后面。
发现一个有趣的玩意,js写的调试面板:eruda
在某些情况下还蛮有用的
便捷使用
1 | (function () { |
使用XHPorf(源自Fackbook的PHP性能分析工具)
window下使用安装
下载好xhprof.tgz和DLL解压
将php_xhprof.dll放到php的ext目录下
设置php.ini添加
1
2
3
4
5
6
7
8
9 [xhprof]
extension=php_xhprof.dll
; directory used by default implementation of the iXHProfRuns
; interface (namely, the XHProfRuns_Default class) for storing
; XHProf runs.
;
;xhprof.output_dir=<directory_for_storing_xhprof_runs>
;调试信息的保存路径
xhprof.output_dir=D:\tem
安装 Graphviz
修改xhprof_lib\utils\callgraph_utils.php第110行为Graphviz安装目录下的bin\dot
1 $cmd = '"D:\Program Files\Graphviz\bin\dot" -T'.$type;
linux下安装
下载好xhprof.tgz和DLL解压
进入解压目录下的extension目录
1
2
3
4 #cd extension/
#phpize
#./configure --with-php-config=/www/server/php/74/bin/php-config
#make && make install
编辑php.ini添加以下配置
1
2
3 [xhprof]
extension=xhprof.so
xhprof.output_dir=/www/xhprof
重启php。若报错NOTICE: PHP message: PHP Warning: PHP Startup: xhprof: Unable to initialize module,那便是xhprof扩展版本与当前PHP版本无法匹配
使用示例
1
2
3
4
5
6
7
8 xhprof_enable();
/*代码内容*/
$xhprof_data = xhprof_disable();
include_once "./utils/xhprof_lib.php";
include_once "./utils/xhprof_runs.php";
$xhprof_runs = new XHProfRuns_Default();
$run_id = $xhprof_runs->save_run($xhprof_data, "xhprof_foo");
var_dump($run_id);
打开xhprof_html/index.php查看分析结果
使用示例
进入到apache的bin目录执行以下命令
1 | D:\phpstudy_pro\Extensions\Apache2.4.39\bin>ab -n100 -c10 http://www.baidu.com/ |
1 | #params.txt文件里面的Json格式的UTF-8编码 |
两个压缩函数,一个压缩到指定大小以下,一个压缩到指定宽度
注:thinkphp使用
1 | /** |
注意:压缩图片极耗性能,建议限制上传大小和图片宽度
内存占用计算公式:
1 | (width * height)* 通道数 * 图片位数 //rgb色彩模式的图像有3个通道 |
URL.createObjectURL()
静态方法会创建一个 DOMString,其中包含一个表示参数中给出的对象的URL。这个 URL 的生命周期和创建它的窗口中的 document 绑定。这个新的URL 对象表示指定的 File 对象或 Blob 对象。
用这个web接口可以预览上传的图片:
1 | <input type="file" id="btn" accept="image/*" value="点击上传" /> |
1 | $("#btn").addEventListener('change',function(){ |
tag:
缺失模块。
1、请确保node版本大于6.2
2、在博客根目录(注意不是yilia根目录)执行以下命令:
npm i hexo-generator-json-content --save
3、在根目录_config.yml里添加配置:
jsonContent: meta: false pages: false posts: title: true date: true path: true text: false raw: false content: false slug: false updated: false comments: false link: false permalink: false excerpt: false categories: false tags: true
世事无常