2017-11-05php项目常用方法

您现在的位置是: 首页 > PHP技术 > php项目常用方法

359次阅读

一、随机字符串生成

/**\r * 随机字符串生成\r * @param int $len 生成的字符串长度\r * @return string\r */\rfunction sp_random_string($len = 6) {\r    $chars = array(\r        "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k",\r        "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v",\r        "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G",\r        "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R",\r        "S", "T", "U", "V", "W", "X", "Y", "Z", "0", "1", "2",\r        "3", "4", "5", "6", "7", "8", "9"\r    );\r    $charsLen = count($chars) - 1;\r    shuffle($chars);    // 将数组打乱\r    $output = "";\r    for ($i = 0; $i < $len; $i++) {\r        $output .= $chars[mt_rand(0, $charsLen)];\r    }\r    return $output;\r}


二、保存数组变量到php文件

/**\r * 保存数组变量到php文件\r * @param string $path 保存路径\r * @param mixed $value 要保存的变量\r * @return boolean 保存成功返回true,否则false\r */\rfunction sp_save_var($path,$value){\r    $ret = file_put_contents($path, "<?php\\treturn " . var_export($value, true) . ";?>");\r    return $ret;\r}


三、转化格式化的字符串为数组

/**\r * 转化格式化的字符串为数组\r * @param string $tag 要转化的字符串,格式如:"id:2;cid:1;order:post_date desc;"\r * @return array 转化后字符串\r * <pre>\r * array(\r *  \'id\'=>\'2\',\r *  \'cid\'=>\'1\',\r *  \'order\'=>\'post_date desc\'\r * )\r */\rfunction param_lable($tag = \'\'){\r    $param = array();\r    $array = explode(\';\',$tag);\r    foreach ($array as $v){\r        $v=trim($v);\r        if(!empty($v)){\r            list($key,$val) = explode(\':\',$v);\r            $param[trim($key)] = trim($val);\r        }\r    }\r    return $param;\r}


四、判断是否为手机访问

/**\r * 判断是否为手机访问\r * @return  boolean\r */\rfunction is_mobile() {\r    static $sp_is_mobile;\r\r    if ( isset($sp_is_mobile) )\r        return $sp_is_mobile;\r\r    if ( empty($_SERVER[\'HTTP_USER_AGENT\']) ) {\r        $sp_is_mobile = false;\r    } elseif ( strpos($_SERVER[\'HTTP_USER_AGENT\'], \'Mobile\') !== false // many mobile devices (all iPhone, iPad, etc.)\r        || strpos($_SERVER[\'HTTP_USER_AGENT\'], \'Android\') !== false\r        || strpos($_SERVER[\'HTTP_USER_AGENT\'], \'Silk/\') !== false\r        || strpos($_SERVER[\'HTTP_USER_AGENT\'], \'Kindle\') !== false\r        || strpos($_SERVER[\'HTTP_USER_AGENT\'], \'BlackBerry\') !== false\r        || strpos($_SERVER[\'HTTP_USER_AGENT\'], \'Opera Mini\') !== false\r        || strpos($_SERVER[\'HTTP_USER_AGENT\'], \'Opera Mobi\') !== false ) {\r        $sp_is_mobile = true;\r    } else {\r        $sp_is_mobile = false;\r    }\r\r    return $sp_is_mobile;\r}


五、判断是否为微信访问

/**\r * 判断是否为微信访问\r * @return boolean\r */\rfunction is_weixin(){\r    if (strpos($_SERVER[\'HTTP_USER_AGENT\'], \'MicroMessenger\') !== false) {\r        return true;\r    }\r    return false;\r}


六、获取文件扩展名

/**\r * 获取文件扩展名\r * @param string $filename\r */\rfunction get_file_extension($filename){\r    $pathinfo=pathinfo($filename);\r    return strtolower($pathinfo[\'extension\']);\r}


七、得到网页当前url

function get_current_url()\r{\r    $pageURL = \'http\';\r    if (!empty($_SERVER[\'HTTPS\'])) {$pageURL .= "s";}\r    $pageURL .= "://";\r    if ($_SERVER["SERVER_PORT"] != "80") {\r        $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];\r    } else {\r        $pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];\r    }\r    return $pageURL;\r}