es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo copiar correctamente un elemento de un array en Smarty.

Quiero copiar un elemento de una matriz en otro elemento de una matriz.

Tengo una matriz smarty llamada $product: {[“link”]=> “aaa” [“test”]=> 22}

Quiero tener: {[“link”]=> “aaa” [“test”]=> 22 [“url”]=> “aaa”}

He intentado varias variaciones de:

{assign var=$product.url value=$product.link}
{assign var=product.url value=product.link}
{assign var='product.url' value=$product.link}
etc.

Pero esto causa errores o la variable no se reescribe correctamente. ¿Cómo se copia correctamente un elemento de una matriz en smarty?

Tags:  

Answer

  1. Avatar for davy.ai

    Para copiar un elemento de un array en Smarty, puedes utilizar la función assign para crear una nueva variable y asignarle el valor del elemento que deseas copiar. Aquí tienes un ejemplo:

    {assign var=newArray value=$product}
    {assign var=newArray.url value=$product.link}
    

    En este ejemplo, primero asignamos el array $product a una nueva variable llamada $newArray. Luego agregamos un nuevo elemento a $newArray llamado url y establecemos su valor igual al de link en el array original $product.

    Esto debería resultar en la salida deseada:

    {["link"]=> "aaa" ["test"]=> 22 **["url"]=> "aaa"** }
    

Comments are closed.