技术饭 php使用array_slice()函数进行数组分页

今天用到一个函数,非常好用,分享给大家,array_slice() -从数组中取出一段也就是说用这个函数可以和sql语句一样实现分页,原理是将查询出的数组,取出从指定下标开始到指定长度的数组,我们的数据未必都是存储在数据库中,很多时候是用数组来组织的。所以获取数组数据,进行分页是比较常见的编程要求,array_slice(原数组,开始下标,要取几条),这里用到三个参数(如果不写第三个参数 返回直到数组末端的所有元素)

阅读全文 » 1481天前
2020年04月13日

技术饭 使用postman传数组数据

postman是一款强大的本地接口调试工具,我们可以通过它清晰的看到我们数据请求携带的参数和具体数据返回结果,便于我们分析解决问题。在我们做api接口数据调试的时候,大部分是会用到postman的,一般请求数据的参数都是字符串,但是特殊情况下我们是需要传一个数组数据的,那么为了实现这种需求,究竟该怎么做呢?

阅读全文 » 1513天前
2020年03月12日

技术饭 thinkphp5.1控制器中的初始化方法initialize()不能return出数据

本来是要做登录验证与权限验证,正常是想在每个控制器的头部初始化方法initialize()直接return出数据,但是试了很多遍thinkphp5.1控制器中的初始化方法initialize()不能return出数据,翻了文档确实也是说不能输出,建议使用中间件的方式返回数据即可。

阅读全文 » 1514天前
2020年03月11日

技术饭 postman接口工具设置headers头部的参数不能加下划线

今天做登录接口测试,正常逻辑是登录之后返回一个token给前端,以后前端都是拿着这个token来获取信息数据,正要测试时发现postman接口工具设置headers头部的参数不能加下划线,使用:sponsor_token 参数一直获取不到数据,纳闷了大半天,后来修改成:sponsortoken 就解决问题了。

阅读全文 » 1515天前
2020年03月10日

技术饭 css修改谷歌默认最小字体12px的方案

AikehouAdmin5.2.0版本后台的数据表单中,操作按钮的字体font-size属性设置成了10px,但是Google浏览器似乎不兼容,最小字体也就12px,几经折腾才弄清楚,原来是谷歌内核浏览器默认最小12px,其他浏览器却是支持10px,所以也只能做个兼容方案。解决方案是使用css的属性 -webkit-transform: scale(0.88); 来缩放解决这个问题。

阅读全文 » 1522天前
2020年03月03日

技术饭 thinkphp5.1的json数据写入、查询

正常一篇文章属于一个分类,所以是单选,现在需要将一篇文章对应多个分类,这时候就需要将分类的单选改成了多选,那做法就有两种,1、将文章表的catid字段改成json格式,如:{"value":"5","value":"6"},2、删除文章表的catid字段,新建一个关联catid的表。

阅读全文 » 1522天前
2020年03月03日

吃瓜群众 微盟被删库,听说是程序员老婆与公司高管有纠葛???

2 月 25 日消息,24 日晚间,微盟官网发出公告称,微盟的业务系统数据库(包括主备)遭遇其公司运维人员的删除,目前正在紧急修复,服务恢复预计还需要 24-48 小时。靠给微信公众账号提供营销推广服务发家,做到上市的微盟怎么也没想到,2020年给自己上的第一课是公司核心运维人员的“删库跑路”。

阅读全文 » 1527天前
2020年02月26日

技术饭 TP5.1报错:Indirect modification of overloaded element of app\common\model\WechatExtension has no effect

TP5.1报错:Indirect modification of overloaded element of app\common\model\WechatExtension has no effect,通过追踪得到的信息是调用 sortArrByField() 方法的时候报错了,检测发现排序只能是数据,而对象集合是不支持的,所以做法是先数据是否为对象,如果是对象则转成数组,然后在进行操作就没有问题了。

阅读全文 » 1528天前
2020年02月26日

技术饭 PHP数据采集框架QueryList,使用案例~~~

QueryList不依赖任何框架和架构,它可以单独使用也可以引入到任意的PHP开发框架中去使用,如:Laravel、ThinkPHP;你可以使用它来构建简单的采集系统,也可以用它才构建高可用的分布式采集系统。它提供了丰富的基于CSS选择器的页面抽取API,完全模块化的设计,拥有强大的可扩展性。

阅读全文 » 1532天前
2020年02月22日

吃瓜群众 投哪网宣布退出:待收26亿 未公布兑付方案

1月14日晚间,深圳P2P平台投哪网对外公告良性退出网贷行业,此后将专注于催收回款与兑付工作,全力保障出借人权益,承诺:不跑路、不失联、不放弃。不过,公告并未提及相关的兑付方案,后续相关事宜待进一步消息发布。官网信披数据显示,截止2019年12月31日,投哪网累计借贷金额611.18亿元,借贷余额26.17亿元,利息余额2.11亿余元,当前出借人数37983人。

阅读全文 » 1543天前
2020年02月11日

技术饭 MySQL的InnoDB引擎数据库经常出现自动关闭现象,Cannot allocate memory for the buffer pool

MySQL的InnoDB引擎数据库经常出现自动关闭现象,Cannot allocate memory for the buffer pool,最近网站经常时不时地出现访问不了的状况,一直没在意,今天又一down机了,索性就查看了下MySQL的日志。

阅读全文 » 1661天前
2019年10月16日

技术饭 PhpSpreadsheet 导出图片到 Excel

之前使用的是PHPExcel来做PHP程序的数据导出,但是ThinkPHP5版本就改成了PhpSpreadsheet,文档因为是英文的所以看不太懂,今天解决的是PhpSpreadsheet 导出图片到 Excel。

阅读全文 » 1688天前
2019年09月19日

技术饭 ThinkPHP3.2框架中添加(add)或更新(save)时过滤某些字段的问题

ThinkPHP3.2框架中添加(add)或更新(save)时过滤某些字段的问题,在已经建好的数据表结构中新增或修改字段后,在TP框架中执行增加、修改操作时出现过滤掉该字段,而打印的插入或更新数据会显示该字段,打印执行的sql语句不会出现该字段,这时把TP框架中的runtime文件夹删掉即可,原因是runtime文件夹中有数据库的缓存会自动过滤掉该字段

阅读全文 » 1878天前
2019年03月13日

技术饭 使用phpoffice/phpspreadsheet,导入导出数据

使用phpoffice/phpspreadsheet,导入导出数据

阅读全文 » 1880天前
2019年03月11日

技术饭 MySql中InnoDb引擎,show table status 数据不准确

MySql中InnoDb引擎,show table status 数据不准确,与你使用的表引擎有关系。官方文档的说明:一些存储引擎(如myisam)存储精确的计数。对于其他存储引擎(如InnoDB),该值是近似值,可能与实际值相差40%到50%。在这种情况下,使用select count(*)获得准确的计数。在myisam这种不支持事务的引擎中,这个值是精确的,在innodb这种支持事务的引擎中,是估算的。

阅读全文 » 1927天前
2019年01月22日

技术饭 mysql存储表情:General error: 1366 Incorrect string value: '\xF0\x9F\x98\x8A' for column

今天向数据库插入一条数据时,有条数据的某个字段包含\xF0\x9F\x98\x8A字符,导致MYSQL数据库出现以下错误:General error: 1366 Incorrect string value: '\xF0\x9F\x98\x8A' for column ...

阅读全文 » 1951天前
2018年12月29日

技术饭 wnmp3.1.0安装之后数据库连接报错:port: 3306 source distribution,访问localhost、127.0.0.1报错:10060: A connection attempt failed because...

wnmp3.1.0安装之后数据库连接报错:port: 3306 source distribution,访问localhost、127.0.0.1报错:10060: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond

阅读全文 » 1964天前
2018年12月17日

技术饭 Linux下如何实现Mysql数据库每天自动备份定时备份

备份是容灾的基础,是指为防止系统出现操作失误或系统故障导致数据丢失,而将全部或部分数据集合从应用主机的硬盘或阵列复制到其它的存储介质的过程。而对于一些网站、系统来说,数据库就是一切,所以做好数据库的备份是至关重要的!

阅读全文 » 2008天前
2018年11月03日

技术饭 PHP面试的知识点

PHP面试之一:PHP基础知识点,PHP面试之二:高并发与大数据,PHP面试之三:MySQL数据库,PHP面试之三:MySQL数据库

阅读全文 » 2032天前
2018年10月10日

技术饭 thinkphp5分页抓取数据并入库

PHP可以通过curl抓取其他网站接口数据,抓取到的数据量有时候很多,这个时候如果进行入库的话会造成执行时间过长而停止报错500,解决方案有:1、php配置值max_execution_time修改大一些,还有就是nginx的执行时间也可以修改大一些,但这回造成网页一直卡着也很消耗服务器内存;2、进行分页抓取。

阅读全文 » 2033天前
2018年10月09日

技术饭 PHP数据传输神器CURL详解

我们在使用PHP开发网站的后台的时候,有时候需要在PHP代码中请求某一个网页,比如在微信开发中,我们在代码中请求微信服务器地址,得到开发凭证access_token,这时候使用CURL来处理请求是最合适的。如果你想使用PHP来开发微信,那么CURL是一个必备的知识点。

阅读全文 » 2035天前
2018年10月07日

技术饭 MySQL 8.0主从(Master-Slave)配置

MySQL 主从复制的方式有多种,本文主要演示基于基于日志(binlog)的主从复制方式。MySQL 主从复制(也称 A/B 复制) 的原理:Master将数据改变记录到二进制日志(binary log)中,也就是配置文件log-bin指定的文件, 这些记录叫做二进制日志事件(binary log events);Slave 通过 I/O 线程读取 Master 中的 binary log events 并写入到它的中继日志(relay log);Slave 重做中继日志中的事件, 把中继日志中的事件信息一条一条的在本地执行一次,完成数据在本地的存储, 从而实现将改变反映到它自己的数据(数据重放)。

阅读全文 » 2037天前
2018年10月05日

技术饭 mysql触发器trigger 实例详解

触发器是由事件来触发某个操作,这些事件包括insert语句、update语句和delete语句。当数据库系统执行这些事件时,会激活触发器执行相应操作。MySQL从5.0.2开始支持触发器。使用触发器可以保证某些操作之间的一致性。

阅读全文 » 2037天前
2018年10月05日

技术饭 mysql数据库分表及实现

项目开发中,我们的数据库数据越来越大,随之而来的是单个表中数据太多。以至于查询书读变慢,而且由于表的锁机制导致应用操作也搜到严重影响,出现了数据库性能瓶颈。当出现这种情况时,我们可以考虑分表,即将单个数据库表进行拆分,拆分成多个数据表,然后用户访问的时候,根据一定的算法,让用户访问不同的表,这样数据分散到多个数据表中,减少了单个数据表的访问压力。提升了数据库访问性能。

阅读全文 » 2038天前
2018年10月04日

技术饭 MySQL主键和外键使用及说明

MySQL通过外键约束来保证表与表之间的数据的完整性和准确性。外键的使用条件:1.两个表必须是InnoDB表,MyISAM表暂时不支持外键(据说以后的版本有可能支持,但至少目前不支持);2.外键列必须建立了索引,MySQL 4.1.2以后的版本在建立外键时会自动创建索引,但如果在较早的版本则需要显示建立; 3.外键关系的两个表的列必须是数据类型相似,也就是可以相互转换类型的列,比如int和tinyint可以,而int和char则不可以;外键的好处:可以使得两张表关联,保证数据的一致性和实现一些级联操作。

阅读全文 » 2039天前
2018年10月03日

技术饭 MySql数据统计使用 WITH ROLLUP 统计总和

MySql数据统计使用 WITH ROLLUP 统计总和,ITH ROLLUP 可以实现在分组统计数据基础上再进行相同的统计(SUM,AVG,COUNT…)。例如我们将以上的数据表按名字进行分组,再统计每个人登录的次数。

阅读全文 » 2039天前
2018年10月03日

技术饭 php7+mysql8下出现网页无法访问问题解决方案

php7+mysql8下出现网页无法访问问题解决方案,最近因为剁手买了Centos7,在上面搭建Ningx1.14.0+PHP7.2+Mysql8.0环境。数据库mysql从5.7跳到8,性能快了一倍,lnmp基本都弄好了,但是到用php连接Mysql这一步出了问题,一直无法加载网页,可是使用客户端、shell命令都可以进入mysql,多方查询才找到答案!

阅读全文 » 2057天前
2018年09月15日

技术饭 【转】MySQL性能优化的最佳21条经验

今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。

阅读全文 » 2199天前
2018年04月26日

技术饭 MySQL基础整理

MySQL基础整理,Mysql是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。

阅读全文 » 2201天前
2018年04月24日

技术饭 Laravel框架重要知识整理

Laravel框架重要知识整理,Laravel是一套简洁、优雅的PHP Web开发框架(PHP Web Framework)。它可以让你从面条一样杂乱的代码中解脱出来;它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁、富于表达力。在Laravel中已经具有了一套高级的PHP ActiveRecord实现 -- Eloquent ORM。它能方便的将“约束(constraints)”应用到关系的双方,这样你就具有了对数据的完全控制,而且享受到ActiveRecord的所有便利。Eloquent原生支持Fluent中查询构造器(query-builder)的所有方法。

阅读全文 » 2216天前
2018年04月09日

技术饭 Laravel框架基础入门,Composer的基础使用

Laravel框架基础入门,Laravel是一套简洁、优雅的PHP Web开发框架(PHP Web Framework)。它可以让你从面条一样杂乱的代码中解脱出来;它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁、富于表达力。在Laravel中已经具有了一套高级的PHP ActiveRecord实现 -- Eloquent ORM。它能方便的将“约束(constraints)”应用到关系的双方,这样你就具有了对数据的完全控制,而且享受到ActiveRecord的所有便利。Eloquent原生支持Fluent中查询构造器(query-builder)的所有方法。

阅读全文 » 2222天前
2018年04月03日

技术饭 jsonp请求接口php设置返回头部以及js格式化数字

jsonp请求接口php设置返回头部以及js格式化数字,文章主要整理了jsonp请求的php接口的流程并且给出了一些js函数代码,方便处理数据。

阅读全文 » 2237天前
2018年03月19日

技术饭 微信支付异步notify_url中$_GET、$_POST无法获取到数据解决方案

微信支付异步notify_url中$_GET、$_POST无法获取到数据解决方案,php5.3以及之前版本$GLOBALS['HTTP_RAW_POST_DATA'] 可以使用,但是在PHP5.3以后已废弃,也就是说$_GET、$_POST取不到数据

阅读全文 » 2251天前
2018年03月05日

技术饭 nginx下运行php的程序时返回200访问却是空白页问题的解决方法

这几天一直在研究小程序,开发的差不多的时候吧环境从php5切换到了php7之后发现了很多的问题,比如传入参数没有默认值等造成的问题,但另一个棘手的问题就是:nginx下运行php的程序时返回200访问却是空白页,接口请求成功但是却一直无法返回数据,经过不断反复测试,代码断点测试,最后才发现了问题所在。

阅读全文 » 2251天前
2018年03月05日

技术饭 解决 PHPExcel 长数字串显示为科学计数

在excel中如果在一个默认的格中输入或复制超长数字字符串,它会显示为科学计算法,例如身份证号码,解决方法是把表格设置文本格式或在输入前加一个单引号。使用PHPExcel来生成excel,也会遇到同样的问题,解决方法有三种:1、设置单元格为文本,2、在设置值的时候显示的指定数据类型,3、在数字字符串前加一个空格使之成为字符串。

阅读全文 » 2335天前
2017年12月11日

技术饭 PHP的json_eneode()方法不转义中文汉字的方法

PHP的json_eneode()方法不转义中文汉字的方法,ios程序中不识别读取到的JSON数据中 \u开头的数据。PHP 生成JSON的时候,必须将汉字不转义为 \u开头的UNICODE数据。网上很多,但是其实都是错误的,正确的方法是在json_encode 中加入一个参数 JSON_UNESCAPED_UNICODE 。

阅读全文 » 2347天前
2017年11月29日

技术饭 分页直接加载页面的ajax请求方式

分页直接加载页面的ajax请求方式,AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。AJAX 是一种用于创建快速动态网页的技术。AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

阅读全文 » 2390天前
2017年10月17日

技术饭 针对爱客猴echoCMS存在远程代码执行漏洞解决方案

最近阿里针对tp3.2.3框架进行了检查,并发公告称tp3.2.3的文件缓存机制很容易被破解,如果使用了文件缓存未设置 DATA_CACHE_KEY 会造成任意代码执行,这个会对整个服务器以及数据造成很大的困扰,tp官方也第一时间辟谣称框架本身没有问题,只是需要设置 DATA_CACHE_KEY 这个值让攻击者不容易猜到即可。

阅读全文 » 2409天前
2017年09月27日

技术饭 SQLyog Enterprise常用快捷键

SQLyog Enterprise常用快捷键,作为比较早期的mysql数据库管理工具,还是蛮好使用的,但是要习惯使用方式才会好用,现在一直在用 SQLyog Enterprise,但是很多快捷键没有使用好,今天整理一番,供学习参考交流。

阅读全文 » 2425天前
2017年09月12日

技术饭 php7环境下带mysql_开头的php方法都不能使用了

php7环境下带mysql_开头的php方法都不能使用了,奇怪了之前后台备份数据库功能都是可以的,怎么升级成php7之后报了404错误,我靠不对劲啊,还是排查下代码,调试之后发现是mysql_get_client_info函数undefined,竟然说mysql_get_client_info函数不存在......

阅读全文 » 2455天前
2017年08月13日