Php 从具有第二个数组位置和长度的数组中获取数组

Php 从具有第二个数组位置和长度的数组中获取数组,php,arrays,Php,Arrays,假设您有20个长度的数组[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19] 你总是需要一个13长度的数组 知道我需要数字14,但不知道20长度数组中14的索引,在13长度数组中有一个位置5 $number = 14; $position = 5; $array = []; for ($i = 1; $i <= 13; $i++){ $array[] = (($number - $position + $i)%20); } $nu

假设您有20个长度的数组
[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19]
你总是需要一个13长度的数组

知道我需要数字14,但不知道20长度数组中14的索引,在13长度数组中有一个位置5

$number = 14;
$position = 5;
$array = [];
for ($i = 1; $i <= 13; $i++){
    $array[] = (($number - $position + $i)%20);
}
$number=14;
$position=5;
$array=[];
对于($i=1;$i这应该可以:

<?php

$input = range(0, 19);
$position = 4;
$number = 2;

$currentNumberPos = array_search($number, $input);
$fromEnd = array_splice($input, min(0, $currentNumberPos - $position), max(0, $position - $currentNumberPos));
$fromStart = array_splice($input, max(0, $currentNumberPos - $position));
$result = array_slice(array_merge($fromEnd, $fromStart), 0, 13);

var_dump($result);

如果它没有索引,那么它就不是数组。你能澄清你的问题吗?实际上删除了我的答案并将其添加到问题中,因为其中仍然存在错误。我是否尝试进一步澄清我的问题?这是什么语言?Php抱歉,我忘记添加该标记了