如何在 PHP 中获取 JavaScript 变量310


在某些情况下,您可能需要在 PHP 中访问 JavaScript 变量。以下是如何在 PHP 中获取 JavaScript 变量的多种方法。

使用 () 和 PHP 的 $_GET 变量

一种方法是使用 JavaScript 的 () 函数和 PHP 的 $_GET 变量。以下是如何实现的:

JavaScript:```javascript
// 将 JavaScript 对象转换为 JSON 字符串
const jsonString = ({
name: "John Doe",
age: 30
});
// 将 JSON 字符串发送到 PHP 脚本
= "?data=" + jsonString;
```

PHP:```php
// 获取 URL 中的 GET 参数
$data = $_GET['data'];
// 将 JSON 字符串解码为 PHP 对象
$object = json_decode($data);
// 访问 JavaScript 变量
echo $object->name; // John Doe
echo $object->age; // 30
```

使用 XMLHttpRequest 和 PHP 的 $_POST 变量

另一种方法是使用 JavaScript 的 XMLHttpRequest 对象和 PHP 的 $_POST 变量。以下是如何实现的:

JavaScript:```javascript
const xhr = new XMLHttpRequest();
("POST", "");
("Content-Type", "application/json");
// 将 JavaScript 对象转换为 JSON 字符串
const jsonString = ({
name: "Jane Doe",
age: 25
});
// 发送 JSON 字符串到 PHP 脚本
(jsonString);
```

PHP:```php
// 从 POST 请求中获取 JSON 字符串
$jsonString = file_get_contents('php://input');
// 将 JSON 字符串解码为 PHP 对象
$object = json_decode($jsonString);
// 访问 JavaScript 变量
echo $object->name; // Jane Doe
echo $object->age; // 25
```

直接从 DOM 访问 JavaScript 变量

如果您的 PHP 脚本与 JavaScript 脚本在同一个页面中,您还可以直接从 DOM(文档对象模型)中访问 JavaScript 变量。以下是如何实现的:

PHP:```php
// 获取 JavaScript 全局对象
$jsObject = $this->getPageContext()->getJavaScriptContext();
// 访问 JavaScript 变量
$name = $jsObject->evaluateScript("('name').value");
$age = $jsObject->evaluateScript("('age').value");
// 输出结果
echo "Name: $name";
echo "Age: $age";
```

请注意,这种方法要求 PHP 脚本和 JavaScript 脚本在同一个页面中,并且您需要使用 JavaFX 框架。此外,这种方法可能在所有情况下都不可用,具体取决于您的环境和安全设置。

2024-10-22


上一篇:PHP 数组键值:全面指南

下一篇:PHP 数组中的数组:深入解析多维数组