У меня очень сложное условие, и я просто не могу придумать логику, которая отлично работает. Вот что мне нужно сделать: Я получаю 10 статей через API, и мне нужно отобразить их в правильном порядке. Проблема в том, что иногда статьи автоматически меняют свой порядок. То, что мне нужно сделать, неважно, изменили ли они свой порядок, или нет, порядок на моей странице остается статичным. , например, если массив ('Itema', 'itemB', 'itemC', 'itemD') становится массив ('itemC', 'Itema', 'itemB', 'itemD')Добавить в личный список массив
Я до сих пор хочу показать в оригинальном порядке, который будет itemA, B, C и D.
Я попытался использовать функцию in_array(), чтобы проверить, есть ли статья, но она, похоже, не работает правильно.
Посмотрите:
$post_array = array();
foreach ($Info AS $key => $post_array){
if (!in_array($Info[$key]->postId, $post_array)){
array_unshift($post_array, $Info[$key]);
echo '<h2>Added</h2>' ;
}else {
echo '<h2>not Added</h2>' ;
}
}
Он всегда показывают добавил, каждый раз, когда я бегу это плюс предупреждение о том,
Предупреждение: array_unshift() ожидает параметр 1, чтобы быть массиву
Предупреждение: in_array() ожидает, что параметр 2 будет массивом
То, что я точно хочу сделать, - сначала добавить все 10 статей в $ post_array, а затем добавить только новую/уникальную статью в $ post_array в начале. И отобразите 10 элементов из $ post_array.
Кроме того, я не думаю, что смог бы достичь того, чего хочу от этого.
Прошу совета.
in_array ожидает массив, также делает un_shift. Помещение foreach в массив 1Dimension делает его строкой. Не массив –