Je suis un débutant ici, alors excusez-moi, j'utilise return File::put($path , $data);
pour créer un fichier dans un dossier public sur Laravel. J'ai utilisé ce morceau de code de contrôleur j'ai besoin de connaître la valeur de $path
comment cela devrait-il être.
Utilisez public_path()
Pour référence:
// Path to the project's root folder
echo base_path();
// Path to the 'app' folder
echo app_path();
// Path to the 'public' folder
echo public_path();
// Path to the 'storage' folder
echo storage_path();
// Path to the 'storage/app' folder
echo storage_path('app');
Vous pouvez utiliser base_path () pour obtenir la base de votre application - puis ajoutez simplement votre dossier public à celui-ci:
$path = base_path().'/public';
return File::put($path , $data)
Remarque: veillez à ce que très permette aux personnes de télécharger des fichiers dans la racine de public_html. S'ils téléchargent leur propre fichier index.php, ils prendront en charge votre site.
Je sais que c'est un peu tard, mais si quelqu'un d'autre regarde ça, vous pouvez maintenant utiliser public_path (); in Laravel 4, il a été ajouté au fichier helper.php du dossier de support voir ici .
Le meilleur moyen de récupérer votre chemin de dossier public depuis votre config Laravel est la fonction:
$myPublicFolder = public_path();
$savePath = $mypublicPath."enter_path_to_save";
$path = $savePath."filename.ext";
return File::put($path , $data);
Il n’est pas nécessaire d’avoir toutes les variables, mais c’est uniquement à des fins démonstratives.
J'espère que cela vous aidera, GRnGC