array_push 和 array_pop

今天在做项目的时候遇到了错误,在我本地测试是正确的,但是传到服务器上以后死活就是不正确。

我做的这个模块是夸了两个项目,还不好测试。

在杨光的帮助下找到原因:

为了保证数据传输的正确性,我在第一个项目中加入了一个验证码作为数组的元素传递给第二个项目,使用的是array_push();

我认为是将验证码作为数组的最后一个元素传到第二个项目,

我在第二个项目中用end()获取数组到最后一个元素,然后array_pop();得到最初数据的数组

我用相同的规则在第二个项目中生成验证码和传递过来的验证码比较:得出的验证码是不相等的


原因:我传递的数据数组是用的关联数组,压入最后一个元素的时候没有用键值,在第二个项目弹出最后一个元素的时候实际是弹出了后两个元素。


关键还是要看自己的数据,array_push(),并不一定是在物理内存中在数组的最后一个值,尤其是没有键值的时候。

最后是给每一个元素配键值,类似的array_pop()也是这样的,最好不依赖这样的位置关系。


在Mac下配置vim 

我用vim打开项目的时候总是出现Taglist: Failed to generate tags for /my/path/to/file

查找以后结果是:原来taglist只支持exuberant ctags tool,不支持GNU ctags或UNIX ctags,mac下自带的不是exuberant ctags,所以就会有问题了

用brew 安装ctags就可以来

brew install ctags

在 ~/.vimrc文件中加一行let Tlist_Ctags_Cmd = '/path/to/ctags'就可以了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是在PHP中这些函数的作用与简单用法举例: 1. array_pop():从数组末尾删除并返回最后一个元素。 ```php $arr = array('one', 'two', 'three'); $lastElement = array_pop($arr); echo $lastElement; // 输出:three ``` 2. array_push():将一个或多个元素添加到数组末尾。 ```php $arr = array('one', 'two'); array_push($arr, 'three', 'four'); print_r($arr); // 输出:Array ( [0] => one [1] => two [2] => three [3] => four ) ``` 3. array_unshift():将一个或多个元素添加到数组开头。 ```php $arr = array('two', 'three'); array_unshift($arr, 'one'); print_r($arr); // 输出:Array ( [0] => one [1] => two [2] => three ) ``` 4. array_shift():从数组开头删除并返回第一个元素。 ```php $arr = array('one', 'two', 'three'); $firstElement = array_shift($arr); echo $firstElement; // 输出:one ``` 5. array_unique():移除数组中重复的值,并返回新的数组。 ```php $arr = array('one', 'two', 'two', 'three'); $uniqueArr = array_unique($arr); print_r($uniqueArr); // 输出:Array ( [0] => one [1] => two [3] => three ) ``` 6. array_slice():从数组中取出一段元素。 ```php $arr = array('one', 'two', 'three', 'four', 'five'); $slicedArr = array_slice($arr, 1, 3); print_r($slicedArr); // 输出:Array ( [0] => two [1] => three [2] => four ) ``` 7. array_splice():从数组中移除或替换一段元素,并将被移除的元素替换为新的元素。 ```php $arr = array('one', 'two', 'three', 'four', 'five'); $removedArr = array_splice($arr, 1, 2, array('new')); print_r($arr); // 输出:Array ( [0] => one [1] => new [2] => four [3] => five ) print_r($removedArr); // 输出:Array ( [0] => two [1] => three ) ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值