{PHP} 致命错误:不在对象上下文中使用 $this (Joomla)

2023-10-16php开发问题
5

本文介绍了{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.

这篇关于{PHP} 致命错误:不在对象上下文中使用 $this (Joomla)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

The End

相关推荐

PHP实现DeepL翻译API调用
DeepL的翻译效果还是很强大的,如果我们要用php实现DeepL翻译调用,该怎么办呢?以下是代码示例,希望能够帮到需要的朋友。 在这里需要注意,这个DeepL的账户和api申请比较难,不支持中国大陆申请,需要拥有香港或者海外信用卡才行,没账号的话,目前某宝可以...
2025-08-20 php开发问题
168

PHP通过phpspreadsheet导入Excel日期数据处理方法
PHP通过phpspreadsheet导入Excel日期,导入系统后,全部变为了4开头的几位数字,这是为什么呢?原因很简单,将Excel的时间设置问文本,我们就能看到该日期本来的数值,上图对应的数值为: 要怎么解决呢?进行数据转换就行,这里可以封装方法,或者用第三方的...
2024-10-23 php开发问题
287

mediatemple - 无法使用 codeigniter 发送电子邮件
mediatemple - can#39;t send email using codeigniter(mediatemple - 无法使用 codeigniter 发送电子邮件)...
2024-08-23 php开发问题
11

Laravel Gmail 配置错误
Laravel Gmail Configuration Error(Laravel Gmail 配置错误)...
2024-08-23 php开发问题
16

将 PHPMailer 用于 SMTP 的问题
Problem with using PHPMailer for SMTP(将 PHPMailer 用于 SMTP 的问题)...
2024-08-23 php开发问题
4

关于如何在 GoDaddy 服务器中使用 PHPMailer 设置 SMTP 的问题
Issue on how to setup SMTP using PHPMailer in GoDaddy server(关于如何在 GoDaddy 服务器中使用 PHPMailer 设置 SMTP 的问题)...
2024-08-23 php开发问题
17