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