在 HTML 文本输入表单值属性中使用 PHP 二维数组变量


Use PHP 2D array variable in HTML text input form value-attribute

我正在尝试输入一个 PHP 2D 数组变量作为 HTML 中文本输入表单的值属性。

这是我正在尝试做的:

<?php
$test = array(array());
$test[0][0] = 123;
echo <<<_END
<html>
<head>
<body>
<form action = "test.php">
<input type = "text" value = "$test[0][0]">
</form>
<body>
<head>
<html>
_END;
?>

我收到一条警告:注意:第 12 行"路径"中的数组到字符串转换,表单只显示数组[0]。

这是怎么回事?应该如何做到这一点才能获得正确的结果?

用大括号括住变量。所以:

echo <<<_END
<html>
<head>
<body>
<form action = "test.php">
<input type = "text" value = "{$test[0][0]}">
</form>
<body>
<head>
<html>
_END;

最佳做法是用大括号将字符串内部使用的变量括起来。尤其是数组变量。这告诉 php 变量名是大括号之间的所有内容。