Laravel

Cambiar el valor de un parámetro en Laravel

Vamos a personalizar la variable img para almacenar en MySQL

¿Cómo cambiar el valor de un parámetro en Laravel?. En laravel el manejo de formularios es muy dinámico y hay varias formas de enviar datos al controlador. Por lo tanto, en el controlador la variable común a recibir la información seria $request y es declarado en la cabecera de la función.

   public function store(Request $request)
    {
        $input = $request->all();
    }

Ademas, podemos asignar a una variable para almacenar todos los valores de un formulario haciendo uso de $request->all();

Un ejemplo seria lo siguiente:

$input = $request->all();

La variable $input contiene todos los valores del formulario y esta listo para ser almacenado en MySQL a través de los diferentes métodos que posee Laravel, Por ejemplo: create(), update(), save().

¿Cómo cambiar el valor de un parámetro en Laravel?

Si bien, al utilizar $request->all(); nos ayuda a procesar la información de manera eficaz. Sin embargo, si se desea personalizar o cambiar los valores del parámetro se debe de proceder de la siguiente manera.

Por ejemplo vanos a simular que tenemos una imagen y recordemos que las imágenes se debe de procesar de otra manera, es decir, cargar la imagen al disco y almacenar el nombre y ruta en un registro MySQL.

Procesar una Imagen en controlador Laravel

En este ejemplo nuestro input file tendrá de nombre myFile y en el controlador debemos de procesarlo de la siguiente manera.

  • Verificar que el input file no este vacío
  • Asignar un nombre dinámico con la función time()
  • Crear la ruta y nombre de la imagen
  • Mover la imagen hacia una ruta personalizada en el disco
 if ($request->file('myFile') != "") {
      $file = $request->file('myFile'); // Original filename
      $imageName = time() . '.' . $file->getClientOriginalExtension(); //Nombre
      $fileName = '/images/kanban/' . $imageName;
      $file->move(public_path("images/kanban"), $imageName);
  } else {
      $fileName = "";
 }

Personalizar una variable en controlador laravel

EL anterior script PHP ha procesado un input de tipo FILE y procesa solo cuando tenga un valor y no este vacío, caso contrario genera una variable vacía.

La variable que hemos usado se llama $fileName, Ahora viene la personalización en el conjunto de parámetros enviados en $request->all();, veamos un ejemplo.

$input= $request->all();
$input['img'] = $fileName;

En el script anterior hemos creado una personalización de un parámetro en este caso se llama img que vendrá a ser una columna en nuestra tabla MySQL.

Si observamos bien, en la siguiente linea hemos declarado $input['img'] = $fileName; y tiene como valor a $fileName. Por lo tanto, esta variable en lineas arriba ya lo hemos procesado y podemos almacenarlo en nuestra base de datos.

En Resumen

La personalización de valores de parámetros en laravel es muy interactivo y en este articulo lo hemos logrado haciendo un ejemplo de carga de imagen, tanto en el disco y almacenando el nombre en un registro.

Estos cambios de valores en los parámetros no solo pueden ser de imagen, puede ser de cualquier tipo.

Nestor Tapia

Bloggero, amante de la programación PHP, innovador y me fascina compartir información. Desde que conocí el entorno informatico y el internet me llamó la atención la programación, Por tal motivo he creado mi blog BAULPHP.COM para compartir mis experiencias con todos ustedes. ¡Gracias por leerme!.
Botón volver arriba
Esta web utiliza cookies propias para su correcto funcionamiento. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad