Наконец-то я получил решение, и вот мой код. Спасибо всем за помощь.
<?php
session_start();
$array1=array(1,2,3,4,5,6,7,8,9);
$i=0;
if(isset($_SESSION["firstthreeids"])){
$value=$_SESSION["firstthreeids"];
$prevarray=explode(",",$value);
$displayids=array_diff($array1,$prevarray);
}
else{
$displayids=$array1;
}
foreach($displayids as $result){
if($i==3){break;}
$check[]=$result;
$i++;
}
if(count($displayids)==3){
unset($_SESSION['firstthreeids']);
session_destroy();
}
else{
if(isset($_SESSION["firstthreeids"])){
$_SESSION["firstthreeids"]=implode(",",$check).",".$_SESSION["firstthreeids"];
}
else{
$_SESSION["firstthreeids"]=implode(",",$check);
}
}
print_r($displayids);
?>
Тогда вы не хотите перетасовывать его, а просто нарезайте первые 3 элемента из вашего массива и добавьте его в конец. – Rizier123
@ Rizier123, Спасибо за ответ Я объясню, что на самом деле мне нужно. Я формирую массив из результатов mysql, и на первой странице я показываю первые 3 результата. если пользователь обновил страницу, я хочу, чтобы следующие 3 результата отображались на первой странице. – Sree
Ну, тогда вы, вероятно, захотите переписать свой вопрос. Затем вам нужно отслеживать результаты с помощью массива сеансов или чего-то подобного по нескольким запросам. – Rizier123