1、判断是否正确的日期格式

/**
* 是否正确的日期
*
* @access public
*/
private function _isdate($str,$format="Y-m-d H:i")
{
$strArr = explode("-",$str);
if(empty($strArr))
{
return false;
}
foreach($strArr as $val)
{
if(strlen($val)<2)
{
$val="0".$val;
}
$newArr[]=$val;
}
$str =implode("-",$newArr);
$unixTime=strtotime($str);
$checkDate= date($format,$unixTime);
if($checkDate==$str)
{
return true;
}
else
{
return false;
}
}

2、汉字转整型数字,如:三百八十六 转成 386(from:http://blog.csdn.net/sui13725202/article/details/11581989

test();

/**
* 测试
*/
function test() {
echo CnToInt('一'); //
echo CnToInt('十'); //
echo CnToInt('十一'); //
echo CnToInt('一百一十'); //
echo CnToInt('一千零一'); //
echo CnToInt('一万零一百零一'); //
echo CnToInt('一亿一千三百万零三千零一'); //
echo CnToInt('一千万亿'); // 11.0E+15
} /**
* 中文转数字
* @param String $var 需要解析的中文数
* @param Int $start 初始值
* @return int
*/
function CnToInt($var, $start = 0) {
if (is_numeric($var)) {
return $var;
}
if (intval($var) === 0) {
$splits = array('亿' => 100000000, '万' => 10000);
$chars = array('万' => 10000, '千' => 1000, '百' => 100, '十' => 10, '一' => 1, '零' => 0);
$Ints = array('零' => 0, '一' => 1, '二' => 2, '三' => 3, '四' => 4, '五' => 5, '六' => 6, '七' => 7, '八' => 8, '九' => 9, '十' => 10);
$var = str_replace('零', "", $var);
foreach ($splits as $key => $step) {
if (strpos($var, $key)) {
$strs = explode($key, $var);
$start += CnToInt(array_shift($strs)) * $step;
$var = join('', $strs);
}
}
foreach ($chars as $key => $step) {
if (strpos($var, $key) !== FALSE) {
$vs = explode($key, $var);
if ($vs[0] === "") {
$vs[0] = '一';
}
$start += $Ints[array_shift($vs)] * $step;
$var = join('', $vs);
} elseif (mb_strlen($var, 'utf-8') === 1) {
$start += $Ints[$var];
$var = '';
break;
}
}
return $start;
} else {
return intval($var);
}
}

3、生成唯一的值:uniqid

4、中文截取:

function self_substr($str, $len = 12, $dot = true)
{
$i = 0;
$l = 0;
$c = 0;
$a = array();
while ($l < $len)
{
$t = substr($str, $i, 1);
if (ord($t) >= 224)
{
$c = 3;
$t = substr($str, $i, $c);
$l += 2;
}
elseif (ord($t) >= 192)
{
$c = 2;
$t = substr($str, $i, $c);
$l += 2;
}
else
{
$c = 1;
$l++;
}
// $t = substr($str, $i, $c);
$i += $c;
if ($l > $len) break;
$a[] = $t;
}
$re = implode('', $a);
if (substr($str, $i, 1) !== false)
{
array_pop($a);
($c == 1) and array_pop($a);
$re = implode('', $a);
$dot and $re .= '...';
}
return $re;
}

5、二维数组的排序

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];
} $arr = array();
foreach($new_array as $key => $val) {
$arr[] = $val;
}
return $arr;
}

php常用函数集锦[备份用的]的更多相关文章

  1. Matlab常用函数集锦

    ndims(A)返回A的维数size(A)返回A各个维的最大元素个数length(A)返回max(size(A))[m,n]=size(A)如果A是二维数组,返回行数和列数nnz(A)返回A中非0元素 ...

  2. loadrunner常用函数集锦

    一.三个复制函数的区别: strcpy 原型:extern char *strcpy(char *dest,char *src);用法:#i nclude功能:把src所指由NULL结束的字符串复制到 ...

  3. SQL常用函数集锦

    ..STUFF()用另一子串替换字符串指定位置.长度的子串.STUFF (<character_expression1>, <start_ position>, <len ...

  4. ABAP常用函数集锦

    函数名 描述 SD_VBAP_READ_WITH_VBELN 根据销售订单读取表vbap中的信息EDIT_LINES 把READ_TEXT返回的LINES中的行按照TDFORMAT=“*”重新组织VI ...

  5. Oracle常用函数集锦

    1.wmsys.wm_concat函数 将列转为行.例子: --表里的数据如下 SQL> select * from idtable; ID NAME ---------- ---------- ...

  6. C语言图形界面常用函数集锦

    (以下函数均应在图形方式初始之后使用(initgraph(a,b)),在win-tc中使用BGI图形程序模板时,其中已经定义有一个initgr函数,在main函数中应在执行initgr函数之后再使用这 ...

  7. jquery 常用函数集锦

    html() 方法的功能是设置或获取元素中显示的内容css() 方法的功能是设置或获取元素的某项样式属性 $("#61dh a").css('color','#123456'); ...

  8. SQL1-(增删改查、常用函数)

    USE flowershopdb --全球唯一标识符(GUID UUID) SELECT NEWID() --增删改查 --INSERT [INTO] <表名> [列名] VALUES & ...

  9. JS数组常用函数以及查找数组中是否有重复元素的三种常用方法

    阅读目录: DS01:常用的查找数组中是否有重复元素的三种方法 DS02:常用的JS函数集锦 DS01.常用的查找数组中是否有重复元素的三种方法  1. var ary = new Array(&qu ...

随机推荐

  1. [kuangbin带你飞]专题十四 数论基础

            ID Origin Title   111 / 423 Problem A LightOJ 1370 Bi-shoe and Phi-shoe   21 / 74 Problem B ...

  2. Chapter Data Modification & Chapter Data Validation

    Chapter Data Modification XF的数据提交,支持单行.集合和多层次的master-details结构的数据. Create 当提交如下数据 <Job> <Id ...

  3. Microsoft Office 2007的ContentType

    当从浏览器返回一个文件时,需要指定ContentType,以下是Office2007对应的值: "application/vnd.openxmlformats-officedocument. ...

  4. HDU 4770 Lights Against Dudely

    Lights Against Dudely Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Ot ...

  5. Android系统下检测Wifi连接互联网是否正常的代码

    /**  *  * 判断网络状态是否可用  *  * @return true: 网络可用 ; false: 网络不可用  */    public boolean isConnectInternet ...

  6. 腾讯校招技术岗面试经历及总结(已发offer)

    关于笔试:只要前期复习到位,笔试还是很好过的,但是当然 分数 越高越好,否则后面会被面试官鄙视的.题目可能难度较大,但是要把会做的 都做 对,如果时间比较紧可以适度放弃部分不会的题目. 关于面试: 温 ...

  7. Win2D 官方文章系列翻译 - DPI (每英寸点数)和 DIPs(设备独立像素)

    本文为个人博客备份文章,原文地址: http://validvoid.net/win2d-dpi-dips/ 本文旨在解释物理像素与设备独立像素(DIPs, device independent pi ...

  8. <路径算法>哈密顿路径变种问题(2016华为软件精英挑战赛初赛)

    原创博客,转载请联系博主! 前言:几天前华为的这个软件精英(算法外包)挑战赛初赛刚刚落幕,其实这次是我第二次参加,只不过去年只入围到了64强(32强是复赛线),最后搞到了一个华为的一顶帽子(感谢交大l ...

  9. SDUT 2772 数据结构实验之串一:KMP简单应用

    数据结构实验之串一:KMP简单应用 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description 给定两个 ...

  10. C#如何在事件中获得GridView里面TextBox的值

    GridView设置如下: <asp:GridView ID="GridViewlb" runat="server" AutoGenerateColumn ...