可以从 PHP 类中的 include() 文件访问 $this 吗?

2023-12-25

我正在开发一个 WordPress Widget,所有示例都混合有巨大的 HTML/PHP 块,因此无法阅读,因此为了尝试清理内容,我想将所有 HTML 渲染移至单独的PHP 文件将是include()'d.

这样做的技巧是,我包含的文件似乎无权访问$this我不确定如何解决这个问题。

小部件.php

class Preorder extends WP_Widget {
    ...
    function form() {
        include('form.php');
    }
}

form.php

<p>
   <?php echo $this->get_field_id('title'); ?>
</p>

这导致[31-Aug-2011 19:59:19] PHP Fatal error: Call to a member function get_field_id() on a non-object in ...如此清楚$this不是免费的。我尝试过别名$this到另一个变量&甚至只是为了好玩使用global关键字没有成功。

希望我错过了一些简单的事情。


忘记我正在遍历目录&include-ing 每个 .php 文件,将 form.php 重命名为 form.tmpl 并且似乎可以工作。

Durr.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

可以从 PHP 类中的 include() 文件访问 $this 吗? 的相关文章

随机推荐

  • 如何设计此解决方案来应对来自 Algoexpert.io 的不可施工变更挑战

    我正在解决 algoexpert io 编码挑战 但无法理解标题为 的问题之一的建议解决方案不可施工的改变 这是挑战问题 给定一个正整数数组 表示您的硬币的价值 拥有 编写一个返回最小变化量的函数 最低金额 您cannot创造 给定的硬币可
  • 符号作为变量的值为 void: dired-mode-map

    我正在尝试重新映射 dired 中的一些键 如下所示 add hook dired mode hook lambda require dired define key dired mode map kbd M o nil define ke
  • 获取 Android ProgressBar 中 secondaryProgress 的宽度

    我有一个带有文本的进度条 其中我已经重写了 onDraw 如下所示 Override protected synchronized void onDraw Canvas canvas super onDraw canvas Paint te
  • 两个数据库之间同步

    我有一个也有 Web 界面的应用程序 要求之一是即使没有可用的互联网连接也能够在该应用程序上运行 这些数据库之间是否需要同步 这些数据库应该有相当大的磁盘空间 如果有这样的需求应该怎么做呢 我应该使用什么数据库 目标操作系统是Windows
  • Highcharts 十字准线,轴上带有标签

    是否可以使 highcharts 十字准线在单独标签中的轴上显示实际值 API 中的常规十字线示例不会执行此操作 如果我设置 tooltip crosshairs true true 它没有做我需要的事情 我需要的图表如下所示 这是在 Hi
  • MySQL Looped Join如何测试结果是否完整?

    情况 我有一个 mysql 目录表 每个目录都有一个父目录 存储为parentID 直到根目录的parentID为0为止 E g rowID 1 name Dir1 parentID 0 root directory rowID 2 nam
  • 有什么方法可以预测会话超时吗?

    有没有办法 捕获 会话超时事件 以便在 HttpSession 失效之前检索数据 我们正在实现 Filter 接口 并且在 doFilter 方法中 当会话超时时 我们在登录时存储在会话对象中的用户为 null 提前致谢 您应该能够注册Ht
  • iOS 提交问题与应用内购买

    我已经上传了包含两次应用内购买的应用程序 4 天后 我收到了此消息和 iTunes Connect 状态 您的应用内购买已被退回 您必须修改或删除突出显示的项目 两项应用内购买均以警告标志突出显示 并表示开发人员需要采取行动 关于问题是什么
  • 如何命名构造函数参数和成员变量?

    我在命名类的内部变量时不使用前缀 我知道有些这样做 但我不会开始 你为什么 辩论 我只是更喜欢这样 问题是有时在构造函数中传递相同的参数 我最终对如何命名它们感到困惑 例如 public class SampleClass private
  • 在 SignalR 中序列化/反序列化派生对象

    我将 SignalR 1 1 与 NET 客户端一起使用 我的集线器中有一个方法 它接受 BaseMessage 类的对象并将其广播给所有客户端 public void SendMessage BaseMessage message Cli
  • Android - 如何在代码中设置首选项

    我有一个 Android 应用程序 其中我的首选项位于 XML 文件中 运行良好 我现在想使用代码设置其中一个首选项 而不是显示整个首选项屏幕 我将如何执行此操作 我假设您所指的首选项是指应用程序的首选项 而不是 Android 手机设置
  • Spring Boot 与 Spring Batch 和 JPA 集成

    我正在将 Spring Boot 项目与 Spring Batch 和 Data jpa 项目集成 与作业和数据配置相关的所有内容都是正确的 除了将我的作业编写器结果保存在数据库中 在我读取文件并处理它之后 我无法将其写入 mysql 数据
  • 将整数拆分为其数字 C++

    我正在尝试自学 C 但遇到了一些障碍 问题是我需要取一个整数 将其拆分为数字并获取数字之和并显示它们 Example 输入号码 123456整数中的数字 1 2 3 4 5 6 sum 21 我已经完成了这一切 但是当我将整数撕成数字时 我
  • 如何在android中隐藏光标的特定行

    我有一个光标 它有 40 行 我想在用户选中复选框时隐藏一些行 一种方法是在游标上再次运行查询 但这对我没有帮助 因为条件是由Java完成的 计算余额 有很多逻辑 我需要一些东西来获取当前行 并返回它是否可以显示 任何帮助将不胜感激 我继承
  • 从 ASP.NET 中的代码隐藏推进向导

    我的页面上有一个向导 它有一个 下一步 按钮 当单击页面上的另一个按钮时 我想从代码隐藏中 单击 该按钮 进一步来说 我的页面上有一个按钮有两个功能 单击它后 在回发中 它要么设置重新加载页面并显示弹出窗口所需的代码 要么在认为不需要弹出窗
  • 如何在sql server中的计算字段上设置外键约束?

    表 A 有一个名为 Computed1 的计算字段 它是persisted并且不为空 此外 它总是计算出 char 50 表达式 它也是唯一的并且具有唯一的键约束 表 B 有一个字段 RefersToCompulated1 它应该引用有效的
  • 是否可以使用VBA添加重复部分内容控制部分?

    我已经创建了Word模板重复部分电流控制 RSCC 含有其他内容控制 我还有 Excel 工作簿 其中包含应转到提到的 Word 模板的信息 我想做的事情是创建宏 该宏将使用 Excel 工作簿中选定行的信息填充 Word 模板 每行到新的
  • 如何同时有效地读取两个 BLE 设备的温度?

    首先 我正在使用RxAndroidBLE http polidea github io RxAndroidBle 管理我的 BLE 连接的库 我有两个我想同时读取两者的温度 例如 我想每 500 毫秒读取两个设备的温度 并将其在两个 Tex
  • 在 Firebase 中查询父节点的所有实例中的特定子节点

    我试图弄清楚如果可能的话如何在 Firebase 中父节点的所有实例中查询专门命名的子节点 可以假设查询的所有父节点中都有这个专门命名的子节点 在这个例子中 uid是每个用户的唯一标识符 我正在尝试获取以下列表displayNames us
  • 可以从 PHP 类中的 include() 文件访问 $this 吗?

    我正在开发一个 WordPress Widget 所有示例都混合有巨大的 HTML PHP 块 因此无法阅读 因此为了尝试清理内容 我想将所有 HTML 渲染移至单独的PHP 文件将是include d 这样做的技巧是 我包含的文件似乎无权