{PHP} 致命错误:不在对象上下文中使用 $this (Joomla)
我真的不懂 php 并且碰壁了.
i don't really know php and have hit a brick wall.
问题是我的网站显示以下错误...
The problem is that my site is showing the following error...
Fatal error: Using $this when not in object context in /hermes/web07/b2350/pow.thefoodie/htdocs/index.php on line 11
这是我的 index.php 文件的开头...
This is the begining of my index.php file...
<?php
/*
Joomla templates by Joomladesigns.co.uk
*/
// no direct access
define( 'YOURBASEPATH', dirname(__FILE__) );
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" >
<head>
<jdoc:include type="head" />
<!--[if lte IE 6]>
<style type="text/css">
#main_body ul li { behavior: url(<?php echo $this->baseurl; ?>/templates/<?php echo $this->template ?>/css/iepngfix.htc) }
</style>
<script defer type="text/javascript" src="<?php echo $this->baseurl; ?>/templates/<?php echo $this->template ?>/js/pngfix.js"></script>
<![endif]-->
<link href="<?php echo $this->baseurl; ?>/templates/<?php echo $this->template ?>/css/template_css.css" rel="stylesheet" type="text/css" media="all" />
<script type="text/javascript" src="<?php echo $this->baseurl; ?>/templates/<?php echo $this->template ?>/js/fx_styles.js"></script>
<script type="text/javascript" src="<?php echo $this->baseurl; ?>/templates/<?php echo $this->template ?>/js/accordion.js"></script>
<?php
// *************************************************
//
// Template Parameters
//
// *************************************************
$h1 = $this->params->get("logo");
$linked_h1 = ($this->params->get("logoLinked", 1) == 0)?"false":"true";
$h1_title = $this->params->get("logoTitle");
$h2_motto = $this->params->get("logoMotto");
// Please do NOT change this unless you know what you doing.
$template_path = $this->baseurl.'/templates/'.$this->template; // template path
$default_font = "default";
// **************************************************
?>
</head>
任何帮助都会很棒,因为我完全迷失了.
Any help would be great as i am completely lost.
推荐答案
好吧,您只能在类中使用 $this
.在类之外,$this
不应该存在.它基本上引用了您在其中工作的当前类对象.要使其正常工作,您需要将一个变量定义为一个新类,然后通过该变量引用所有内容,例如:
Well you can only use $this
inside of a class. Outside of a class, $this
shouldn't exist. It basically references the current class object that you're working inside of. To get this working properly, you need to define a variable as a new class and then reference everything through that variable, such as:
$myvar = new MyClass();
$h1 = $myvar->params->get("logo");
如果那是你正在做的事情.
If that's the kind of thing you're doing.
相关文章