未设置数组中的键范围

smi*_*ith 3 php arrays key unset

如何在这样的数组中取消70到80之间的一系列键?

[63] => Computer Science and Informatics
[64] => Dentistry
[65] => Development Studies
[66] => Drama, Dance and Performing Arts
[67] => Earth Systems and Environmental Sciences
[68] => Economics and Econometrics
[69] => Education
[70] => Electrical and Electronic Engineering
[71] => English Language and Literature
[72] => Epidemiology and Public Health
[73] => European Studies
[74] => French
[75] => General Engineering and Mineral & Mining Engineering
[76] => Geography and Environmental Studies
[77] => Geography and Environmental Studies
[78] => German, Dutch and Scandinavian Languages
[79] => Health Services Research
[80] => History
[81] => History of Art, Architecture and Design
[82] => Iberian and Latin American Languages
[83] => Infection and Immunology
[84] => Italian
[85] => Law
[86] => Library and Information Management
[87] => Linguistics
[88] => Mechanical, Aeronautical and Manufacturing Engineering
[89] => Metallurgy and Materials
[90] => Middle Eastern and African Studies
Run Code Online (Sandbox Code Playgroud)

jtm*_*jtm 10

你可以尝试array_slice

$return = array_slice($original, 0, 60)
Run Code Online (Sandbox Code Playgroud)

然后

$return = $return+array_slice($original, 70)
Run Code Online (Sandbox Code Playgroud)

要么

array_splice

$return = array_splice($original, 60, 10)
Run Code Online (Sandbox Code Playgroud)

  • 这有效,但效率很低.除了您开始使用的阵列之外,您还要创建3个阵列. (3认同)

rye*_*guy 9

这没有真正的捷径:

for ($i = 70; $i <= 80; $i++)  
    unset($array[$i]);
Run Code Online (Sandbox Code Playgroud)

  • 这有点令人失望,所有的PHP程序员总是会问,如果有一个for(//foreach()循环就可以了,它有什么功能可以做一些奇怪的利基. (2认同)