PHP常用函数总结

欢迎使用PHP常用函数

开头问候语:PHP 是世界上最好的语言,可能将来会是宇宙中最好的语言,如果你想学习更多PHP知识, 可以博主更多文章,了解更多PHP专业知识。

向指定位置/下标插入字符串

话不多说,直接上代码! 代码如下:

/**
 * 指定位置插入字符串
 * @param $str  原字符串
 * @param $i    插入位置
 * @param $substr 插入字符串
 * @return string 处理后的字符串
 */
function insertToStr($str, $i, $substr){
    //指定插入位置前的字符串
    $startstr="";
    for($j=0; $j<$i; $j++){
        $startstr .= $str[$j];
    }
    //指定插入位置后的字符串
    $laststr="";
    for ($j=$i; $j<strlen($str); $j++){
        $laststr .= $str[$j];
    }
    //将插入位置前,要插入的,插入位置后三个字符串拼接起来
    $str = $startstr . $substr . $laststr;
    //返回结果
    return $str;
}

例子如下:

例子:

// 定义字符串
$str = "67330819-5D37-4d8c-AB05-72D9479A84155478175CC80A92C42F0037F6128DCDCA";
// 函数调用
$Data = insertToStr($str,strlen($str) - 5,"gzslxpg");
// 打印返回结果
echo "$Data";// 67330869-E237-4d8A-f30E-7229479f846EE47867ECC80f92C42F0037F6628gzslxpg2C2Cf

二维数组转一维数组

话不多说,直接上代码! 代码如下:

 // 二维转一维
 $proNumber = array_reduce(二维数组, function ($result, $value) {
        return array_merge($result, array_values($value));
 }, array());

二维数组根据指定下标排序

话不多说,直接上代码! 代码如下:

 //二维数组根据指定下标排序
 $last_names = array_column($product_find,'二维数组索引');
 // 函数返回排序数组
 array_multisort($last_names,SORT_ASC,$product_find);

/*
 * 参数说明:$arr,$key,$type(二维数组,要排序的键名、排序方式)
 * 返回值:排序完成的二维数组
 */
function array_sort($arr, $keys, $type = 'asc') {
    $keysvalue = $new_array = array();
    foreach ($arr as $k => $v) {
        $keysvalue[$k] = $v[$keys];
    }
    if ($type == 'asc') {
        asort($keysvalue);
    } else {
        arsort($keysvalue);
    }
    reset($keysvalue);
    foreach ($keysvalue as $k => $v) {
        $new_array[$k] = $arr[$k];
    }
    return $new_array;
}

获得随机密钥Key

话不多说,直接上代码! 代码如下:

   /*
     * randomkeys() 获得随机密钥Key
     * $length  随机密钥的长度
     */
    function randomkeys($length)
    {
        // 随机数定义
        $pattern = '1234567890';
        // 返回的密钥key
        $key = "";
        for($i=0;$i<$length;$i++)
        {
            @$key .= $pattern{rand(0,9)};    //生成php随机数
        }
        return $key;
    }

Object 对象转数组

话不多说,直接上代码! 代码如下:

    /**
     * 对象 转 数组
     *
     * @param object $obj 对象
     * @return array
     * @remarks 如果需要过滤指定下标可以添加如下代码
     *       
     *  if($k == "\0*\0受保护的键"){
     *  	continue;
     *  }
     */
    function object_to_array($obj) {
        $obj = (array)$obj;
        foreach ($obj as $k => $v) {
            if (gettype($v) == 'resource') {
                return;
            }
            if (gettype($v) == 'object' || gettype($v) == 'array') {
                $obj[$k] = (array)$this->object_to_array($v);
            }
        }

        return $obj;
    }

数组转Object 对象

话不多说,直接上代码! 代码如下:

    /**
     * 数组 转 对象
     *
     * @param array $arr 数组
     * @return object
     */
    function array_to_object($arr) {
        if (gettype($arr) != 'array') {
            return;
        }
        foreach ($arr as $k => $v) {
            if (gettype($v) == 'array' || getType($v) == 'object') {
                $arr[$k] = (object)$this->array_to_object($v);
            }
        }

        return (object)$arr;
    }

生成唯一订单号

话不多说,直接上代码! 代码如下:

    /**
     * 生成唯一订单号
     *
     * @param string $str 字符串
     * @return string
     */
        // 生成唯一订单号
    public function order_id(){
        // 生成
        $str = date('Ymd').substr(implode(NULL, array_map('ord', str_split(substr(uniqid(), 7, 13), 1))), 0, 8);
        // 返回
        return $str;
    }
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值