- 博客(30)
- 资源 (8)
- 问答 (1)
- 收藏
- 关注
原创 如何递归转换多维数组为一维
有这样一道笔试题有数组a,结构如下$a=[ 0=>1, 'aa'=>2, 3, 4, 'bb'=>[5,[6,7]]];要求将 $a输出 1,2,3,4,5,6,7思路:先用foreach遍利数组 $rs=[];foreach($a as $k=>$v){ $rs[]=$v; }但是这里略有问题,当$v为数组的时候,不是...
2019-09-25 20:22:31
325
原创 django如何兼容Vue.js之类的模版标签?
django自带的模版标签为{{}}一些前端框架诸如layui,vue之类的模版标记与django冲突。解决办法如下:{% verbatim %}<script id="title"> <a href="/detail/{{d.id}}" class="layui-table-link" target="_blank">{{d.title}}</a...
2019-05-05 17:39:56
525
原创 django如何分页?
1.如何分页?from django.shortcuts import render, get_object_or_404from django.core.paginator import Paginator, EmptyPage, PageNotAnIntegerfrom .models import Articlefrom django.http import JsonRespon...
2019-04-29 17:11:29
167
转载 如何快速找出父ID
无限极分类中,有这样的需求,如何查找当前分类的所有祖先?一般通过递归来实现,但是这里有另外一种方案:id name parent_id---------------------------1 Home 02 About 13 Contact 14 Legal 25 Privacy 46 P...
2019-01-25 20:22:16
648
原创 用数学方法去做面试题之找出数组中2个重复的数字
问题:有这样一个数组,n个元素,n属于[0,n]假设这个数组为$b=[ 1,2,2,3,4,4,5,7,6 ]; // n=7那么结果 很明显,重复的数字是2和4.我们知道 ,1~n 的和为 S=n(n+1)/2 ,乘为P=n!于是 设定重复的数字分别为x,y,数组$b的元素的和为S1,乘积为P1那么存在这样的关系:x+y=S1-S;// 34-28=6x*y=P...
2018-12-05 15:16:52
947
原创 如何更高效的实现php的strrev 函数?
面试题中,经常有这样一道题目:如何实现反转一个字符串?要求不能使用strrev。常规的做法是这样的:function str_rev($string){ $i=strlen($string)-1; $str=''; while (isset($string[$i])){ $str.=$string[$i]; $i--; ...
2018-12-05 10:50:43
394
转载 代码收藏-不用递归的树形数组构造函数
/** * 创建父节点树形数组 * 参数 * $ar 数组,邻接列表方式组织的数据 * $id 数组中作为主键的下标或关联键名 * $pid 数组中作为父键的下标或关联键名 * 返回 多维数组 **/function find_parent($ar, $id='id', $pid='pid') { foreach($ar as $v) $t[$v[$id]] = $v; ...
2018-11-20 15:16:23
217
原创 Mysql中更新 一列后,如何获取更新的值
通常,更新一列后,需要获取更新的值,做法是这样的:update some_table set fields=fields+1 where some_condition=some_value;然后select fileds from some_tables where some_condition=some_value;如果希望合并这两条查询,该如何做呢? UPDATE...
2018-11-14 10:20:08
5067
原创 快速获取PHP数组维数
function countdim($array){ return (reset($array))?(reset($array)) + 1:1 }
2017-07-06 12:10:35
445
原创 php中如何将CSV快速转换成数组?
$array = array_map('str_getcsv', file('user2.csv'));print_r($array);
2017-04-26 14:26:17
509
原创 php截取小数点
通常有这样一个需求,比如计算出来的小数点精确到6位,但是显示给用户的要显示成2位,但是又不希望四舍五入,那么就需要通过截取字符串。mysql中有现成的函数TRUNCATE,PHP里面没有相关的函数,需要自己实现。可以这样写:function truncate($number,$length=2){ return bcdiv($number,1,$length);} ...
2017-01-13 14:47:50
492
原创 PHP计算数组差集
手册中本来有array_diff,但是效率可以改进 function arrayDiffEmulation($arrayFrom, $arrayAgainst){ $arrayAgainst = array_flip($arrayAgainst); foreach ($arrayFrom as $key => $value) { ...
2014-04-18 15:02:04
171
原创 正则一例:给字符加单引号
有字符串 :a,b,c,d 替换成 'a','b','c','d'preg_replace("/\w/","'$0'",'a,b,c,d')javascript版"a,b,c,d".replace(/(\w)/g,function($0){return "'"+$0+"'"})
2014-04-13 21:24:48
694
原创 字符串开头小写变大写
有这样的字符串:“get_post_title”,要变成如此字符 "GetPostTitle"$s = 'get_post_title';echo preg_replace('/(^|_)(\w)/e', 'strtoupper("$2")', $s);或则 preg_replace_callback("/(^|_)(\w)/",function($r){return s...
2014-04-13 20:47:50
221
原创 DOS下递归删除文件和文件夹
//递归删除文件del E:\word\*.bak/s//递归删除文件夹for /r E:\project %a in (.svn\) do @if exist "%a" rd /s/q "%a"
2014-01-28 10:34:54
423
原创 SPL遍历文件夹
$root = 'D:/www/docroot';$iter = new RecursiveIteratorIterator( new RecursiveDirectoryIterator($root, RecursiveDirectoryIterator::SKIP_DOTS), RecursiveIteratorIterator::SELF_FIRST, ...
2013-12-20 13:09:51
162
原创 把ip最后一位数字替换成星号
preg_replace('/((?:\d{1,3}\.){3})\d{1,3}/','$1*','213.133.241.45');
2013-07-23 16:46:47
659
原创 PHP中如何切割中文字符串
preg_split('/(?<!^)(?!$)/u', $string ); 注意,使用时注意编码,UTF-8编码
2013-07-02 10:25:25
318
原创 PHP 大小写互转的代码
$s = 'aGVsqwerqwERWERDDFbG8=';echo preg_replace('/[a-z]/ie', '"$0"^" "', $s); A 二进制内码表示为 01000001a 二进制内码表示为 01100001空格 二进制内码表示为 00100000 所以字母与空格异或后正好是变换大小写 ...
2012-11-21 11:04:20
130
原创 关于mysql_insert_id()返回0的问题
The mysqli_insert_id() function returns the ID generated by a query on a table with a column having the AUTO_INCREMENT attribute. If the last query wasn\'t an INSERT or UPDATE statement or if the mo...
2012-08-29 15:09:41
976
原创 PHP在UTF8编码下去掉全角空格的曲线方法。。。。
找了很多。多是用正则来替换,但是都失败了,无奈想了下一种曲线方式,非常规的方式先看看下面的代码:echo bin2hex(" ");//e38080代码中返回的全角的空格十六进制代码。看看手册中对bin2hex的函数说明 返回 ASCII 字符串,为参数 str 的十六进制表示。转换使用字节方式,高四位字节优先。我们接着看下面的代码:echo bin2hex(" 这个是测试的 ");//20e3...
2012-08-03 19:52:51
217
原创 魔方矩阵的写法
PHP代码<?php /* 对平面魔方的构造,分为三种情况:N为奇数、N为4的倍数、N为其它偶数(4n+2的形式) ⑴ N 为奇数时,最简单 (1) 将1放在第一行中间一列; (2) 从2开始直到n×n止各数依次按下列规则存放: 按 45°方向行走,如向右上 每一个数存放的行比前一个数的行数减1,列数加1 (3)...
2011-02-28 11:15:14
439
原创 php中另一种截取中文字符串的思路
在系统不支持iconv和mb系列的函数的时候,我们就不能和使用mb_substr来截取字符了。参考了discuz的截取字符串的函数和类似的,方法都差不多,都是按照字符来截取,原理是逐字符判断,这里我自己写了个函数。代码不多,如下: function substring($str,$start=0;$length=200,$suffix="..."){ preg_match_...
2010-11-26 14:53:56
109
需要频繁读写缓存,是采用redis还是memcache?
2015-02-27
TA创建的收藏夹 TA关注的收藏夹
TA关注的人