Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Rispiridon

[Resolvido] array dentro de outro

Recommended Posts

Boa galera, como estão? espero q bem..

 

aqui vai uma dúvida minha q deve ser bem simples mas eu n estou sabendo como fazer

 

tipo eu tenho um array

 

Exemplo

 

$a=array('oi', 'ola', 'tchau');

 

esse array ja existe e na metade do arquivo eu acabo criando uma variavel assim

 

$a[1]="array('tudo bem', 'como vai?');";

 

mas queria q ficasse assim

 

$a=array(oi('tudo bem', 'como vai?'), 'ola', 'tchau');

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem, pelo que eu entendi, creio que você queira um array multidimensional.

 

$array = array(array(), array()); // Isso seria um de duas dimensões
$array[0][0] = "Tudo Bem";
$array[0][1] = "Como Vai?";
$array[1][0] = "Olá";
$array[2][0] = "Tchau";

 

Documentação sobre Array

Compartilhar este post


Link para o post
Compartilhar em outros sites

ver se ajuda

$Array1 = array('ola','tudo bem','tchau');
   foreach($Array1 as $Chave=>$Valor):
       if($Chave==0):
           $Arrayt = array($Valor=>array('ola','tchau'));
       else:
           $Arrayt[] = $Valor;
       endif;
   endforeach;

   print_r($Arrayt);

Compartilhar este post


Link para o post
Compartilhar em outros sites

opa brigado Diegus Miestro e Andrey Knupp

 

Diegus Miestro

acontece que este array vem assim

 

$array=$_POST["array"]; //q possue o valor x||y||z

 

ai eu dou um

 

$array=explode("||",$array)//o q ficaria array(1=>x, 2=>y, 3=>z)

 

pronto ai quero agora q um elemento qualquer (exemplo y) vire um array tbm ai quero adicionar coisas mas tipo

 

no caso o elemento 2 (q poderia ser o 1 ou 3 ou até 5 se tivesse)

 

n perca o valor de y para primeiro array e associado ao y tenho outro array

 

 

tipo

array(1=>x, 2=>y=>array(1=>a,2=>b,3=>c), 3=>z)

 

eu vou fazer isso ficar infinito de acordo com o q o cliente precisar

 

mas primeiro preciso saber como seria a logica de fazer em 2 vezes q to meio perdido

 

 

enfatizando: o valor 2 n pode ser perder(neste caso ainda seria y e associado a ele teria outro array)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, se entendi ...

<?php

   $a = explode( '||' , 'x||y||z' );
   $n = array_combine( array_values( $a ) , array_keys( $a ) );

   // ... 

 

Isso vai gerar ..

array (size=3)
 'x' => int 0
 'y' => int 1
 'z' => int 2

 

Agora você pode acessar esses elementos conforme necessário.

<?php
   // ...

   $n[ 'y' ] = array(
       'k' => 'v'
   );
   var_dump( $n );

 

Vai gerar

array (size=3)
 'x' => int 0
 'y' => 
   array (size=1)
     'k' => string 'v' (length=1)
 'z' => int 2

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nesse caso você deseja uma array de 3 dimensões onde a primeira guarda o 2, a segunda guarda Y e a terceira guarda os valores a, b, c. O problema é que eu acredito que não seja possível da forma como você quer pois estaria mudando o tipo de array o tempo todo, não sou um experiente em desenvolvimento porém eu creio que não seja possível, o que você pode fazer é usar ponteiros, ao invés de se implementar um array dentro de outro você colocaria o endereço do novo array, que nesse caso seria bidimensional. Nunca mexi com Ponteiros em PHP, mas foi a solução que imaginei.

 

No caso a segunda posição do array guardaria o endereço de memória do do array criado e nesse seria guardado os valores que que você precisaria.

 

Uma dúvida, é mesmo necessário tanto dinamismo? Os sistemas funcionam com regras e quando mais interpretativo mais regras e exceções são criadas e mais memória é comida assim como tempo de desenvolvimento.

Compartilhar este post


Link para o post
Compartilhar em outros sites

galera a verdade do problema é o seguinte

 

Sandro Matos

 

Trabalha aqui na empresa comigo e ta precisando fazer um menu automático q ele fez pergunta no link http://forum.imasters.com.br/topic/482726-menu-ul-li/

 

 

ai ele vai fazer o menu automatizado aproveitando o css http://forum.imasters.com.br/topic/276425-menu-drop-down-so-com-css-ate-4-niveis/

 

sendo q iremos automatizar o css tbm mas n vem ao caso...

 

 

eu imaginei q fazendo com array funcionaria mas c alguem tiver uma ideia melhor seria mto bem vinda afinal estamos quebrando a cabeça aqui e não estamos achando o melhor método!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.