- 博客(114)
- 资源 (3)
- 收藏
- 关注
原创 Python计算统计分析MSE 、 RMSE、 MAE、r2
利用Python,sklearn库计算统计分析MSE 、 RMSE、 MAE、r2
2022-01-22 16:38:04
65628
原创 异常处理日志记录
在我们工作当中无法避免bug,为了能快速解决bug,需要能精准快速的定位问题所在。这就需要我们将每次异常日志完整的记录下来,包括传入的参数,在哪个类的哪个方法哪一行报错的在php中常使用getTrace来定位问题所在<?phpfunction test() { throw new Exception;}try { test();} catch(Exception $e) {...
2019-09-04 17:04:50
1063
原创 处理多维数组
在实际工作,我们经常会遇到对多维数组的处理,一般就会采用多重循环的方式,直到数组的最里面那一层或者使用递归来处理,在php中可以使用array_walk_recursive来灵活处理 /** * @desc 处理多维数组 * @param array $data 待处理数据 * @param array $field 处理字段数组 */ publi...
2019-09-02 17:58:17
592
原创 form表单name命名问题
在实际开发中,需要使用二维数组,所以form,name命名规则应该这样才能正确使用<input class="txt" type="text" name="port[te1]" value="1"><input class="txt" type="text" name="port[te2]" value="2"><input class="txt" type="...
2019-08-02 11:14:58
1797
原创 无限分类算法
//无限分类--递归算法function treeNode($data,$parentId = 0) { // 用于保存整理好的分类节点 $node = []; // 循环所有分类 foreach ($data as $value) { // 如果当前分类的父id等于要寻找的父id则写入$node数组...
2019-07-29 10:17:48
403
原创 phpize作用
今天在ubuntu安装php的redis拓展遇到问题安装步骤应用场景在使用php的过程中,我们常常需要去添加一些PHP扩展库。但是重新对php进行编译是比较蛮烦的,所以这时候我们可以使用phpize对php进行添加扩展。并且phpize编译的扩展库可以随时启用或停用,比较灵活。使用方法extention为要挂载的扩展包wget extension.tar.gz下载相应的扩展包并解压。...
2019-07-09 16:38:56
305
原创 支付宝手机网站支付
对于对接第三方支付,只想说文档很重要,漏了一步,后期排错真的很费时间。好好读文档,结合自己的项目优化官方给的SDK例子。也可以拿官方的demo在自己服务器先能成功执行完整个流程后,再结合自己项目从sdk抽出自己想要的代码<?php//支付宝手机网站支付(H5支付)//所有的第三方支付都是下单生成支付链接或者表单,然后用户支付,支付成功异步或者同步更新订单信息//服务端需要做的就是下单...
2019-06-20 20:17:33
534
原创 关于setInterval和setTImeout中的this指向问题
1. 问题描述前些天在练习写一个小例子的时候用到了定时器,发现在setInterval和setTimeout中传入函数时,函数中的this会指向window对象,如下例:var num = 0;function Obj (){ this.num = 1, this.getNum = function(){ console.log(this.num); ...
2018-09-25 09:01:59
266
原创 php匿名函数应用场景
匿名函数(Anonymous functions),也叫闭包函数(closures),允许 临时创建一个没有指定名称的函数。最经常用作回调函数(callback)参数的值。当然,也有其它应用的情况。<?php// 一个基本的购物车,包括一些已经添加的商品和每种商品的数量。// 其中有一个方法用来计算购物车中所有商品的总价格,该方法使// 用了一个 closure 作为回调函数。...
2018-08-28 10:08:03
1313
原创 php中sprintf函数用法
在使用sprintf过程中,有时候会重复使用后面的参数<?php$num = 5;$location = 'tree';$format = 'The %2$s contains %1$d monkeys. That\'s a nice %2$s full of %1$d monkeys.';echo sprintf($format, $num, $locat...
2018-08-21 10:28:32
835
原创 用js绑定onclick事件中的this
案例1:&lt;!DOCTYPE html&gt;&lt;html lang="en"&gt;&lt;head&gt; &lt;meta charset="UTF-8"&gt; &lt;title&gt;Title&lt;/title&
2018-08-14 10:14:34
45852
3
原创 接口设计---更好的提高效率
接口设计规范一. 接口示例以下是一个用户信息接口的文档示例,包含接口描述,请求参数,响应参数,json示例等。接口描述:用户登陆成功后,或进入个人中心时会获取一次用户信息URI 方法 /userinfo GET 请求参数名称 必填 备注 id 是 用户id 响应参数名称 类型 备注 id String 用户id name Stri...
2018-08-02 17:38:12
4448
1
原创 php中Static(静态)关键字作用
1、什么是static?static 是C++中很常用的修饰符,它被用来控制变量的存储方式和可见性。但在PHP中用 static 关键字来定义静态方法和属性, 也可用于定义静态变量以及后期静态绑定。 2、为什么要引入static?函数内部定义的变量,在程序执行到它的定义处时,编译器为它在栈上分配空间,大家知道,函数在栈上分配的空间在此函数执行结束时会释放掉,这样就产生了一个问题: 如果...
2018-07-30 10:22:24
4187
原创 php数组向任意位置进行插入,删除,替换操作
array_splice函数可以实现任意位置插入和删除&lt;?php$input = array("red", "green", "blue", "yellow");$x = "black";$y = "purple";// 添加两个新元素到 $inputarra
2018-07-27 18:33:38
2684
原创 PHP中单引号与双引号的区别
1.说明” ” 双引号里面的字段会经过编译器解释,然后再当作HTML代码输出。 ‘ ‘ 单引号里面的不进行解释,直接输出。 从字面意思上就可以看出,单引号比双引号要快了。2.实战php中,双引号中的变量($var)和特殊字符(\r\n之类)会被转义,单引号中的内容不会被转义(所以效率更高)。<?php$word = 'hello';$hello = "$word...
2018-07-19 09:56:06
233
原创 php关于时间转换问题
在实际开发中,大家都会遇到获取指定时间问题。例如:获取上周,上月的数据。这个时候应该以时间戳为准,使用mktime获取指定时间戳,再通过date()来转化,这样就会解决当遇到跨年,跨月的时候,获取的时间有误差 实例:<?php$now = date('Y/m/d H:i:s', mktime(0,0,0,date('m'),date('d')-7,date('Y')));//七天前...
2018-07-18 10:12:58
566
原创 json_encode转义问题
1.应用场景在对接app开发中,统一使用json来进行数据交流。服务端给客户端数据都是json字符串,其中难免会有\n,\r等特殊字符,为防止其被转义成\\n,\\r等,需要json_encode处理时候,请使用双引号对处理字符串2.实践&amp;amp;lt;?phpheader('Content-Type:application/json; charset=utf-8', true, 200...
2018-07-17 10:08:10
12151
原创 php函数特殊应用
1.用引用传递函数参数<?phpfunction add_some_extra(&$string){ $string .= 'and something extra.';}$str = 'This is a string, ';add_some_extra($str);echo $str; // outputs 'This is a string, ...
2018-07-06 19:27:55
286
原创 Swoole简单使用
1.Swoole应用场景Traditional PHP applications almost always run behind Apache/Nginx, without much control of the request. This brings several limitations:1.All memory will be freed after the request....
2018-06-25 17:28:19
2700
原创 MySQL常用SQL Statement Syntax
Data Definition Statements1.CREATE TABLE Syntax从存在的表里创建具有一样表结构的新表语法:CREATE TABLE ... LIKE Syntax实例:创建一个表CREATE TABLE `user` ( `uid` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) NO...
2018-06-22 17:12:50
4221
原创 MySQL联表CRUD
1.查询使用JOIN(LEFT JOIN取全部左边数据,RIGHT JOIN取全部右边数据,INNER JOIN 取共同数据)SELECT user.id,user_money.money FROM user JOIN user_money ON user.id = user_money.uid WHERE user_money.money>02.插入需求:将一个表取出数...
2018-06-11 14:58:26
261
原创 MySQL 易错点
1.数据为空时候,count,sum返回结果不同&lt;?php$dsn = 'mysql:dbname=test;host=127.0.0.1';$user = 'root';$password = '';try { $dbh = new PDO($dsn, $user, $password);} catch (PDOException $e) { echo 'Co...
2018-06-08 14:36:07
414
原创 MySQL--------大于小于比较问题
1.测试数据DROP TABLE IF EXISTS `access_log`;CREATE TABLE `access_log` ( `aid` int(11) NOT NULL AUTO_INCREMENT, `site_id` int(11) NOT NULL DEFAULT '0' COMMENT '网站id', `count` int(11) NOT NULL DE...
2018-06-04 16:26:52
21119
原创 Xdebug结合IDE远程调试
1.安装Xdebug这里有各个操作系统的安装说明 我以win7为例: 在这个页面文本框内输入phpinfo()内容 Xdebug会为你的开发环境提供最好的建议来安装2.php.ini设置[xdebug];你下载的dll路径zend_extension =&amp;quot;F:/php/php7.0.10/zend_ext/php_xdebug-2.4.1-7.0-vc14-x86_6...
2018-05-18 19:32:56
854
原创 PHP 7 新特性
1.?:与??比较$a ?? $b ??\ $c NULL 合并操作符 从左往右第一个存在且不为 NULL 的操作数。如果都没有定义且不为 NULL,则返回 NULL。PHP7开始提供。&lt;?php$msg = 0;echo $msg?:'test';输出结果:test相当于empty&lt;?php$msg = 0;echo $msg??'test'...
2018-05-17 15:21:22
155
原创 vim常用操作
1.多行注释:首先按esc进入命令行模式下,按下Ctrl + v,进入列(也叫区块)模式;在行首使用上下键选择需要注释的多行;按下键盘(大写)“I”键,进入插入模式;然后输入注释符(“//”、“#”等);最后按下“Esc”键。 注:在按下esc键后,会稍等一会才会出现注释 2.删除多行注释:首先按esc进入命令行模式下,按下Ctrl + v, 进入列模式;选定要取消注释...
2018-05-16 19:02:09
195
原创 PDO预处理插入数据注意事项
如果当你使用pdo预处理插入一条数据时候,报错<?php$dsn = 'mysql:dbname=test;host=127.0.0.1';$user = 'root';$password = '';try { $dbh = new PDO($dsn, $user, $password);} catch (PDOException $e) { echo 'C...
2018-05-14 17:57:01
2077
原创 服务端编写API总结
1.服务端返回的数据都是最终都是经过json_encode处理的,格式基本上是$response = [ 'code'=&amp;amp;amp;amp;gt; 200, 'msg'=&amp;amp;amp;amp;gt; '请求成功', 'data'=&amp;amp;amp;amp;gt; $data其中$data可以是数组,如果$data为关联数组或者无序数组这会返回为对象关联数组$data = [ '
2018-05-14 17:08:24
1311
原创 memcached和redis区别
如果简单地比较Redis与Memcached的区别,大多数都会得到以下观点: Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,zset,hash等数据结构的存储。Redis支持数据的备份,即master-slave模式的数据备份。Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。内存使用效率对比:使用简单的key...
2018-05-03 10:16:40
239
原创 redis各个数据类型的应用场景
了解下Redis内部内存管理中是如何描述这些不同数据类型的: 首先Redis内部使用一个redisObject对象来表示所有的key和value,redisObject最主要的信息如上图所示:type代表一个value对象具体是何种数据类型, encoding是不同数据类型在redis内部的存储方式, 比如:type=string代表value存储的是一个普通字符串,那么对应的encodin...
2018-05-02 15:18:13
1642
原创 win7安装redis并简单使用
1.工具准备a.下载win7的redis点击这里 b.下载你的php对应的redis拓展使用phpinfo()函数查看PHP的版本信息,这会决定扩展文件版本(特别注意以php版本的architecture是x86还是64为准,不能以操作系统为准); 下载对应redis拓展,官方下载地址 将下载文件解压后将redis.dll文件加入你的php根目录的ext目录下,...
2018-04-18 17:56:08
1031
原创 mysql性能优化------主从复制与读写分离
一、什么是主从复制与读写分离 如上图所示,当web server1/2/3要写入数据时,则向mysql db Master(主服务器)发出写入请求(即写入到master),如果要进入读操作时,则只向从服务器 mysql DB Slave1或2或3发出读取请求。如此将原本读写在同一台服务器的工作量分摊到了一台负责写入,N台负责读取(大部分的网站都是读取请求远大于写入请求),从而从一定程度时实现...
2018-04-07 20:43:46
673
原创 mysql性能优化------explain详解
1.explain作用explain语句提供了MySQL如何执行语句的信息。解释选择、删除、插入、替换和更新语句如何工作。2.如何使用explain your command;select_type ...
2018-04-07 20:38:14
404
原创 数据与业务逻辑分离
1、面向对象能给我们什么?进行分析之前,我们先来复习一下面向对象。对象是要进行研究的任何事物。类是具有相同或相似性质的对象的抽象。面向对象的要素:抽象,封装、继承、多态。面向对象目的是:如何分配职责。面向对象设计原则(高内聚低耦合):单一职责原则 (SRP) 一个类,只有一个引起它变化的原因。开放-封闭原则 (OCP)(对外)可扩展,(对内)不可修改。李氏替换原则...
2018-03-22 11:23:31
11828
1
原创 数据库冗余字段设计作用
1.什么是冗余字段?在设计数据库时,某一字段属于一个表,但它又同时出现在另一个或多个表,且完全等同于它在其本来所属表的意义表示,那么这个字段就是一个冗余字段,外键除外 ——以上是我自己给出的定义2.冗余字段应用场景冗余字段的存在到底是好还是坏呢?这是一个不好说的问题。可能在有人看来,这是一个很蹩脚的数据库设计。因为在数据库设计领域,有一个被大家必须遵守的数据库设计范式,这个范式理...
2018-03-20 16:53:26
3450
原创 app多版本控制的服务端解决方案
1.应用场景手机客户端按一定周期发版,但是客户不一定会及时更新到最新版本,所以需要服务端能支持旧版手机客户端。服务端支持旧版手机客户端的方式主要有:相同的接口支持不同版本手机端的请求,需要服务端接口做好兼容 相同的接口支持不同版本手机端的请求,但是在header或者uri加入了version信息,需要服务端根据version信息做相应的处理不同的接口支持,不同版本手机端的请求,需...
2018-03-15 11:19:02
9915
原创 php实现双向队列
<?phpclass Deque { private $queue = array(); public function addFirst($item) { return array_unshift($this->queue, $item); } public function addLast($item) { ...
2018-03-15 09:58:29
242
原创 抢红包算法
<?php/* * 生成红包的函数 */function getRandMoney($totalMoney, $totalPeople = 2, $miniMoney = 1){ $randRemainMoney = $totalMoney - $totalPeople * $miniMoney; //剩余需要随机的钱数 return _getRandMoney($r...
2018-03-05 14:10:49
337
原创 PHP加密解密函数
<?phpfunction encryptDecrypt($key, $string, $decrypt){ if ($decrypt) { $decrypted = rtrim(mcrypt_decrypt(MCRYPT_RIJNDAEL_256, md5($key), base64_decode($string), MCRYPT_MODE_CBC, md5(...
2018-03-05 13:57:27
300
原创 前端常用网页代码
1、控制横向和纵向滚动条的显隐?<body style=”overflow-y:hidden”> 去掉x轴<body style=”overflow-x:hidden”> 去掉y轴<body scroll=”no”>不显2、表格变色<TD onmouseover=”this.style.backgroundColor=’#FFFFFF’...
2018-03-05 11:47:18
11443
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人