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

281
Visualizações
Include PHP variables directly into js files

I would like to use js code, which works with php variables. My situation now:

mainFile.php

<?
    
$myPHPvar = 1234;
    
?>

<html>
<body>
MY CONTENT

<script>

var myJSvar = <? echo $myPHPvar; ?>

</script>
<script src="myFile.js"></script>

</body>
</html>

myFile.js

// Here some js code where I access the myJSvar, which was set by $myPHPvar before
console.log(myJSvar);

This works ! But I would like to change this structure. I would like to move the myJSvar definition out from main file into the jsFile.

But If I move this line var myJSvar = <? echo $myPHPvar; ?> into the myFile.js it will not work, because this is not an php file.

Not I thought that this could be a solution:

I rename the myFile.js to myFile.php and change the code like this:

// Here some js code where I access the myJSvar, which was set by $myPHPvar before

<script>
var myJSvar = <? echo $myPHPvar; ?>
console.log(myJSvar);
</script>

and in the mainFile.php I changed <script src="myFile.js"></script> to include('myFile.php');

This works !

BUT: First question of all: Is this a good idea to do it like this? Second: The "problem" now: All my files are now php files, also the files, which includes mainly js code. That's not very beautiful, because now I can't see on the first view, which is an js file and which is a php file.

Thank you for your support !

about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

Using PHP, echo the values to hidden HTML fields on the page.

When you know the page is done loading, read them back out using JavaScript.

Note, Ideally, you'd just make the data a separate AJAX/xhr/fetch call to a URL (JSON or XML formatted data is nice for this), but as a stop-gap, hidden fields will do the trick for basic PHP pages.

Similarly, you can echo some inline JavaScript (tags and all) and reference the variables elsewhere. This approach will work but is often referred to as "spaghetti code" because the intertwined front-end (JavaScript) and back-end (PHP) code makes for tricky debugging and does not scale well to larger code projects... months or years after, developers will find themselves scratching their heads as to where code lives, how it's generated, where new code should be placed, etc.

about 4 years ago · Juan Pablo Isaza Relatório

0

You can do it like this. And there's nothing really wrong with it. You have to bring the data to the client browser somehow. You can do this with: 1. set php variables in the DOM 2. XHR call or 3. cookies

about 4 years ago · Juan Pablo Isaza Relatório

0

This can be achieved by generating the JS file dynamically... You can create a PHP file that would generate the JS dynamically like:

Note: THIS METHOD IS HIGHLY NOT RECOMMENDED. THIS IS FOR YOUR INFORMATION AND KNOWLEDGE ONLY.

myFile.php (The JS equivalent file)

console.log(123)

Your HTML file

<script type="text/javascript" src="a.php"></script>

But this is highly not recommended because JS files are static resources that can be cached. Using this method would request the JS file every time the page loads (where it will only be transferred at first load only if its static).

The best method is to keep the dynamic variables in your HTML and then include your static JS files which will use these variables.

about 4 years ago · Juan Pablo Isaza 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