Alterar uma matriz associativa em uma matriz indexada / obter uma Zend_Table_Row_Abstract como não associativa

StackOverflow https://stackoverflow.com/questions/1065131

Pergunta

Hi lá fora em Stackland. Eu queria saber se havia ou uma função ou uma maneira fácil de mudar uma matriz associativa em uma matriz indexada.

Para elaborar, eu estou usando o Zend Framework, e eu tenho um ponto no meu site onde eu tirar uma linha de uma tabela de SQL como uma matriz associativa. Eu já passou para javascript através de um eco em JSON. No entanto, tenho notado que eu possa ver os nomes das colunas do meu banco de dados em Firebug. Tendo outsiders sabe os nomes de suas tabelas e colunas é uma grande segurança não-não, então eu gostaria de mudá-lo de

SQLarray[user_id]
SQLarray[block_id]
SQLarray[b_price] etc.

para

SQLarray[0]
SQLarray[1]
SQLarray[2] etc.

Existe uma boa maneira de fazer isso?

Ele também iria trabalhar para ser capaz de ter um Zend_Table_Abstract-> fetchAll () retornar uma matriz não-associativa, mas eu não acho que isso é possível. Obrigado pela sua ajuda!

Foi útil?

Solução

É pura ok php?

$array = array_values($array);

Fonte

Outras dicas

função de definir

function array_default_key($array) {
    $arrayTemp = array();
    $i = 0;
    foreach ($array as $key => $val) {
        $arrayTemp[$i] = $val;
        $i++;
    }
    return $arrayTemp;
}

Passe a matriz associativa como um parâmetro e ele irá converter para o índice padrão da matriz. Por exemplo: temos Array('2014-04-30'=>43,'2014-04-29'=>41) após a chamada para a função a matriz será Array(0=>43,1=>41)

.

Você pode usar este simples pedaço de código, se você não quiser usar a função PHP embutido.

$input_array;           // This is your input array
$output_array = [];     // This is where your output will be stored.
foreach ($input_array as $k => $v){
    array_push($output_array, $v);
}
print_r($output_array);
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top