Skip to content Skip to sidebar Skip to footer

Pass Php Arrays To External Javascript File

I've seen some of the questions about the passing PHP arrays to an external JavaScript file, but I can't understand it. I know how to pass PHP arrays to internal JavaScript files b

Solution 1:

use this code, JS File (test.js)

for(var i=0;i<jArray.length;i++){
alert(jArray[i]);
}

PHP File (test.php)

<?php$a = array("Apple","Orange","Grape");
?><scripttype="text/javascript">var jArray =<?phpecho json_encode($a); ?>;</script><scripttype="text/javascript"src="test.js"></script>

Solution 2:

You cant use php code directly in your external js file, the given code is,

<?php$a = array("Apple","Orange","Grape");
    ?> 

  <script type="text/javascript">
      var jArray= <?phpecho json_encode($a); ?>;
      for(var i=0;i<3;i++){
          alert(jArray[i]);
      } 
  </script>

I think you can change the code as, 

   //Declaring the array in php <?php$a = array("Apple","Orange","Grape");
   ?>//Assigning the json encoded format to javascript
  <script type="text/javascript">
      var jArray= <?phpecho json_encode($a); ?>;  
  </script>

  //You can use the jArray in the external js file 
  <script type="text/javascript" src="externaljsfile.js" >

Solution 3:

You can't pass datas to external javascript file like you do to internals.

But, a solution can be :

<scripttype='text/javascript'>// here you retrieve datas from PHP and use them as global from your externalvar myArray = <?phpecho json_encode($a); ?>;
</script><scripttype='text/javascript'src='externalJavascript.js'></script>

Else, a different solution could be getting datas with an AJAX request from your external file.

Post a Comment for "Pass Php Arrays To External Javascript File"