2009-09-09 25 views
1

Je veux faire une condition si la déclaration qui fait celaproblème de base php Je pense que la réponse impliquera des tableaux

if($get_['b']=="1") { 

$offer1a=$offer1XXX; 
$offer1e=$offer1YYY; 

$offer2a=$offer2XXX; 
$offer2e=$offer2YYY; 

$offer3a=$offer3XXX; 
$offer3e=$offer3YYY; 

$offer4a=$offer4XXX; 
$offer4e=$offer4YYY; 

} 

Toute la façon d'offrir # 12. Il semble que beaucoup à écrire. Il y a d'autres valeurs comme $ offer1b que je veux laisser seul. Quelle est la meilleure façon de le faire. Je pense à un tableau, mais je ne suis pas clair sur la façon de le faire.

+0

merci à vous trois! –

Répondre

1

Je suis sûr qu'il ya mille autres optimisations, mais de faire littéralement ce que vous demandez, vous pourrait utiliser une boucle en tant que tel:

if ($_GET['b'] == 1) { 
    for ($k = 1; $k <= 12; $k++) { 
    ${"offer${k}a"} = ${"offer${k}XXXX"}; 
    ${"offer${k}e"} = ${"offer${k}YYYY"}; 
    } 
} 

une meilleure solution serait d'utiliser un tableau au lieu de toutes ces variables individuelles:

for ($k = 1; $k <= 12; $k++) { 
    $offers[$k]['a'] = $offers[$k]['XXXX']; 
    $offers[$k]['e'] = $offers[$k]['YYYY']; 
} 
+0

Merci aux deux autres d'entre vous qui ont donné des solutions, celle-ci a très bien fonctionné. Je perds lentement ma peur des tableaux. –

0

Si vous deviez changer $offer à un tableau, vous pouvez faire quelque chose comme ceci:

if ($get_['b'] == "1") { 
    for ($i = 1; i <= 12; i++) { 
     $offer[$i]['a'] = $offer[$i]['XXX']; 
     $offer[$i]['e'] = $offer[$i]['YYY']; 
    } 
} 
0

Les tableaux sont votre ami:

for ($i = 1; $i <= 12; ++$i) { 
    $offer[$i]['a'] = $offer[$i]['XXX']; 
    $offer[$i]['e'] = $offer[$i]['YYY']; 
} 

Sans voir comment les variables d'offre sont initialement, je ne peux pas aider beaucoup plus loin. Peut-être quelque chose comme ceci:

$offer = array(
    1 => array(
     'a' => "something", 
     'b' => "somethingElse", 
     'XXX' => "blah", 
     'YYY' => "foo" 
    ), 
    array(
     'a' => '...' 
    ) 
); 
Questions connexes