Skip to content

Instantly share code, notes, and snippets.

@raylouis
Forked from daveh/data.php
Created February 28, 2021 22:16
Show Gist options
  • Select an option

  • Save raylouis/7292b9e9de603b72d9d4b27e0a2eca5b to your computer and use it in GitHub Desktop.

Select an option

Save raylouis/7292b9e9de603b72d9d4b27e0a2eca5b to your computer and use it in GitHub Desktop.
Passing data from PHP to JavaScript: methods, their pros and cons, and how to implement them (code to accompany https://youtu.be/u4HmQjLvNe8)
<?php
$name = "David \"Dave\" O'Connor";
header('Content-Type: application/json');
echo json_encode($name);
<?php
$name = "David \"Dave\" O'Connor";
?><!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>PHP Data in JavaScript</title>
<link rel="icon" href="data:;base64,iVBORw0KGgo=">
<meta name="name" content="<?= htmlspecialchars($name) ?>">
</head>
<body>
<h1 data-name="<?= htmlspecialchars($name) ?>">Demo</h1>
<input type="hidden" id="name" value="<?= htmlspecialchars($name) ?>">
<script>
//var name = document.querySelector('input[type="hidden"').value;
//var name = document.querySelector('meta[name="name"]').content;
var name = document.querySelector('h1').dataset.name;
alert('Hello ' + name);
</script>
</body>
</html>
<?php
$name = "David \"Dave\" O'Connor";
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>PHP Data in JavaScript</title>
<link rel="icon" href="data:;base64,iVBORw0KGgo=">
</head>
<body>
<h1>Demo</h1>
<script>
var name = <?= json_encode($name) ?>;
alert('Hello ' + name);
</script>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>PHP Data in JavaScript</title>
<link rel="icon" href="data:;base64,iVBORw0KGgo=">
</head>
<body>
<h1>Demo</h1>
<script>
fetch('data.php')
.then(function(response){
return response.json();
})
.then(function(data){
alert('Hello ' + data);
});
</script>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment