PHP中一些有用的函数

<?php
function encryptDecrypt($key, $string, $decrypt)
{
    if($decrypt){
        $decrypted = rtrim(mcrypt_decrypt(MCRYPT_RIJNDAEL_256, md5($key), base64_decode($string), MCRYPT_MODE_CBC, md5(md5($key))), "12");
        return $decrypted;
    }else{
        $encrypted = base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, md5($key), $string, MCRYPT_MODE_CBC, md5(md5($key))));
        return $encrypted;
    }
}

function generateRandomString($length = 10)
{
    $characters = ‘0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ‘;
    $randomString = ‘‘;
    for ($i = 0; $i < $length; $i++) {
        $randomString .= $characters[rand(0, strlen($characters) - 1)];
    }
    return $randomString;
}

function getExtension($filename)
{
    $ext = substr($filename, strrpos($filename, ‘.‘));
    return str_replace(‘.‘,‘‘,$ext);
}

function formatSize($size)
{
    $sizes = array(" Bytes", " KB", " MB", " GB", " TB", " PB", " EB", " ZB", " YB");
    if ($size == 0) {
        return(‘n/a‘);
    } else {
        return (round($size/pow(1024, ($i = floor(log($size, 1024)))), 2) . $sizes[$i]);
    }
}

function stringParser($string,$replacer)
{
    $result = str_replace(array_keys($replacer), array_values($replacer),$string);
    return $result;
}

function listDirFiles($DirPath)
{
    if($dir = opendir($DirPath)){
        while(($file = readdir($dir))!== false){
            if(!is_dir($DirPath.$file)) {
                echo "filename: $file<br />";
            }
        }
    }
}

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

function download($filename)
{
    if ((isset($filename))&&(file_exists($filename))){
        header("Content-length: ".filesize($filename));
        header(‘Content-Type: application/octet-stream‘);
        header(‘Content-Disposition: attachment; filename="‘ . $filename . ‘"‘);
        readfile("$filename");
    } else {
        echo "Looks like file does not exist!";
    }
}

function getIp()
{
    if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown")){
        $ip = getenv("HTTP_CLIENT_IP");
    }elseif (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"), "unknown")){
        $ip = getenv("HTTP_X_FORWARDED_FOR");
    }elseif (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown")){
        $ip = getenv("REMOTE_ADDR");
    }elseif (isset ($_SERVER[‘REMOTE_ADDR‘]) && $_SERVER[‘REMOTE_ADDR‘] && strcasecmp($_SERVER[‘REMOTE_ADDR‘], "unknown")){
        $ip = $_SERVER[‘REMOTE_ADDR‘];
    }else
        $ip = "unknown";
    return ($ip);
}

function injCheck($sql_str)
{
    $check = preg_match(‘/select|insert|update|delete|\‘|\/\*|\*|\.\.\/|\.\/|union|into|load_file|outfile/‘, $sql_str);
    if ($check) {
        echo ‘Illegal char‘;
        exit;
    } else {
        return $sql_str;
    }
}

会陆续加上……

时间: 2025-01-10 13:55:20

PHP中一些有用的函数的相关文章

dbus 创建Client过程中几个有用的函数

/**  * g_type_init:  *  * This function used to initialise the type system.  Since GLib 2.36,  * the type system is initialised automatically and this function does  * nothing.  *  * Deprecated: 2.36: the type system is now initialised automatically

PHP培训教程 PHP里10个鲜为人知但却非常有用的函数

PHP培训教程 PHP里10个鲜为人知但却非常有用的函数 php里有非常丰富的内置函数,很多我们都用过,但仍有很多的函数我们大部分人都不熟悉,可它们却十分的有用.这篇文章里,兄弟连小编列举了一些PHP培训鲜为人知但会让你眼睛一亮的PHP函数. levenshtein() 你有没有经历过需要知道两个单词有多大的不同的时候,这个函数就是来帮你解决这个问题的.它能比较出两个字符串的不同程度. 用法: <?php $str1 = "carrot"; $str2 = "carrr

基类中定义的虚函数在派生类中重新定义时,其函数原型,包括返回类型、函数名、参数个数、参数类型及参数的先后顺序,都必须与基类中的原型完全相同 but------&gt; 可以返回派生类对象的引用或指针

您查询的关键词是:c++primer习题15.25 以下是该网页在北京时间 2016年07月15日 02:57:08 的快照: 如果打开速度慢,可以尝试快速版:如果想更新或删除快照,可以投诉快照. 百度和网页 http://bbs.csdn.net/topics/380238133 的作者无关,不对其内容负责.百度快照谨为网络故障时之索引,不代表被搜索网站的即时页面. 首页 精选版块 移动开发 iOS Android Qt WP 云计算 IaaS Pass/SaaS 分布式计算/Hadoop J

PHP里10个鲜为人知但却非常有用的函数

PHP里有非常丰富的内置函数,很多我们都用过,但仍有很多的函数我们大部分人都不熟悉,可它们却十分的有用.这篇文章里,我列举了一些鲜为人知但会让你眼睛一亮的PHP函数. levenshtein() 你有没有经历过需要知道两个单词有多大的不同的时候,这个函数就是来帮你解决这个问题的.它能比较出两个字符串的不同程度. 用法: <?php $str1 = "carrot"; $str2 = "carrrott"; echo levenshtein($str1, $st

JS中的自执行函数

本来规划的是2013年,狠狠的将JS学习下,谁知计划赶不上变化,计划泡汤了.13年的我对JS来说可以说是属于跟风,对它的理解和认识也仅仅是皮毛而已,也是因为要完成<ArcGIS API for JavaScipt开发教程>而临阵磨枪. 在接触JS一段时间后,觉得还是比较灵活的,灵活的前提是要更深入的了解,就像两个陌生的人,相处的时间长了,了解的时间长了,难免会产生感情一样.对于JS也开始产生了感情,这种感情体现在工作中,体现在周围的环境中. 目前很多开发者纷纷加入JS的阵营,看来这已经不是跟风

mysql 中 时间和日期函数

原文链接: mysql 中 时间和日期函数 - redfox - 博客园 http://www.cnblogs.com/redfox241/archive/2009/07/23/1529092.html ----------------------------------------------------------------------------------------------------------------------------------------------------

微软未公开存储过程及有用的函数

原文:微软未公开存储过程及有用的函数 从网上收集,有些已经在2008不支持或者后续版本不支持,所以需要慎用. XP_FileExist: 用法:EXEC xp_fileexist <filename> [, <file_exists INT> OUTPUT] 例子:exec master.dbo.xp_fileexist 'C:\temp' SP_MSForEachDb: 例子1:exec dbo.sp_MSforeachdb 'select ''?'', * from [?].I

一个非常有用的函数——COALESCE

转:http://blog.csdn.net/dba_huangzj/article/details/8300784 很多人知道ISNULL函数,但是很少人知道Coalesce函数,人们会无意中使用到Coalesce函数,并且发现它比ISNULL更加强大,其实到目前为止,这个函数的确非常有用,本文主要讲解其中的一些基本使用: 首先看看联机丛书的简要定义: 返回其参数中第一个非空表达式 语法: COALESCE ( expression [ ,...n ] ) 如果所有参数均为 NULL,则 CO

SQL中convert()函数使用小结

CONVERT(data_type,expression[,style]) convert(varchar(10),字段名,转换格式) 说明:此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到. 语句 结果SELECT CONVERT(varchar(100), GETDATE(), 0) 07 15 2009 4:06PMSELECT CONVERT(varchar(100), GETD