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");
?>
<script type="text/javascript">var jArray =<?php echo json_encode($a); ?>;</script>
<script type="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= <?php echo 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= <?php echo 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 :

<script type='text/javascript'>
    // here you retrieve datas from PHP and use them as global from your external
    var myArray = <?php echo json_encode($a); ?>;
</script>
<script type='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"