Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

190
Visualizações
Devolver resultados de una función dentro de una variable para cambiar la variable

Estoy tratando de pasar una función a una variable existente para establecer ubicaciones específicas dentro de mi plantilla. Sin embargo, cuando uso el interruptor de función, no obtengo ningún resultado.

 function posicionnavbar($posicion) { switch ($posicion) { case 'top': return 'top'; case 'soc': return 'soc'; case 'nav': return 'nav'; case 'usr': return 'usr'; } }

Y la variable a la que intento agregar.

 $omni[posicionnavbar($tabs['position'])] .= $nuevo_tab;

Más información:

 $tabs['position']

Es superior, soc, nav o usr

 $omni***

Es la variable utilizada dentro de mi plantilla para cada ubicación. IE: $omnitop

He pasado la variable usando $omni .= $nuevo_tab; y usando $omni dentro de mi plantilla para confirmar que todo estaba funcionando, con éxito. Lo que me lleva a que algo esté mal con mi función.

¿Cómo puedo pasar mi función a mi variable para cambiar el nombre de la variable?

los resultados finales generarían uno de los siguientes:

 $omnitop .= $nuevo_tab; $omnisoc .= $nuevo_tab; $omninav .= $nuevo_tab; $omniusr .= $nuevo_tab;
over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Logré resolver esto.

 ${'omni'.posicionnavbar($tabs['position'])} .= $nuevo_tab;

gracias a PHP Cookbook

Al conocer los símbolos adecuados para vincular las variables, me deshice del interruptor y la función por completo. La forma en que tengo esto configurado ${'omni'.$tabs['position']} .= $nuevo_tab; es suficiente para hacer el trabajo.

over 4 years ago · Santiago Trujillo Relatório

0

También puede crear una matriz $omni con claves devueltas por su función. Entonces será más fácil iterar sobre los resultados.

 <?php function posicionnavbar($posicion) { switch ($posicion) { case 'top': return 'top'; case 'soc': return 'soc'; case 'nav': return 'nav'; case 'usr': return 'usr'; } } $tabs['position'] = 'top'; $nuevo_tab = "Something"; $omni[posicionnavbar($tabs['position'])] .= $nuevo_tab; //let's imagine you got the value of $nuevo_tab here (for simulate the loop) $omni['soc'] .= "Something related with soc"; $omni['nav'] .= "Something related with nav"; $omni['usr'] .= "Something related with usr"; foreach ($omni as $key => $value) { echo "\n"; echo "the key {$key} has the value -> {$value}"; }

De todos modos, tu respuesta es válida. El que he propuesto es solo por conveniencia. Por si en el futuro quieres acceder a lo que parecen ser variables que están relacionadas, con un simple bucle

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda