xxxxxxxxxx
// PHP is a Server Side Language, and JS is a Client Side Language, so the simple answer is
// you can not "run php in javascript". You CAN, however, use PHP to render an html
// page that includes js code on the server, including php variables, and deliver that page to the client where the javascript will be executed.
PHP Server-side EX:
<!doctype html>
<html lang="en" class="h-100">
<body>
<h1>Hello World</h1>
<script type="text/javascript">
var Javascript_variable = <?php echo $php_variable; ?>;
</script>
</body>
</html>
JS Client-side EX:
<script type="text/javascript">
var Javascript_variable = "some string from the above php variabe";
</script>
xxxxxxxxxx
jQuery.ajax({
type: "POST",
url: 'your_functions_address.php',
dataType: 'json',
data: {functionname: 'add', arguments: [1, 2]},
success: function (obj, textstatus) {
if( !('error' in obj) ) {
yourVariable = obj.result;
}
else {
console.log(obj.error);
}
}
});
xxxxxxxxxx
<?php
header('Content-Type: application/json');
$aResult = array();
if( !isset($_POST['functionname']) ) { $aResult['error'] = 'No function name!'; }
if( !isset($_POST['arguments']) ) { $aResult['error'] = 'No function arguments!'; }
if( !isset($aResult['error']) ) {
switch($_POST['functionname']) {
case 'add':
if( !is_array($_POST['arguments']) || (count($_POST['arguments']) < 2) ) {
$aResult['error'] = 'Error in arguments!';
}
else {
$aResult['result'] = add(floatval($_POST['arguments'][0]), floatval($_POST['arguments'][1]));
}
break;
default:
$aResult['error'] = 'Not found function '.$_POST['functionname'].'!';
break;
}
}
echo json_encode($aResult);
?>