我是靠谱客的博主 稳重哈密瓜,最近开发中收集的这篇文章主要介绍为 PHP 转 Go 的朋友们推荐一款神器,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

关注公众号 “转角遇到GitHub” ,每天推荐给你优秀开源项目

大家好,我是欧盆索思(opensource),每天为你带来优秀的开源项目!

了解 PHP 的朋友应该会被 PHP 中两大特性折服:1、强大的 array;2、强大的函数库。大部分数据用一个 array 即可表示;同样大部分功能用一个函数即可搞定。比如计算一个字符串的 MD5,Java 是这么做的:

import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class MD5Utils {
    public static String stringToMD5(String plainText) {
        byte[] secretBytes = null;
        try {
            secretBytes = MessageDigest.getInstance("md5").digest(
                    plainText.getBytes());
        } catch (NoSuchAlgorithmException e) {
            throw new RuntimeException("没有这个md5算法!");
        }
        String md5code = new BigInteger(1, secretBytes).toString(16);
        for (int i = 0; i < 32 - md5code.length(); i++) {
            md5code = "0" + md5code;
        }

        return md5code;
    }

    public static void main(String[] args) {
        System.out.println(MD5Utils.stringToMD5("123456"));
    }
}

Go 语言是这么做的:

package main

import (
 "crypto/md5"
 "fmt"
 "io"
)

func Md5(str string) string {
 h := md5.New()
 io.WriteString(h, str)
 return fmt.Sprintf("%x", h.Sum(nil))
}

func main() {
 fmt.Println(Md5("123456"))
}

而 PHP 是这么做的:

echo md5("123456");

PHP 中的函数是如此强大、便利,所以 PHPer 转到 Go 语言来,发现很多都需要自己封装,着实不方便。也正因为如此,GitHub 也有很多类似的库,专门提供和 PHP 类似的 Go 函数。

今天给大家推荐一个网站,专门为从 PHP 转 Go 的同学们准备的,网站地址:https://www.php2golang.com/。

在搜索框输入 PHP 的函数、类或库名,为你推荐相应的 Go 代码。比如搜索 md5,出现了两个结果:

  • function.md5-file

  • function.md5

点击 function.md5 查看具体信息:

还可以直接到 Go playground 去运行看看,是不是很方便!在 https://hao.studygolang.com/ 中发现了该网站。

文末「阅读原文」可直达项目首页。

今天的项目大家觉得怎么样吗?如果你喜欢,请在文章底部留言、点赞或关注转发,你的支持就是我持续更新的最大动力!

推荐阅读

  • 有了它,妈妈再也不用担心我记不住 etcd 的命令了


Hi,我是轩脉刃,一个名不见经传码农,体制内的小愤青,躁动的骚年,2020年想坚持写一些学习/工作/思考笔记,谓之倒逼学习。欢迎关注个人公众号:轩脉刃的刀光剑影。

最后

以上就是稳重哈密瓜为你收集整理的为 PHP 转 Go 的朋友们推荐一款神器的全部内容,希望文章能够帮你解决为 PHP 转 Go 的朋友们推荐一款神器所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部