不使用 Composer 安装 PHPMailer

2023-12-04

请原谅我的无知。 我正在尝试在 Linux 上的 PHP 5.6 下安装 PHPMailer 6.0.1。 我的 PHP 安装是远程的,我通过 FTP 管理所有网站的 PHP(我通常将软件包作为 .zip 下载到 Win 10,解压,然后将结果通过 FTP 传输到我的网站空间)。

在安装 PHPMailer 的各种方法中,Composer 是首选,但这就是我遇到困难的地方。 Composer 指令似乎都不适合这种工作方式 - 安装程序希望我“选择您想要使用的命令行 PHP”,但我本地没有 PHP ... 令人烦恼的是,我看到 PHPMailer 的composer.json 文件已安装等待使用。 但没有 PHPMailerAutoload.php (这是由 Composer 创建的?)

所以我尝试手动安装 PHPMailer。我下载、解压并通过 FTP 将生成的目录上传到我的网站空间的 PHPMailer 文件夹中。然后,我在 PHP 代码的开头和任何函数之外插入以下内容:

require_once 'PHPMailer/src/PHPMailer.php';
require_once 'PHPMailer/src/SMTP.php';
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;

使用“use”语句时出现语法错误意外的“使用”(T_USE)…… 没有它们,我只能尝试实例化: $mail = 新的 PHPMailer; 但这失败了,找不到“类‘PHPMailer’”

我做错了什么,我怎样才能做得更好?


这并不是 PHPMailer 所特有的 - 这是您使用任何使用命名空间的无数 PHP 包时需要执行的操作。 PHP 文档介绍了如何使用use are here.

简短的版本是,你需要把namespace and use指令位于任何其他脚本之前,因此如果您只需颠倒命令的顺序,它应该可以工作:

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;
require_once 'PHPMailer/src/PHPMailer.php';
require_once 'PHPMailer/src/SMTP.php';

顺便说一句,这是 PHPMailer 自述文件中的示例以及 PHPMailer 提供的所有其他示例中使用的顺序。你可能会发现升级指南也很有用。

The PHPMailerAutoload.php文件不再存在 - 作曲家的自动加载器做得更好。 PHPMailer 自己的composer.json文件用于解决应用程序自己的 Composer 文件的依赖关系和标记兼容性要求,也就是说,它用于告诉项目的 Composer 文件如何使用 PHPMailer – 但不是项目的 Composer 文件本身 – 您加载的每个包都会有自己的。

在没有本地 PHP 实例的情况下进行开发是一项艰苦的工作——我们可以说,在实时服务器上进行开发是“令人沮丧的”!如果您无法直接安装 PHP,请使用 Docker、VirtualBox 或完全独立的 XAMPP 之类的工具在容器或虚拟机中运行它。

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

不使用 Composer 安装 PHPMailer 的相关文章

  • 显式删除会话cookie会产生什么影响?

    我使用 php session 来维护用户的会话 Session 在登录后创建 在注销或超时后销毁 我需要管理面板中的一个选项来强制注销任何用户 如果他在网站上处于活动状态 我怎样才能做到这一点 我正在考虑删除临时会话文件 这应该有效地破坏
  • 谷歌日历手表过期时间超过1个月怎么办?

    我将我的 CRM 系统与 Google 日历同步 为此 我要求push notifications从我的用户 Google 日历到我的系统 我已经成功创建了手表 并将过期时间设置为2030年 但是当我收到手表事件的响应时 它显示手表的过期时
  • 获取今天的科普特日期

    我正在寻找获取今天的科普特日期与任何代码类型类似php or javascript在我的网站标题中显示科普特日期 我需要阿拉伯语或英语版本 我试图找到它 但没有找到类似的英文内容 参考 http www copticchurch net e
  • 垃圾邮件打败了我所有的验证码

    我有一个 WordPress 博客 我在上面使用验证码插件的时间最长 因为它有效 最近我收到了大量的垃圾邮件 然后我尝试执行通过 PHP 生成的 将这些随机数添加在一起 但仍然没有成功 我不太确定需要做什么来阻止这些垃圾邮件 但这很烦人 我
  • PHP 从命令行启动 gui 程序,但 apache 不启动

    首先 我阅读了有类似问题的人的一些帖子 但所有答案都没有超出导出 DISPLAY 0 0 和 xauth cookies 这是我的问题 提前感谢您的宝贵时间 我开发了一个小库 它使用 OpenGL 和 GLSL 渲染货架 过去几天我将它包装
  • 如何仅删除页面的自动段落格式,而不删除帖子的自动段落格式(WordPress)

    我已经熟悉这个在 WordPress 中删除自动段落格式的小技巧 remove filter the content wpautop remove filter the excerpt wpautop 但是添加这个函数 php删除整个网站的
  • 在 Laravel 中的编辑表单上获取选定选项

    我的网站订单有一个可编辑的表单 并且有以下字段 User quantity note status 我在此表单中还有其他选项 但只有这些字段对我来说很重要 以便能够获取默认值 例如 我希望能够查看用户默认订购的数量 然后我可以更改它或保留它
  • php基于onclick函数输入日期类型

    用户选择日期 月份和年份 然后按一个按钮 根据他选择的日期向他显示数据库的值 不知道代码问题出在哪里
  • div 中的文本字符有限,添加“阅读更多”链接并在单击链接时显示所有字符

    我有一个 div 里面有文本 使用 PHP 和 MySQL 显示 结构如下 div class description p Here is a lot of text p div 我想在 p 标签内的文本超过 100 个字符时显示 阅读更多
  • PHP 的脚手架 [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 PHP 中有什么东西可以像 Rails 一样创建基本的脚手架吗 编辑 我需要一些东西来快速原型化 一些框架比如Symfony http www sym
  • Cakedc.users => 总是重定向到主页

    我在新的 Cakephp 安装上使用插件 CakeDC Users 我有两个控制器 PagesController php CardsController php Pages 有 1 个操作 Beta 它是主页 Cards 有两个操作 索引
  • PHP DOM - 剥离 span 标签,保留其内容

    我希望采用如下标记 span class test Some text that is strong bolded strong and contains a a href link a span 并在 PHP 中找到剥离跨度的最佳方法 剩
  • json_encode 返回 NULL?

    由于某种原因 项目 描述 返回NULL使用以下代码 这是我的数据库的架构 CREATE TABLE staff id int 11 NOT NULL AUTO INCREMENT name longtext COLL
  • 如何使用 jQuery Ajax 将 PHP 数组值传递到另一个文件?

    这是我的代码
  • PHP 脚本不断执行 mmap/munmap

    我的 PHP 脚本包含一个循环 它只不过是回显和取消引用指针 如 tab othertab i gt 中的内容 直到昨天 这个脚本开始变得非常慢 比以前慢了 50 倍 之前 它一直运行良好 使用 strace 后 我发现 90 的情况下 脚
  • PHP LDAP 查询获取特定安全组的成员

    我正在努力让 LDAP 查询工作来为我提供安全组的成员 我们的活动目录结构设置为 DC domain DC co dc uk然后 我们有一个名为 公司用户 的 OU 其中有一个用于 IT 和标准的 OU 在这些中我们创建了用户 所以我被设置
  • 设置大型电子邮件通知系统有哪些方法?

    我的公司有一个用 PHP 构建的网站 我们使用内置的 PHP 电子邮件功能每天向订阅者发送数千封电子邮件 这是一个糟糕的主意 它堵塞了我们的服务器 并且需要几个小时才能完成整个批次 现在我已经研究过像 MailChimp 这样的群发邮件服务
  • 为什么这评估为 true

    为什么这评估结果为真
  • 点击 %40 变为 %2540

    当单击包含 符号的链接时 该网址给我 40 这就是我想要的 但是一旦我点击它 一秒钟后它就在我点击后变成了 2540 单击是在电子邮件内 然后定向到网站 其中 40 更改为 2540 我怎样才能让它停止变化 它现在得到这样的参数 email
  • 通过 Sparkpost 发送 iCal 邀请

    我正在尝试使用 SparkPost 通过电子邮件以附件形式发送日历邀请 但收到电子邮件后邀请不会打开 我使用两个文件 calendarinvite php 来创建邀请 使用 Sendemail php 来发送电子邮件 calendarinv

随机推荐

  • WooCommerce 3.5.4 和 WordPress 5.0.3 REST API:图像上传损坏 (woocommerce_product_invalid_image_id)

    我正在使用 REST API v2 此代码在旧版本的 WordPress 和 WooCommerce 上运行良好 我无法将图像上传到产品 升级后我遇到的第一个错误是 array code gt woocommerce product ima
  • 如何在每个月的第一个星期四安排一个 cron

    我需要安排一个 cron 作业在每月第一个星期四下午 3 00 运行 我怎样才能做到这一点 我读过另一个与此类似的主题 但它是针对每个月的第一个星期日的 我如何修改它以满足我的需要 请不要让我参考任何手册 因为它们对我没有任何帮助 这就是我
  • c# - 如何向资源添加字符串?

    如何将字符串添加到资源中 因此 当我重新启动程序时 该字符串应该位于资源中 添加后我怎样才能得到它 例如 textBox1 Text string that I ve added 谢谢 资源并不是解决您问题的正确解决方案 它们旨在提供各种
  • 使用 Ion Auth 在 Codeigniter 中创建用户角色和配置文件

    我使用 Codeigniter 和 Ion Auth 进行用户管理 我想创建两种不同的用户角色 一种用于志愿者 一种用于组织 我知道我可以使用 Ion Authgroups对于访问控制之类的事情 但是向不同用户类型添加字段的好方法是什么 例
  • 重用数据库连接

    到目前为止 每当我查询数据库时 我都会打开一个与数据库的新连接 如何实现一旦打开连接就可以重用该属性 完成此操作后 请告诉我是否可以泄漏资源 基本上你需要 JDBC 连接池 通常实现DataSource界面 看一下dbcp and c3p0
  • Django 迁移错误 _mysql_exceptions.ProgrammingError: (1064, "您的 SQL 语法有错误

    TL DR python版本冲突 我认为我下载并编译的python 3 6 无法使用这个包 libmysqlclient dev 来迁移到mysql 只有系统默认的python 3 4 可以 我的 ubuntu 服务器附带了 python
  • PHP 内置服务器给出“CLI 已停止工作”

    我正在尝试使用 PHP 内置服务器功能php S localhost 8888为我的项目运行测试服务器 当我使用它时 出现错误 在事件日志中 出现以下错误 Faulting application name php exe version
  • php shell_exec touch 重定向和 adduser

    我试图最终使用 phpshell exec功能创建新的 Linux 用户 然而 即使进行调试 我也遇到了问题 这是我的代码
  • iOS 验证开发者的应用商店购买 ID

    如何从用户的订单列表中检查用户发送给我的购买 ID 例如 他可以发送类似以下内容的内容 M1VYXX7VX7 如应用程序商店中他的购买列表中所写 并要求退回他的购买内容 可能是他意外删除了他的应用程序 但是当我在代码中获取订单信息时 通过S
  • 如何在不使用 cron 作业的情况下在谷歌云中安排 python 脚本?

    我有两个 python 脚本在我的本地环境中每天运行一次 一是获取数据 二是格式化数据 现在我想将这些脚本部署到 Google 的云环境并每天运行一次 两次 我可以使用 Google Cloud Function 执行此操作还是需要 App
  • 使用route-helper将查询参数添加到现有参数中

    我使用路线助手 route routename 在我的 Blade 模板文件中过滤和 或排序页面的结果 将参数附加到前面的参数的最简单方法是什么 举个例子 我访问页面 category1并查看一些产品 现在我使用排序将 URL 更改为 ca
  • 使用 R 和 ggplot2 语法将自定义工具提示添加到绘图中

    我正在尝试使用 ggplot 对象从 R 创建一个绘图 该对象具有自定义标签 library devtools install github ropensci plotly library plotly set credentials fi
  • PHP脚本将大文本文件分割成多个文件

    我正在努力创建一个 PHP 脚本来帮助根据行数将一个大文本文件拆分为多个较小的文件 我需要增加分割的选项 因此第一个文件从 10 行开始 第二个文件从 20 行开始 依此类推 这是我的脚本中的一个函数
  • Obj-C @synthesize [重复]

    这个问题在这里已经有答案了 可能的重复 在 Objective C 中使用下划线作为属性名称前缀 iPhone 应用程序开发初学者在这里 in h property nonatomic retain IBOutlet UILabel det
  • 为什么第 n 个子选择器不起作用?

    我正在使用nth child选择器为不同的社交图标添加背景图像 然而 所有图标看起来都是一样的 我究竟做错了什么 social logo display inline block width 24px height 24px transit
  • jQuery 中的鼠标滚轮问题

    我在头部有以下代码 jQuery function box bind mousewheel function event delta var dir delta gt 0 Up Down vel Math abs delta alert d
  • 调整图像内容大小但保持图像尺寸

    我正在尝试使用 PyGame 在 Python 中制作一个基本的 Pokemon 副本 我过去遵循过一些有关该库的教程 因此 对于这个项目 我将有一个基本的瓦片结构 要么是草 要么是水 玩家不能在水方块上移动 但可以在草方块上自由移动 我通
  • AspNetCompiler MSBuild 任务中的虚拟路径 - 它是否必须等于最终部署的虚拟路径?

    这是 VS 2008 和 Net 3 5 我使用自定义部署项目脚本 该脚本类似于发布右键单击菜单 但我已对其进行了自定义以执行文件重命名和各种其他零碎操作 它工作得非常好 并且大大简化了发布程序 本周末我发现我们的一个实时网站存在一个问题
  • 在 AJAX 之前我需要学习 Javascript 还是 AJAX 不需要 Javascript 知识? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 我想知道是否值得先学习javascript AJAX 是否需要 JavaScript 或者只是标记语言的相似之处 你绝对应该学习 javascript 而且因为AJAX是用javascri
  • 不使用 Composer 安装 PHPMailer

    请原谅我的无知 我正在尝试在 Linux 上的 PHP 5 6 下安装 PHPMailer 6 0 1 我的 PHP 安装是远程的 我通过 FTP 管理所有网站的 PHP 我通常将软件包作为 zip 下载到 Win 10 解压 然后将结果通