call_user_func的用法和意义

比如现在有个需求,有一组字符串需要不同的加密方式来加密

1年前的我会这么写

<?php
my_encrypt("md5","123456");
public function my_encrypt($type,$str){
        switch ($type){
            case "md5":
                return md5($str);

            case "sha1":
                return sha1($str);
        }

    }

现在的我会这么写

<?php
my_encrypt("sha1", "123456");
public function my_encrypt($type, $str)
    {
        return call_user_func($type,$str);
    }

很明显用call_user_func代码更加简洁,不需要再单独判断传如的方法名


版权声明:本文为weixin_42362496原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。