end($array);
$v = pos($array);
if(empty($v))
unset($array[key($array)]);
reset($array);
$v = pos($array);
if(empty($v))
unset($array[key($array)]);
reset($array);
解决方案 »
- 怎样在同一个页面实现简单的email地址验证啊
- php 错误,帮我看下这是什么原因
- 如何读取同一类COOKIE
- 这两天刚刚开始接触PHP,一堆菜鸟问题,请赐教
- PHP 关于UDP传输
- 想判断A中文字符串是否包含在B中文字符串内,有现成函数可用吗?
- 为PHP朋友提高增长率
- http://www.eetchina.com/sub/sub_step1.php?&s_url=http://adwords.google.com/
- 请教400 Bad Request的问题
- 这里人气旺些,在这里发个PHP的请教贴
- 关于用session实现避免表单反复提交的方法
- 急:怎样用sql语句select出这里面最大的一个内容?
array_pop ($name);print_r($name);
他的键(索引)还存在用array_pop要简单些,按你的要求
$v = array_pop ($name);
if(! empty($v))
array_push($name,$v)array_pop和array_push把数组作为堆栈,数组尾为作为栈顶
array_shift和array_unshift以数组首为作为栈顶
$v = pos($array);
if(empty($v))
unset($array[key($array)]);
~~~~~~~~~~~~~~~~~~这一部分为什么不用$v?
reset($array);
if(! empty($v))
array_push($name,$v)
比
end($array);
$v = pos($array);
if(empty($v))
unset($array[key($array)]);
reset($array);
简单?我看应该是下面的简单吧?上面的是要重新堆起来那个数组吧?而下面的可以不管其内容而只把最后一个消掉,效率高一点吧?
方法一
end($array); // 数组指针移到最后
$v = pos($array); // 取数组指针所在元素的值
if(empty($v)) // 判断是否为空
unset($array[key($array)]); // 为空则删除,key($array)取得数组指针所在元素的键。这句等价于:$name=key($array);unset($array[$name]);
reset($array); // 将数组指针移到开始方法二
$v = array_pop ($name); // 弹出栈顶元素
if(! empty($v)) // 判断是否为空
array_push($name,$v) // 不为空则压回堆栈两法效果一样,各人所爱