2010-10-23 3 views
0

Oui, j'ai cette ligne dans mon premier "upload" cas du commutateur:PHP: utilisation d'une variable dans un autre cas

$ nom_fichier = $ USER. "-". rand (1, 888). ". jpg";

Ensuite, dans mon cas de commutation "crop" (qui prend soin de l'image que vous recadrez), je souhaite remplacer le téléchargé avec le nouveau, simplement en le téléchargeant avec le même nom. Maintenant, je ne peux pas utiliser $ nom_fichier dans le cas "recadrer" alors comment puis-je faire cela?

+1

Cette question n'est pas claire, postez plus de code et exactement ce que vous avez du mal à accomplir. – tplaner

+0

que diriez-vous du code? – teemitzitrone

Répondre

0
$file_name = ""; 

switch ($step_name) 
{ 
    case "upload": 
     $file_name = $USER . "-".rand(1, 888).".jpg"; 
     break; 
    case "crop": 
     //now you can use $file_name because the scope is outside of the switch statement 
     break; 
    default: 
     break; 
} 

Vous devez placer $ file_name dans une autre portée.

+0

donc si j'écho $ nom_fichier dans le cas recadrer, il va afficher 1-888.jpg? (exemple) – Johnson

+0

@ user457827 - Non, non. Avez-vous accepté sa réponse avant même de vérifier si le code est correct? – mellowsoon

+0

Comme mellowsoon a dit, ce ne sera pas. Je n'ai aucune idée de ce que vous essayez d'accomplir en faisant cela. Le meilleur moyen est de créer deux pages php distinctes qui exécutent ces tâches complètement différentes, ou de simplement définir $ nom_fichier lorsque le script PHP commence et l'utiliser pour le reste du script. –

-1

Un commutateur est juste un nombre important d'IF. Avez-vous essayé avec les FI?

+0

Pour l'utilisateur qui a downvoted la réponse, peut expliquer pourquoi? – eKek0

+0

peut-être parce que l'OP a déclaré qu'il utilisait 'switch' /' case' – drudge

Questions connexes