php弹出第一个数组中,PHP array_search始终返回数组的第一个键
參見英文答案 >
PHP in_array() / array_search() odd behaviour????????????????????????????????????2個(gè)
我最近發(fā)現(xiàn)在我的代碼中使用array_search函數(shù)時(shí)遇到了麻煩.我正在搜索數(shù)組“$allcraftatts”的值為“sharp”.我嘗試通過設(shè)置兩行實(shí)驗(yàn)來隔離問題:
$testcopy=$allcraftatts;
$testsharp=array_search("sharp", $testcopy);
使用“print_r(get_defined_vars());”后來,我得到了這個(gè)結(jié)果:
[testcopy] => Array
(
[0] => 0
[1] => 0
[2] => 0
[3] => 0
[4] => 0
[5] => 0
[6] => Sharp Stone
[7] => Sharp Stones
[8] => stone
[9] => object
[10] => sharp
[11] => hard
[12] => 0
[13] => 0
[14] => 0
[15] => 0
[16] => 0
[17] => 0
[18] => 0
)
[testsharp] => 0
我確保在任何其他時(shí)間都不修改這些變量.
現(xiàn)在,如果我將代碼更改為
$testcopy=$allcraftatts;
unset($testcopy[0]);
$testsharp=array_search("sharp", $testcopy);
它返回“1”.
這讓我相信它總是返回?cái)?shù)組中的第一個(gè)鍵.
它讓我感到困惑!這是一個(gè)讓你害怕語言本身出錯(cuò)的錯(cuò)誤之一.不管這是多么令人懷疑,我實(shí)際上最終還是被迫在那里看錯(cuò)了PHP源代碼,但遺憾的是無法理解它.
看到這是一個(gè)簡單的功能,我絕對(duì)會(huì)被不可避免的簡單回答完全羞辱,但在這一點(diǎn)上,我只想要一個(gè)答案.
總結(jié)
以上是生活随笔為你收集整理的php弹出第一个数组中,PHP array_search始终返回数组的第一个键的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab多变量优化,matlab -
- 下一篇: php简单学生管理系统设计与实现,基于P