由文件导出乱码引发对字符编码的思考

以前在工作中遇到导出中文乱码时,就google一下,看见把utf-8编码换成GBK之类的编码,导出在Excel中打开就不会乱码了。只是解决了当前问题。对字符编码没有很好的认识。这次又遇到了,遂记录之。 参考的资料:https://my.oschina.net/leejun...http://www.ruanyifeng.com/blo... 前辈们已经对字符编码讲的很好了,通俗易懂。我就简单的整理下用自己的话复述一遍。1、我们为什么需要字符集和字符编码?计算机只认识0和1,不认识其他任何字符。而...阅读全文

Segmentfault 2019-06-16 22:04:18 梅长苏

Go defer 会有性能损耗,尽量不要用?

上个月在 @polaris @轩脉刃 的全栈技术群里看到一个小伙伴问 “说 defer 在栈退出时执行,会有性能损耗,尽量不要用,这个怎么解?”。 恰好前段时间写了一篇 《深入理解 Go defer》 去详细剖析 defer 关键字。那么这一次简单结合前文对这个问题进行探讨一波,希望对你有所帮助,但在此之前希望你花几分钟,自己思考一下答案,再继续往下看。 测试 func DoDefer(key, value string) { defer func(key, value string) { _ ...阅读全文

Segmentfault 2019-06-16 20:04:16 煎鱼

持续更新免费的API,做一个API的搬运工

为了方便广大的开发者,特此统计了网上诸多的免费API,为您收集免费的接口服务,做一个api的搬运工,以后会每月定时更新新的接口。有些接口来自第三方,在第三方注册就可以成为他们的会员,免费使用他们的部分接口。 百度AccessToken:针对HTTP API调用者,百度AIP开...——接口地址语音识别:通过场景识别优化,为车载导航,智能家居和...——接口地址语音合成:将用户输入的文字,转换成流畅自然的语音输...——接口地址出租车票识别(可在线调用):针对出租车票(现支持北京、上海、深圳)的....阅读全文

Segmentfault 2019-06-16 16:04:14 免费API

think-swoole 3.0入门教程(thinkphp 6.0)架构分析 2

前言 ThinkPHP即将迎来最新版本6.0,针对目前越来越流行Swoole,thinkphp也推出了最新的扩展think-swoole 3.0 沙盒 本文主要介绍在ThinkPHP-swoole 3.0当中所用到的沙盒技术。沙盒--顾名思义,所有程序都运行在一个封闭容器当中,得益于更完善的容器技术,在3.0扩展当中沙盒得以大展身手。 首先,查看沙盒是如何使用的,查看扩展当中Swoole.php,其中的OnRequest函数 public function onRequest($req, $re...阅读全文

Segmentfault 2019-06-15 15:04:14 aa杨

API 交互中怎么做好图片验证码?

前言 在传统的 Web 开发过程中,处理图形验证码很简单,只需要在后台用随机字符串生成一个图片,将验证码内容放进 Session 即可,用户提交表单时从 Session[1] 取出判断即可。 但是现如今,越来越推崇 API 交互,无状态,在 Session 这一块,虽然默认配置是不支持了,但是还是有很多曲线救国的方法。 基于 Session 实现 在 API 开发中,我们也可以给前端签发 SessionID ,并且通过 PHP 的内置方法,来实现这一切。比如 我们与前段约定,当在请求中包含有 X...阅读全文

Segmentfault 2019-06-15 13:04:15 唯一丶

Leetcode PHP题解--D87 705. Design HashSet

D87 705. Design HashSet 题目链接 705. Design HashSet 题目分析 设计一个哈希类。 需要有add添加元素函数,contains判断元素存在的函数,remove移除元素函数。 思路 这真的没什么好说的了…我把要存的值作为数组的键存储。 最终代码 class MyHashSet { protected $values = []; /** * Initialize your data structure here. */ function __construc...阅读全文

Segmentfault 2019-06-15 12:04:14 skys215

DVWA-从入门到放弃之XSS(Reflected,Stored,DOM)

XSS-跨站脚本攻击,在某种意义上也是一种注入型攻击XSS不仅仅限于JavaScript,还包括flash等其它脚本语言根据恶意代码是否存储在服务器中,XSS可以分为存储型的XSS(Stored)与反射型的XSS(Reflected)DOM型的XSS由于其特殊性,是一种基于DOM树的XSS,被分为第三种 XSS(Reflected) Low 代码分析 <?php header ("X-XSS-Protection: 0"); // Is there any input? if( array_ke...阅读全文

Segmentfault 2019-06-14 19:04:13 秋名山车神

laravel前后端分离获取微信授权,结合laravel-wechat

1、开始之前,请一定仔细阅读微信开发者文档文档中,总共写了几个步骤: 1、通过appId和需要跳转的路由去请求授权 2、授权之后跳转路由中返回的code 注:前端只需要知道这两个步骤 3、根据code获取access_token 4、根据access_token获取用户信息(snsapi_userinfo授权) 2、前端发起授权请求。这一步需要前端拼凑路由,并且将页面跳转到拼凑路由,路由规则如:https://open.weixin.qq.com/connect/oauth2/authorize...阅读全文

Segmentfault 2019-06-14 17:04:18 yankeys

【译文】PHP-DI和依赖注入的最佳实践

PHP-DI是用PHP编写的、强大的和实用的、框架无关的依赖注入容器。这是一个关于如何使用PHP-DI和依赖注入的最佳实践指南。 文章来源于PHP-DI,作者:Matthieu Napoli和贡献者。PHP-DI是用PHP编写的、强大的和实用的、框架无关的依赖注入容器。 原文地址(英文):http://php-di.org/doc/best-pr... PHP-DI在【本站实用开源目录】链接:http://www.worldlink.com.cn/o...这是一个关于如何使用PHP-DI和依赖注...阅读全文

Segmentfault 2019-06-14 16:04:18 wuxiumu

推荐一些PHP及后端相关的技术博客

原文链接: 何晓东 博客 不分先后,想到哪个写哪个的;其他还有 SegementFault, 掘金 这样的综合技术社区,经常有大佬出没。 技术博客应当只是技术生涯的佐料,核心应当是扎实的基础和实践,共勉。 枫叶林 博客 樊皓白 博客 点滴积累 飞雪无情的博客 廖雪峰官方网站 鸟哥博客 阮一峰的网络日志 博学无忧 - 信海龙博客 沈逸的个人博客 韩天峰 博客 一颗西瓜籽 博客 Just Fine 梦回故里 周梦康 博客 煎鱼的博客 沉思敏捷 shell 脚本学习 Github 大型互联网公司的架构...阅读全文

Segmentfault 2019-06-14 16:04:18 he_xd

PHP Facades的实现

示例 <?php class RealRoute{ public function get(){ echo '获得我'; } } class Facade{ public static $resolvedInstance; public static $app; public static function __callStatic($method,$args){ $instance = static::getFacadeRoot(); if(!$instance){ throw new Run...阅读全文

Segmentfault 2019-06-14 15:04:15 wuxiumu

PHPWord中文手册整理

修正 中文支持的问题,使用前如果发现乱码,需要进行一些修正: 解决编码问题,PHPword 会对输入的文字进行utf8_encode编码转化,如果你使用GBK、GB2312或者utf8编码的话就会出现乱码,如果你用utf8编码,就查找类库中所有方法中的 utf8_encode 转码将其删除,如果你采用GBK或者GB2312编码,使用iconv进行编码转换。 解决中文字体支持,在writer/word2007/base.php中 312行添加 $objWriter->writeAttribute(...阅读全文

Segmentfault 2019-06-14 14:04:15 Twilight

华为鸿蒙基于旗鱼OS开发 我还认识一个旗鱼云梯

据了解近期关于华为鸿蒙操作系统的消息越来越多,而且细节也越来越丰富。不过外媒的一则消息却表示华为鸿蒙操作系统并不是从零开始的。俄罗斯一家媒体表示,华为鸿蒙操作系统是基于旗鱼 OS进行开发的,之所以能够兼容安卓,也正是这个原因。 旗鱼 OS是诺基亚放弃MeeGo的继承者,基于MeeGo开发出旗鱼 OS。在华为正式公布鸿蒙操作系统的细节之前,还无法确定鸿蒙操作系统是完全自研还是基于已有成果之上。不过从前段时间的信息来看,鸿蒙完全自研的可能性是比较大的。另一个我知道的旗鱼云梯是建站平台,可以再linu...阅读全文

Segmentfault 2019-06-14 12:04:15 刘亮亮

马蜂窝大交通业务质量体系建设初步实践

质量是决定产品能否成功、企业能否持续发展的关键因素之一。如何做好质量体系建设,这是个比较大的话题,包含的范围很广,也没有固定的衡量标准。 打开一个互联网公司招聘网站,搜索「测试工程师」岗位时,你会发现几乎全部 JD 都包含一条要求「建设或者参与建设所负责业务的质量体系」。那么,是不是谈到质量保障就只是测试团队的职责?测试团队在这个过程中如何发挥价值?本文将结合马蜂窝大交通测试团队在质量体系从无到有搭建过程中的实践,来谈一下对质量体系建设的看法和理解。 质量管理的常见误区 在谈到质量管理的时候,很...阅读全文

Segmentfault 2019-06-14 11:04:27 马蜂窝技术

Lnmp搭建zabbix运维监控系统

使用目的? 在公司项目中需要做一个日志监控,最开始选择的是efk,但是efk的资料相对较少并且之前对这几个产品都没接触过,使用起来难度。于是选择了zabbix作为项目的运维监控系统。 zabbix能做什么? zabbix主要是用来网络监控、系统监控、应用监控等场景。zabbix分为server端和agent端,文章前半部分都是在讲server端的安装操作,后面结尾讲解agent的安装操作。 搭建环境 centos7.0,lnmp集成环境(mysql5.7,php7.2),zabbix4.0版本。...阅读全文

Segmentfault 2019-06-14 11:04:26 浪子编程走四方

Leetcode PHP题解--D86 748. Shortest Completing Word

D86 748. Shortest Completing Word 题目链接 748. Shortest Completing Word 题目分析 从给定的一个字符串中提取字符。从另一个给定的单词数组中,选择出所提取的字符在单词中出现次数相等或大于的单词。若出现次数相同,则返回第一个符合条件的单词。 假定结果必定存在。 思路 先提取字符,转换成小写,并计算字符出现的次数。 遍历数组中的每一个单词,先计算单词中每个字符出现的次数。 同时,遍历前面计算的字符出现次数,若有任何一个字符没有在当前单词中...阅读全文

Segmentfault 2019-06-14 10:04:25 skys215

Visual Studio Code调试PHP

本人微信公众号:前端修炼之路,欢迎关注。 这两天有点时间,花时间学习了一下PHP基础语法和语句。因为个人比较喜欢Visual Studio Code这款编辑器,所以学习我主要记录一下使用VSCode学习PHP的遇到的一些问题。其中最主要的就是怎样使用VSCode调试PHP代码。 语法检查和格式化 为了更加规范的学习PHP,我决定使用一个插件。如果在VSCode中搜索php format插件,会有三个排名最靠上的插件。我尝试了半天,其中PHP Intephense这个插件最好用。这个插件的评价是五...阅读全文

Segmentfault 2019-06-14 10:04:25 siberiawolf