为什么 echo 的输出需要单独放在输入字段中占位符字符串的引号中?
Why echo's output needs to be separately put in quotes for placeholder's string in input field?
我正在通过 PHP 回显函数为占位符动态生成一个字符串,如果我不在 PHP 标签周围加上引号,则输出仅采用字符串的第一个单词。为什么这样?
placeholder=<?php echo "Hello World"?>
它仅在输入字段
中输出 Hello
placeholder="<?php echo "Hello World"?>"
(注意 PHP 标签周围的引号)
它在输入字段中输出 Hello World。
输入字段的值属性也是如此。
请注意,对于第一种情况,渲染器将输出
placeholder=hello world
因为没有引号,它会将第一个单词作为占位符的值(但这是一种不好的做法)。
第二种情况很好,因为它有引号
placeholder="hello world"
所以你需要关心你的输出结果如何。
对于第一种情况
placeholder=<?php echo "Hello World"?>
只会像这样输出
placeholder=Hello World
这不是有效的 HTML 格式
但是第二个
placeholder="<?php echo "Hello World"?>"
在这里输入代码会输出
placeholder="Hello World"
这是有效的,所以总是选择第二个。
如果你只是回显一个字符串,你可以这样做
<?="hello world" ?>
这取决于 placeholder
属性的构造方式。
您应该符合将您的值放在引号之间的标准(参见 this example 作为证明)。
如果您希望在值中添加空格,则需要将值放在引号之间。
想象一下当你这样做的时候:
<input type="text" placeholder=<?php echo "Hello World"?> >
您在 HTML 文件中返回:
<input type="text" placeholder=Hello World >
它读取 'Hello' 作为它的值,然后 HTML 将 'World' 视为另一个属性。这就是为什么您需要将您的值放在引号之间以表示整个字符串是 placeholder
属性的一部分。
我正在通过 PHP 回显函数为占位符动态生成一个字符串,如果我不在 PHP 标签周围加上引号,则输出仅采用字符串的第一个单词。为什么这样?
placeholder=<?php echo "Hello World"?>
它仅在输入字段 中输出 Hello
placeholder="<?php echo "Hello World"?>"
(注意 PHP 标签周围的引号)
它在输入字段中输出 Hello World。
输入字段的值属性也是如此。
请注意,对于第一种情况,渲染器将输出
placeholder=hello world
因为没有引号,它会将第一个单词作为占位符的值(但这是一种不好的做法)。 第二种情况很好,因为它有引号
placeholder="hello world"
所以你需要关心你的输出结果如何。
对于第一种情况
placeholder=<?php echo "Hello World"?>
只会像这样输出
placeholder=Hello World
这不是有效的 HTML 格式
但是第二个
placeholder="<?php echo "Hello World"?>"
在这里输入代码会输出
placeholder="Hello World"
这是有效的,所以总是选择第二个。
如果你只是回显一个字符串,你可以这样做
<?="hello world" ?>
这取决于 placeholder
属性的构造方式。
您应该符合将您的值放在引号之间的标准(参见 this example 作为证明)。
如果您希望在值中添加空格,则需要将值放在引号之间。
想象一下当你这样做的时候:
<input type="text" placeholder=<?php echo "Hello World"?> >
您在 HTML 文件中返回:
<input type="text" placeholder=Hello World >
它读取 'Hello' 作为它的值,然后 HTML 将 'World' 视为另一个属性。这就是为什么您需要将您的值放在引号之间以表示整个字符串是 placeholder
属性的一部分。