其实我们可以利用array_filter函数轻松去掉多维空值,而数组的下标没有改变,下面是举例用法:
array_filter() 函数用回调函数过滤数组中的元素,如果自定义过滤函数返回 true,则被操作的数组的当前值就会被包含在返回的结果数组中, 并将结果组成一个新的数组。如果原数组是一个关联数组,键名保持不变。
其实我们可以利用array_filter函数轻松去掉多维空值,而数组的下标没有改变,下面是举例用法:
array_filter() 函数用回调函数过滤数组中的元素,如果自定义过滤函数返回 true,则被操作的数组的当前值就会被包含在返回的结果数组中, 并将结果组成一个新的数组。如果原数组是一个关联数组,键名保持不变。
原生态的写法
原始方式:发送header,用附件的表头发送到用户浏览器表示是要下载的,然后读出数据库中的数据,一条一条的解析,写入excel格式的文件中
下面的例子摘取的是wordpress中的一段代码,里面有用到http://input,有需要的可以进一步研究。
if (!isset( $HTTP_RAW_POST_DATA ) ) {
$HTTP_RAW_POST_DATA = file_get_contents('php://input');
}
// fix for mozBlog and other cases where xml isn't on the very first line
if ( isset($HTTP_RAW_POST_DATA) )
$HTTP_RAW_POST_DATA = trim($HTTP_RAW_POST_DATA);
<?php
/**
* Mysqli类
*
* @author 废墟
* @version v1.0 2009-08-18
1、添加数组元素
PHP是一种弱类型语言,这意味着你不需要显示声明一个数组及其大小,相反,你可以同时声明并填充数组。
额外的数组元素可以象下面这样追加:
<?
header("Content-type:image/jpeg");
function read_url(http://pic4.phprm.com/2013/01/22/http://pic4.phprm.com/2013/01/22/$str.jpg.jpg)
{
$file=fopen($str,"r");
while(!feof($file))
{
$result.=fgets($file,9999);
}
fclose($file);
return $result;
js版
<?
$str = " This line containstliberal rn use of whitespace.nn";
//去掉开始和结束的空白
$str = trim($str);
单数组排序
sort函数升序排序
算法的数据库结构设计最为简单。category表中一个字段id,一个字段fid(父id)。这样可以根据WHERE id = fid来判断上一级内容,运用递归至最顶层
我们先查出数组
<?php
//打印一个三角形
for($i=0;$i<=3;$i++)
{
for($j=0;$j<=3-$i;$j++){
echo ‘ ’;
}
for($k=0;$k<=2*$i;$k++)
{
echo “*”;
}
echo ‘<br>’;
}
?>
<?php
//杨辉三角
for($i=0;$i<6;$i++)
{
//第一个和最后一个都为1
$a[$i][0]=1;
$a[$i][$i]=1;
}
for($i=2;$i<6;$i++){
for($j=1;$j<$i;$j++)
{
$a[$i][$j]=$a[$i-1][$i-1]+$a[$i-1][$j];
}
}
for($i=0;$i<6;$i++)
{
for($j=0;$j<=$i;$j++){
echo $a[$i][$j].’ ’;
}
echo ‘<br/>’;
}
?>
<?php
//合并多个数组
function t(){
$c=func_num_args()-1;//返回传递给函数的参数个数
$a=func_get_args();//返回一个数组,包括函数的参数列表
for($i=0;$i<=$c;$i++){
if(is_array($a[$i])){
for($j=0;$j<count($a[$i]);$j++){
$r[]=$a[$i][$j];
}
}else{
die(‘Not a array’);
}
}
return $r;
}
print_r(t(range(1,4),range(1,4),range(1,4)));
?>
<?php
//求牛
function cow($num,$y)
{
for($j=1;$j<$y;$j++)
{
if($j>=4 && $j<15)
{
$num++;
cow($num,$y-$j);
}
if($j==20)
$num–;
}
return $num;
}
echo cow(2,2);
?>
<?php
//顺序查找(数组里查找某个元素)
function seq_sch($array,$n,$k)//在某个位置之前查找某元素(不包括指定位置)
{
$array[$n]=$k;
for($i=0;$i<$n;$i++)
{
if($array[$i]==$k)
break;
}
if($i<$n)
return $i;
else
return -1;
}
$array=array(‘a’,'b’,'c’);
echo seq_sch($array,2,’b');
?>
<?php
function show($i)
{
if($i==1)
return 1;
else
return $i*show($i-1);
}
echo “<br>”;
echo show(3);
?>
<?php
//裴波那挈数列
function b($n)
{
if($n<2)
return $n;
else
return b($n-1)+show($n-2);
}
echo b(2);
?>
我们最常用的是在php程序中设置
<?php
if(!isset($_SESSION['last_access'])||(time()-$_SESSION['last_access'])>60)
$_SESSION['last_access'] = time();
?>