Hey! ::)! Bueno pues tengo una duda, nunca antes he trabajado con arrays en PHP y debo aceptar de que son un poco raras xD pero bueno, lo que querría saber es si esto de aquí esta bien declarado:
$notations = array(18) {
[0] => string(1) "R"
[1] => string(1) "U"
[2] => string(1) "L"
[3] => string(1) "D"
[4] => string(1) "F"
[5] => string(1) "B"
[6] => string(1) "R'"
[7] => string(1) "U'"
[8] => string(1) "L'"
[9] => string(1) "D'"
[10] => string(1) "F'"
[11] => string(1) "B'"
[12] => string(1) "R2"
[13] => string(1) "U2"
[14] => string(1) "L2"
[15] => string(1) "D2"
[16] => string(1) "F2"
[17] => string(1) "B2"
}
$scrambles = array(30) {
[0] => ''
[1] => ''
[2] => ''
[3] => ''
[4] => ''
[5] => ''
[6] => ''
[7] => ''
[8] => ''
[9] => ''
[10] => ''
[11] => ''
[12] => ''
[13] => ''
[14] => ''
[15] => ''
[16] => ''
[17] => ''
[18] => ''
[19] => ''
[20] => ''
[22] => ''
[23] => ''
[24] => ''
[25] => ''
[26] => ''
[27] => ''
[28] => ''
[29] => ''
}
Para luego hacer lo siguiente:
for ($i = 0; $i < $total; $i++) {
for ($z = 0; $z < $size; $z++) {
$aaa = rand(0, 17);
$scrambles[$i] = $scrambles[$i] . $notations[$aaa];
}
Output:
CitarParse error: syntax error, unexpected '{' in /home/a7568330/public_html/generate.php on line 7 FUUUCK
Saludos y espero respuestas :)))
Ya arreglé el error :D
Se debía hacer quitando el numero de espacios del array y la llave. Que quedase así:
array(
0 => 'elemento',
1 => "otro elemento",
2 => $elemento_tres,
3 => 'elemento 4'
)
Saludos ;D
Hola, buen día.
Una pregunta, ¿no se puede crear el array sin colocar su subíndice?
Algo así:
// el subindice se crea automaticamente ¿?
$array = array(
'elemento',
'otro elemento',
$elemento_tres,
$elemento_cuatro
)
Y con identificador, sería algo así?
$array = array(
'elemento' => $elemento,
'elemento2' => $elemento2
)
Hola, todo eso es posible pero php es mucho mas flexible, no necesitas declarar el tamaño del indice, de hecho si tu haces un array(18) solo estar{as creando la llave 18 pero la llave del 1 al 17 no existira.
Para las llaves puedes utilizar cualquier valor que sea un string incluyendo caracteres especiales de forma binaria, da igual, no necesariamente deben ser números, de hecho si haces esto: array('a', 'b') php agregara de forma automática los números, array(0) va a valer a.
Para procesar un array no necesitas for, solo utiliza un foreach y asi recorrerás cada llave sin la necesidad de una numeración.
$x = array('a', 'b' => 'd', 18, 32 => 'e', 'f');
echo '<pre>'.print_r($x, true).'</pre><br />';
foreach($x as $variable => $valor){
echo 'variable: '.$variable.' ... valor: '.$valor.'<br />';
}
Mira esto:
http://codepad.org/rDzqZScg
Array
(
[0] => a
[b] => d
[1] => 18
[32] => e
[33] => f
)
variable: 0 ... valor: a
variable: b ... valor: d
variable: 1 ... valor: 18
variable: 32 ... valor: e
variable: 33 ... valor: f
Disculpen las faltas ortográficas o problemas en el código, esque estoy probando la porquería de internet explorer 10 y me modifica el texto sin preguntar.
Muchas gracias por la respuesta WHK, me quedó claro como funciona esto de los arrays en PHP.
Saludos.