当使用php变量时,Html会在正文中打印

时间:2014-04-15 07:53:38

标签: php codeigniter variables

我有一个codeigniter项目(但我不确定它是一个codeigniter问题还是一般的php。)

在我的模板文件中,我写了一些带有php的HTML。

<?php $title = "some value" ?>
<!DOCTYPE html>
<head>
   <title><?php echo $title; ?></title>
   ...
</head>
<body>
...

在doctype之前有一些php逻辑,用于计算head部分中使用的一些变量。到目前为止,这一切都很好。

一旦我现在添加更多的php逻辑,整个头部分就会打印在body标签中,而不是打印在它应该打印的头部。

另外,我在新添加的php逻辑中不使用echo或任何变体,但是有些变量只是随机打印(在body标签的开头)。

出现问题:

  • 头部印在身上
  • 正在使用echo命令打印php变量

3 个答案:

答案 0 :(得分:3)

因为未完成&#39; PHP。您未使用;关闭第一行。

确保在必要时使用;完成所有php行。

例如:

<?php $title = "some value"; ?>
                           ^ make sure you have this

此外,作为它的codeigniter,请尝试在controller中设置这些类型的变量。

例如:

控制器:

$data['title'] = "Some Value";

$this->load->view('index', $data);

然后你可以使用

<title><?php echo $title; ?>

在视图中。

答案 1 :(得分:0)

您是否在体内渲染视图?确保视图不使用布局,否则会在正文中再次渲染头部。

答案 2 :(得分:0)

我在Code Igniter上看到了一些奇怪的行为,例如错误位置的html标签以及标签后显示的奇怪的双引号。

当我发现错误的双重加载同一个常量配置文件时,我解决了:

$this->config->load('italia', TRUE);
$this->data['italia'] = $this->config->item('italia');

删除第二次加载后,所有问题都会消失......