如何使用jquery或javascript从php数组中获取值?

问题描述:

I trying to get data from php array and put in java-script variable. Follwoing are the php arrays.

Array Name

Array
(
    [0] => username
    [1] => byusers
)

Array Value

Array
(
    [0] => user
    [1] => 1
)

What I have Try tried

Get php array value in javascript variable

var DATATABLE_SEARCH_NAMES      = new Array( "<?php echo (is_array($DATATABLE_SEARCH_DATA_NAMES)) ? $DATATABLE_SEARCH_DATA_NAMES['names'] : 0;?>");
var DATATABLE_SEARCH_VALUES     = new Array( "<?php echo (is_array($DATATABLE_SEARCH_DATA_VALUE)) ? $DATATABLE_SEARCH_DATA_VALUE['values'] : 0;?>");

我试图从php数组中获取数据并放入java-script变量。 Follwoing是php数组。 p>

数组名称 h2>
 数组
(
 [0] =&gt;用户名
 [1]  ] =&gt; byusers 
)
  code>  pre> 
 
 

数组值 h2>
 数组
(
 [0]  =&gt;用户
 [1] =&gt; 1 
)
  code>  pre> 
 
 

我尝试过的尝试 h2>

获取 javascript变量中的php数组值 p>

  var DATATABLE_SEARCH_NAMES = new Array(“&lt;?php echo(is_array($ DATATABLE_SEARCH_DATA_NAMES))?$ DATATABLE_SEARCH_DATA_NAMES ['names']:0;  ?&gt;“); 
var DATATABLE_SEARCH_VALUES = new Array(”&lt;?php echo(is_array($ DATATABLE_SEARCH_DATA_VALUE))?$ DATATABLE_SEARCH_DATA_VALUE ['values']:0;?&gt;“); 
  code>  
  div>

This should do what you ask, it is just a case of converting the PHP arrays to a form that javascript can understand. You can use json_encode() to do that.

$DATATABLE_SEARCH_DATA_NAMES = array('username','byusers');
$DATATABLE_SEARCH_DATA_VALUE = array('user', 1);

$js1 = json_encode($DATATABLE_SEARCH_DATA_NAMES);
$js2 = json_encode($DATATABLE_SEARCH_DATA_VALUE);

//echo $js1.PHP_EOL;
//echo $js2.PHP_EOL;

echo "<script>
";
echo 'var names = ' . $js1 . ";
";
echo 'var values = ' . $js2 . ";
";
echo "</script>
";

say, you have a PHP array as this:

$arr = array("key1"=>"foo","key2"=>"bar");

the easiest way to put it to javascript is this:

var arr = <?php echo json_encode($arr); ?>;

ending with a JSON object.