Comunidad PHPeros

Lenguajes => PHP => Tutoriales PHP => Mensaje iniciado por: Klum en 28 de Agosto de 2010, 12:24:50 pm

Título: Tutorial - Arrays Asociativos
Publicado por: Klum en 28 de Agosto de 2010, 12:24:50 pm
Hola PHPeros, estoy estudiando PHP, gracias a Siquillote que me ha pasado unos tutoriales y he visto algo divertido y os lo voy a poner que creo que aún no se encuentra en el foro. Y lo voy a explicar paso por paso para que lo entendais. Igual que lo entendi yo.

ARRAYS ASOCIATIVOS

Lo que vamos a hacer es crear un "array" y vamos a poner unos indices dentro que serian la respuesta del elemento del "array".
Código: [Seleccionar]
<?php
$menu 
= array(
       &
#39;phperos&#39; => &#39;PHPeros, web para aprender, PHP, AJAX, FLASH...&#39;,
   &#39;moderadores&#39; => &#39;Siquillote, TLX, Kevin, ...&#39;,
   &#39;dueño&#39; => &#39;Naveda&#39;
   );
?>

INDICE: 'phperos'
OPERADOR: => (nos servira para relacionar el valor del indice con el elemento)
ELEMENTO: 'PHPeros, web para aprender, PHP, AJAX, FLASH...'

Ya tenemos el array, el indice y el elemento que será la respuesta, ahora hay que haces los  "echos"

Código: [Seleccionar]
  echo '.$menu['phperos']
(así nos saldria: PHPeros, web para aprender, PHP, AJAX, FLASH...)

Ahora, vamos a hacer una frase entera:

Código: [Seleccionar]
  echo '.$menu['phperos'];
            echo '.$menu['moderadores'];
            echo '.$menu['dueño'];

Pero querremos poner palabras, entonces algo cambia, no puedes poner una palabra directa despues del "echo", habria que poner comillas:

 
Código: [Seleccionar]
  echo 'El foro: '.$menu['phperos'];
             echo 'Los moderadores son: '.$menu['moderadores'];
             echo 'Y el dueño es: '.$menu['dueño'];

Ponemos el "echo" luego le ponemos una comilla ' ponemos la frase y al acabarla no hay que poner comilla, ponemos directamente la variable:

Código: [Seleccionar]
'.$menu['phperos']
EL CODIGO COMPLETO SERIA:
Código: [Seleccionar]
<?php
$menu 
= array(
       &
#39;phperos&#39; => &#39;PHPeros, web para aprender, PHP, AJAX, FLASH...&#39;,
   &#39;moderadores&#39; => &#39;Siquillote, TLX, Kevin, ...&#39;,
   &#39;dueño&#39; => &#39;Naveda&#39;
   );

             echo &
#39;El foro: &#39;.$menu[&#39;phperos&#39;];
             
echo &#39;Los moderadores son: &#39;.$menu[&#39;moderadores&#39;];
             
echo &#39;Y el dueño es: &#39;.$menu[&#39;dueño&#39;];
?>

Espero que os haya servido este tutorial, sacado de un video y explicado a texto.
Klum.
Título: Re:Tutorial - Arrays Asociativos
Publicado por: Siquillote en 28 de Agosto de 2010, 12:42:08 pm

;). Un día y ya sabes hacer arrays asociativos. K+ por el tutorial bien pero que bien explicado. ;)
Título: Tutorial - Arrays Asociativos
Publicado por: Guero en 28 de Agosto de 2010, 12:56:28 pm
Buen Tutorial.
+Karma

Un cordial saludo, Guero.
Título: Re:Tutorial - Arrays Asociativos
Publicado por: FeDe en 28 de Agosto de 2010, 17:03:15 pm
Buenas,

Para esto que acabáis de hacer hay una función llamada foreach() y así aprovecho para explicarlo...

Cojamos los array asociativos que has hecho tu...
<?php
$menu = array(
       'phperos' => 'PHPeros, web para aprender, PHP, AJAX, FLASH...',
      'moderadores' => 'Siquillote, TLX, Kevin, ...',
      'dueño' => 'Naveda'
      );

foreach($menu As $campo => $valor) { // para cada uno de $menu como $campo tal que sea $valor) {
print "<b>".$menu."</b>:&nbsp;".$valor."<br>"; // Imprimos en pantalla $menu: $valor.
}

?>

Devolvería:

phperos: PHPeros, web para aprender, PHP, AJAX, FLASH...
moderadores: Siquillote, TLX, Kevin, ...
dueño: Naveda

Espero que lo hayáis entendido.

Un abrazo :)
Título: Re:Tutorial - Arrays Asociativos
Publicado por: javipilo en 28 de Agosto de 2010, 22:01:13 pm
Buenas,

Para esto que acabáis de hacer hay una función llamada foreach() y así aprovecho para explicarlo...

Cojamos los array asociativos que has hecho tu...
<?php
$menu = array(
       'phperos' => 'PHPeros, web para aprender, PHP, AJAX, FLASH...',
      'moderadores' => 'Siquillote, TLX, Kevin, ...',
      'dueño' => 'Naveda'
      );

foreach($menu As $campo => $valor) { // para cada uno de $menu como $campo tal que sea $valor) {
print "<b>".$menu."</b>:&nbsp;".$valor."<br>"; // Imprimos en pantalla $menu: $valor.
}

?>

Devolvería:

phperos: PHPeros, web para aprender, PHP, AJAX, FLASH...
moderadores: Siquillote, TLX, Kevin, ...
dueño: Naveda

Espero que lo hayáis entendido.

Un abrazo :)

Justo te me adelantaste, estaba leyendo el primer mensaje y pensé en ponerlo xD

Saludos
Título: Re:Tutorial - Arrays Asociativos
Publicado por: Klum en 28 de Agosto de 2010, 22:26:26 pm
Si veo alguna cosa mas que no haya por aquí la cuelgo.
Klum.
Título: Re:Tutorial - Arrays Asociativos
Publicado por: Warlox en 29 de Agosto de 2010, 05:42:57 am
Muy buen tutorial, no obstante he descubierto que has tenido unos cuantos errores a la hora de imprimir las variables:

echo '.$menu['phperos'];
echo '.$menu['moderadores'];
echo '.$menu['dueño'];

Sólo para que sepas y no vuelvas a cometer el error, debido a que si no el archivo no funcionaría y daría error; para mostrar una variable no se necesita abrir comillas, de manera que el código te quede de la siguiente manera:

echo $menu['phperos'];
echo $menu['moderadores'];
echo $menu['dueño'];

Sólo quería agregar eso, por otro lado, agrego el enlace a este tema en la lista de tutoriales (http://www.phperos.net/foro/index.php/topic,281.0.html), para un mejor acceso ;)
Saludos ^^
Título: Re:Tutorial - Arrays Asociativos
Publicado por: Klum en 29 de Agosto de 2010, 13:15:37 pm
Lo siento se me habia escapado.
Es que yo queria hacerlo de la manera en que pusiera texto, tienes que abrir comillas

'texto '.$variable['hola'];

Klum.
Título: Re:Tutorial - Arrays Asociativos
Publicado por: Siquillote en 29 de Agosto de 2010, 13:37:40 pm

Un usuario que lleve aquí 3 días y que lleve 22 Karmas es algo que no se ve todos los días. Enhorabuena.
Título: Re:Tutorial - Arrays Asociativos
Publicado por: Klum en 29 de Agosto de 2010, 13:56:43 pm
Un usuario que lleve aquí 3 días y que lleve 22 Karmas es algo que no se ve todos los días. Enhorabuena.
Intento ayudar, eso es todo :)
Klum.