Caso você necessite embaralhar os elementos de um array, não é preciso pensar em um algoritmo que faça isso automaticamente. Você pode fazer uso da função shuffle, da seguinte forma:

<?php
$elementos = array('Banana', 'Maça', 'Pêra', 'Abacate', 'Limão', 'Laranja', 'Abacaxi', 'Morango');
shuffle($elementos);
print_r($elementos);
?>

Exibindo a impressão deste código, obtive o seguinte retorno:

Array ( [0] => Pêra [1] => Banana [2] => Maça [3] => Morango [4] => Abacate [5] => Abacaxi [6] => Laranja [7] => Limão )

Executando novamente o código, obtive o retorno:

Array ( [0] => Morango [1] => Limão [2] => Abacate [3] => Laranja [4] => Banana [5] => Pêra [6] => Maça [7] => Abacaxi )

Como é possível notar, a função shuffle realmente embaralha aleatoriamente os elementos.


Outras dicas de PHP


Apagando variáveis de sessão

array_reverse - Invertendo um vetor

array_search - Procurando um item em um array

Capturando a extensão de um arquivo

Capturando dados de um checkbox

Casts - Convertendo tipos de dados

ceil - Arredondando números reais para cima

checkdate - Validando datas no código PHP

Como desabilitar checkbox

Como desabilitar um radiobutton

Como permitir somente o upload de imagens

Como remover espaços em branco de uma string

Como validar o upload de um arquivo via POST

Convertendo caracteres com acento para maiúsculo com mb_strtoupper

Corrigindo a formatação da página para exibir acentos

Corrigindo o erro 'invalid byte sequence for encoding' ao acessar o Postgres

Criando e lendo um cookie em PHP

Criando variáveis de sessão

Date - Exibindo horário em formato hh:mm:ss

define - Criando constantes

Desabilitando as mensagens de Deprecated Functions

empty - Verificando se variável está vazia

Entendendo as diferenças entre os comandos include e require

Entendendo as diferenças entre os comandos include_once e require_once

Exibindo uma imagem após o post

floor - Arredondando números reais para baixo

gettype - Obtendo o tipo de dado de uma variável

Impedindo SQL Injection

Imprimindo Arrays

join - Convertendo um array em string

max - Encontrando o maior elemento de um vetor

min - Encontrando o menor elemento de um vetor

mt_rand - Gerando números randômicos

number_format - Formatando números

Operador ternário

Passando caracteres especiais por GET

Passando dados por QueryString

Permitindo o upload somente de arquivos PDF e do Word

Redirecionando para outras páginas

Removendo acentos em PHP

Removendo cookies em PHP

Retornando para a página anterior

Round - Arredondando números float

Rsort - Ordenando os itens de um vetor em ordem alfabética decrescente

session_write_close - gravando dados e fechando a sessão

shuffle - Embaralhando elementos de um array

Sizeof - Contando os elementos de um vetor

Sort - Ordenando os itens de um vetor

strtolower - Deixando todos os caracteres em minúsculo

strtoupper - Deixando todos os caracteres em maiúsculo

str_replace - Substituindo caracteres em uma string

Trabalhando com datas em PHP

ucfirst - Deixando o primeiro caractere sempre maiúsculo

ucwords - Deixando o primeiro caractere de cada palavra maiúsculo

unset - Excluindo variáveis

unset - Removendo elementos de um array

var_dump - Analisando as variáveis

Você Sabia?

O ábaco é o dispositivo de cálculo mais antigo construído e conhecido pelo homem. Suas formas mais primitivas datam de 400 a.C. e eles foram encontrados na China e na Babilônia. Para saber mais sobre a história dos computadores, clique aqui.


Utilizar seu notebook em camas, sofás ou qualquer superfície macia pode obstruir as entradas e saídas de ar, elevando a temperatura e provocando danos a diversos componentes. Utilize-o sempre sobre uma superfície rígida. Saiba mais aqui.


O filme Mortal Kombat, inspirado no jogo de mesmo nome, faturou 23 milhões de dólares apenas no fim de semana de estreia nos EUA. Ainda sobre este título de sucesso, outra cifra que impressiona é o faturamento ao longo do primeiro ano: 1 bilhão de dólares no mundo todo.


O personagem Mario surgiu pela primeira vez no mundo dos games em um jogo chamado Donkey Kong, lançado em 1981. Mario, que naquela época se chamava Jumpman, não era o personagem principal do jogo, mas ele se tornaria um dos mais famosos personagens do mundo dos games. Saiba mais.


O primeiro jogo a fazer uso de uma Inteligência Artificial foi o Mouse in the Maze, criado em 1955, na União Soviética. Você pode saber mais sobre ele clicando aqui.