在php echo中运行php echo?

时间:2015-05-13 07:57:18

标签: php css

我有一个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代码?

谢谢!

3 个答案:

答案 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;}