我有一个echo调用输出一些HTML代码,其中一些代码包含一个css,在这个css中我试图执行一些php代码。
在echo
之前设置的变量 $bg = array('bg-01.jpg', 'bg-02.jpg', 'bg-03.jpg', 'bg-04.jpg', 'bg-05.jpg', 'bg-06.jpg', 'bg-07.jpg' );
$i = rand(0, count($bg)-1);
$selectedBg = "$bg[$i]";
然后在回声中:
echo'
<html>
<head>
<title>Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
<link type="image/x-icon" href="test.ico" rel="shortcut icon" />
<style>
html {background:#000;
background: url("<?php echo $selectedBg; ?>") no-repeat fixed 0% 0% / cover #000;}
我已经尝试了几种方法来在回声中运行php但是我失败了,如果我把php放在内部&#39;&#39;&#39;标签页面将无法加载,我在这里做错了什么或者是否无法在php回声中回应新的PHP代码?
谢谢!
答案 0 :(得分:3)
您应该使用string concatenation:
echo'
<html>
<head>
<title>Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
<link type="image/x-icon" href="test.ico" rel="shortcut icon" />
<style>
html {background:#000;
background: url("'.$selectedBg.'") no-repeat fixed 0% 0% / cover #000;}';
答案 1 :(得分:3)
所以实际上存在一种误解:)
由于echo是一个php指令,你不必重新打开并重新关闭php标签(),但你可以简单地使用连接。示例:
echo "Hello there ". $name ." ! How are u ?";
打开和关闭php标签只有在HTML显示中才有用,例如:
<span>Hello <?php echo $name; ?> ! How are u ? </span>
这真的是一些基本的东西,你应该真正习惯它:)
答案 2 :(得分:0)
echo'
<html>
<head>
<title>Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
<link type="image/x-icon" href="test.ico" rel="shortcut icon" />
<style>
html {background:#000;
background: url("'.$selectedBg.'") no-repeat fixed 0% 0% / cover #000;}