自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

猛犸象

一只不知疲惫的猛犸

  • 博客(11)
  • 收藏
  • 关注

原创 golang中的排序,按照结构体的某个字段排序

概述golang的sort包默认支持int, float64, string的从小大到排序:int -> Ints(x []int)float64 -> Float64s(x []float64)string -> Strings(x []string)同时它还提供了自定义的排序接口Interface,此接口保护三个方法。type Interface interface { // Len is the number of elements in the collection.

2021-03-30 19:52:44 6206

原创 golang中的ord和chr的实现

ord: 转换字符串第一个字节为 0-255 之间的值,也就是 ASCII 字符集;比如 A -> 65,mb_ord: ord的多字节字符支持,也就是 unicode 字符集,比如 我 -> 25105chr: 将 0-255 之间的值匹配 ASCII 字符集中的单个字符;比如 65 -> A,mb_str: chr的多字节支持,将一个整数匹配 unicode 字符集中的单个字符;比如 25105 -> 我,而golang就是天然支持 unicode 字符集的,所以只需要关

2021-03-26 16:40:45 2049

原创 golang中的类型断言

goLang有类型转换,类型断言,类型切换1.接口类型断言类型断言就是将接口类型的值(x),装换成类型(T),成功则返回 T 的实例。格式为:x.(T) // 不安全,会造成panic,程序中断v := x.(T) // 不安全,会造成panic,程序中断v, ok: = x.(T) // 推荐写法类型断言的必要条件就是x是接口类型,非接口类型的x不能做类型断言:var i int=10v:=i.(int) //错误 i不是接口类型,无法使用接口断言T可以是非接口类型,如果想断言合法,

2021-03-23 17:26:26 3281

原创 PHP下载文件的正确方式

关于file_get_contents我们都习惯使用 file_get_contents 函数来很方便的实现读取文件,远程资源访问。file_get_contents ( string $filename , bool $use_include_path = false , resource $context = ? , int $offset = -1 , int $maxlen = ? ) : stringfilename要读取的文件的名称。use_include_path注意:As

2021-03-19 09:20:37 3009

原创 golang美化输出结构体,map等变量

golang中的出结构体,map等变量的默认输出显示不友好,难以阅读,美化输出只要用到 json 包,代码如下:func PrettyPrint(v interface{}) { b, err := json.Marshal(v) if err != nil { fmt.Println(v) return } var out bytes.Buffer err = json.Indent(&out, b, "", " ") if err != nil { fmt.Pri

2021-03-15 18:14:51 3217

原创 golang选择性编译文件,条件编译,构建标签(Build tags) +build windows

你可能正在写一个要同时兼容 windows 和 linux 系统的程序,比如设置终端中输出的文本的前景色和背景色。golang输出带颜色的信息 linux and windows在 windows 下需要调用 DLL,而在 linux 下却不存在这个程序,所以会报错,所以此时需要借助 Golang 语言层面的支持来解决这种问题。只需要在文件头部加上注解:只在 windows 系统下编译此文件,则需要在文件头部加上// +build windows在非 windows 系统下编译此文件,则需要在

2021-03-09 10:32:33 3796

原创 PHP中关于json_encode转换空数组返回[]而不是{}

在做接口开发的时候,经常需要将结果json化返回给前端,而如果结果集为空的时候,json_encode返回的是空数组[],而不是预期的{},这时候虽然不影响使用,但是前端同学会觉得很怪,需要多做一个判断。$aa = [];$bb = ['a'=>12];echo json_encode($aa), PHP_EOL, json_encode($bb);输出[]{"a":12}为了保持结果的结构一致性,我们需要在空数组的时候也返回空对象。那么应该在 json_encode 的第二个参数填

2021-03-08 09:11:18 699

原创 windows下查看端口监听情况

netstat -ano查看所以的端口监听情况,数据比较多。netstat -aon|findstr “6000”从结果中过滤指定端口tasklist|findstr “6292”查看某个进程ID对应的进程名称

2021-03-05 09:41:19 11169 1

原创 PHP单元测试框架 PHPUnit 提高

在 入门 的基础上再来看这一篇。1、使用注释 @test 来标注需要测试的方法你的测试方法可以是 test 前缀的方法,也可以是包含 @test 注解的方法。public function testSomething(){ $this->assertTrue(true, 'This should already work.');}/** * @test */public function something(){ $this->assertTrue(true, 'Thi

2021-03-03 15:49:40 327 1

原创 PHP单元测试框架 PHPUnit 入门

单元测试非常之重要,好的项目,测试代码比项目代码还多,即便在开发阶段不写单元测试,在项目上线后,功能迭代的时候如果项目很大,小的单元测试可以节省繁琐的深度测试的时间。这篇文章旨在入门 phpunit,虽然大部分框架都已经集成了 phpunit 来作为单元测试,但是你真的知道这里面的过程和细节吗?安装PHPUnit官网:http://www.phpunit.cn/composer global require phpunit/phpunit可以看到 composer 会提示将 phpunit 安装在

2021-03-03 11:34:07 1101

原创 左右值无限级分类算法(预排序遍历树算法)

1、为什么要使用左右值来表示无限极分类一般的,我们会使用parent标志来表示节点之间的上下级关系,好处是结构清晰,修改起来很方便,缺点是查找起来稍微麻烦一点,可能需要使用递归查询,递归的使用将会使性能大幅降低尤其是递归层级多的时候。有些查找,比如统计当前节点的所有子节点个数,这就必须要递归到最后一级,所以在类似于这种需要递归到最后一级才能返回结果的场景,我们可以补充以左右值来提升性能。以下是常规的数据结构,数据随机生成:/** * 生成测试数据 * php think data --action

2021-03-02 10:47:34 2497

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除