Repository Analysis

PHPMailer/PHPMailer

The classic email sending library for PHP

7.8 Low AI signal View on GitHub
7.8
Adjusted Score
7.8
Raw Score
100%
Time Factor
2026-05-21
Last Push
22,163
Stars
PHP
Language
22,043
Lines of Code
154
Files
152
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 0HIGH 0MEDIUM 1LOW 151

Pattern Findings

152 matches across 4 categories. Click a row to expand file-level details.

Hyper-Verbose Identifiers81 hits · 82 pts
SeverityFileLineSnippet
LOWtest/PHPMailer/AddStringEmbeddedImageTest.php32 public function testHtmlStringEmbedNoName()
LOWtest/PHPMailer/AddStringEmbeddedImageTest.php130 public function testFailToAttachException(
LOWtest/PHPMailer/FileIsAccessibleTest.php82 public function testFileIsAccessibleFailsOnUnreadableFile()
LOWtest/PHPMailer/AddStringAttachmentTest.php33 public function testAddPlainStringAttachment()
LOWtest/PHPMailer/AddStringAttachmentTest.php118 public function testFailToAttachException(
LOWtest/PHPMailer/CustomHeaderTest.php37 public function testAddAndGetCustomHeader($headers, $expected = null)
LOWtest/PHPMailer/CustomHeaderTest.php67 public static function dataAddAndGetCustomHeader()
LOWtest/PHPMailer/CustomHeaderTest.php163 public function testAddCustomHeaderInvalid($name, $value = null)
LOWtest/PHPMailer/CustomHeaderTest.php173 public static function dataAddCustomHeaderInvalid()
LOWtest/PHPMailer/CustomHeaderTest.php217 public function testClearCustomHeaderValue()
LOWtest/PHPMailer/CustomHeaderTest.php259 public function testInvalidHeaderException()
LOWtest/PHPMailer/DSNConfiguratorTest.php94 public function testConfigureSmtpWithoutAuthentication()
LOWtest/PHPMailer/DSNConfiguratorTest.php108 public function testConfigureSmtpWithAuthentication()
LOWtest/PHPMailer/DSNConfiguratorTest.php125 public function testConfigureSmtpWithoutPort()
LOWtest/PHPMailer/DSNConfiguratorTest.php153 public function testConfigureSmtpsWithoutPort()
LOWtest/PHPMailer/DSNConfiguratorTest.php173 public function testConfigureWithUnknownOption()
LOWtest/PHPMailer/NormalizeBreaksTest.php94 public function testNormalizeBreaksWithCustomLineEnding()
LOWtest/PHPMailer/MailTransportTest.php129 public function testMailSendWithSendmailParams()
LOWtest/PHPMailer/MailTransportTest.php159 public function testSendmailSendWithSendmailParams()
LOWtest/PHPMailer/DKIMWithoutExceptionsTest.php37 public function testDKIMSignOpenSSLNotAvailable()
LOWtest/PHPMailer/PunyencodeAddressTest.php38 public function testPunyencodeAddressConversion($input, $charset, $expected)
LOWtest/PHPMailer/PunyencodeAddressTest.php54 public static function dataPunyencodeAddressConversion()
LOWtest/PHPMailer/PunyencodeAddressTest.php92 public function testPunyencodeAddressNoConversion($input, $charset, $expected)
LOWtest/PHPMailer/PunyencodeAddressTest.php111 public static function dataPunyencodeAddressNoConversion()
LOWtest/PHPMailer/SetFromTest.php106 public function testSetFromDoesNotOverruleSenderWithAutoFalse()
LOWtest/PHPMailer/SetFromTest.php117 public function testSetFromDoesNotOverruleExistingSender()
LOWtest/PHPMailer/SetFromTest.php159 public function testInvalidAddressException($address, $name = '')
LOWtest/PHPMailer/EmptyMailerTest.php30 public function testSendWithEmptyMailerDoesNotCrash($mailer)
LOWtest/PHPMailer/ValidateAddressTest.php73 public function testPatternsInvalidAddress($pattern)
LOWtest/PHPMailer/PHPMailerTest.php45 public function testMultiplePlainFileAttachment()
LOWtest/PHPMailer/PHPMailerTest.php69 public function testRejectNonLocalFileAttachment()
LOWtest/PHPMailer/PHPMailerTest.php622 public function testEmbeddedImageCustomCidDomain()
LOWtest/PHPMailer/PHPMailerTest.php862 public function testAddAttachmentEncodingException()
LOWtest/PHPMailer/PHPMailerTest.php873 public function testAddFolderAsAttachment()
LOWtest/PHPMailer/PHPMailerTest.php887 public function testDeletedAttachmentException()
LOWtest/PHPMailer/PHPMailerTest.php902 public function testDeletedAttachmentError()
LOWtest/PHPMailer/PHPMailerTest.php1236 public function testStrangeUnicodeEmailAddresses()
LOWtest/PHPMailer/PHPMailerTest.php1249 public function testAutomaticEaiValidation()
LOWtest/PHPMailer/DKIMTest.php54 public function testDKIMBodyCanonicalization()
LOWtest/PHPMailer/DKIMTest.php89 public function testDKIMHeaderCanonicalization()
LOWtest/PHPMailer/DKIMTest.php126 public function testDKIMOptionalHeaderFieldsCopy()
LOWtest/PHPMailer/DKIMTest.php247 public function testDKIMSignOpenSSLNotAvailableException()
LOWtest/PHPMailer/ReplyToGetSetClearTest.php40 public function testAddReplyToValidAddressNonIdn($address, $name = null, $expected = null)
LOWtest/PHPMailer/ReplyToGetSetClearTest.php86 public static function dataAddReplyToValidAddressNonIdn()
LOWtest/PHPMailer/ReplyToGetSetClearTest.php125 public function testAddReplyToInvalidAddressNonIdn($address)
LOWtest/PHPMailer/ReplyToGetSetClearTest.php147 public function testAddReplyToInvalidAddressNonIdnException($address)
LOWtest/PHPMailer/ReplyToGetSetClearTest.php161 public static function dataAddReplyToInvalidAddressNonIdn()
LOWtest/PHPMailer/ReplyToGetSetClearTest.php181 public function testReplyToInMessageHeader($addresses, $expected)
LOWtest/PHPMailer/ReplyToGetSetClearTest.php207 public static function dataReplyToInMessageHeader()
LOWtest/PHPMailer/ReplyToGetSetClearTest.php265 public function testEnqueueAndAddIdnAddress()
LOWtest/PHPMailer/ReplyToGetSetClearTest.php305 public function testNoDuplicateReplyToAddresses()
LOWtest/PHPMailer/LocalizationTest.php134 public function testSetLanguageSuccessFallBackLogic($phrase, $langCode = null, $langPath = null)
LOWtest/PHPMailer/LocalizationTest.php144 public static function dataSetLanguageSuccessFallBackLogic()
LOWtest/PHPMailer/LocalizationTest.php282 public function testSetLanguageDoesNotExecuteCodeInLangFile()
LOWtest/PHPMailer/LocalizationTest.php327 public function testSetLanguageDoesNotExecuteCodeWithBackticksInLangFile()
LOWtest/PHPMailer/LocalizationTest.php358 public function testSetLanguageOnlyProcessesKnownKeys()
LOWtest/PHPMailer/AddEmbeddedImageTest.php99 public function testAddingImageWithoutExplicitName()
LOWtest/PHPMailer/AddEmbeddedImageTest.php142 public function testFailToAttachException(
LOWtest/PHPMailer/ParseAddressesTest.php53 public function testAddressSplittingNative($addrstr, $expected, $charset = PHPMailer::CHARSET_ISO88591)
LOWtest/PHPMailer/ParseAddressesTest.php80 public function testParseAddressesWithFalsyUseimapValues($useimap)
21 more matches not shown…
Fake / Example Data62 hits · 80 pts
SeverityFileLineSnippet
LOWREADME.md111 $mail->Username = 'user@example.com'; //SMTP username
LOWtest/PHPMailer/WrapTextTest.php55 'message' => 'Lorem ipsum dolor sit amet.',
LOWtest/PHPMailer/WrapTextTest.php55 'message' => 'Lorem ipsum dolor sit amet.',
LOWtest/PHPMailer/WrapTextTest.php56 'expected' => 'Lorem ipsum dolor sit amet.' . PHPMailer::getLE(),
LOWtest/PHPMailer/WrapTextTest.php56 'expected' => 'Lorem ipsum dolor sit amet.' . PHPMailer::getLE(),
LOWtest/PHPMailer/WrapTextTest.php60 'message' => 'Lorem ipsum dolor sit amet.',
LOWtest/PHPMailer/WrapTextTest.php60 'message' => 'Lorem ipsum dolor sit amet.',
LOWtest/PHPMailer/WrapTextTest.php61 'expected' => 'Lorem ipsum dolor sit amet.' . PHPMailer::getLE(),
LOWtest/PHPMailer/WrapTextTest.php61 'expected' => 'Lorem ipsum dolor sit amet.' . PHPMailer::getLE(),
LOWtest/PHPMailer/WrapTextTest.php65 'message' => 'Lorem ipsum dolor' . PHPMailer::CRLF,
LOWtest/PHPMailer/WrapTextTest.php66 'expected' => 'Lorem ipsum dolor' . PHPMailer::getLE(),
LOWtest/PHPMailer/WrapTextTest.php69 'message' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.'
LOWtest/PHPMailer/WrapTextTest.php69 'message' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.'
LOWtest/PHPMailer/WrapTextTest.php72 'expected' => 'Lorem ipsum dolor sit amet, consectetur adipiscing' . PHPMailer::getLE()
LOWtest/PHPMailer/WrapTextTest.php72 'expected' => 'Lorem ipsum dolor sit amet, consectetur adipiscing' . PHPMailer::getLE()
LOWtest/PHPMailer/WrapTextTest.php80 'message' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.'
LOWtest/PHPMailer/WrapTextTest.php80 'message' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.'
LOWtest/PHPMailer/WrapTextTest.php83 'expected' => 'Lorem ipsum dolor sit amet, consectetur adipiscing =' . PHPMailer::getLE()
LOWtest/PHPMailer/WrapTextTest.php83 'expected' => 'Lorem ipsum dolor sit amet, consectetur adipiscing =' . PHPMailer::getLE()
LOWtest/PHPMailer/WrapTextTest.php91 'message' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. =' . PHPMailer::CRLF
LOWtest/PHPMailer/WrapTextTest.php91 'message' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. =' . PHPMailer::CRLF
LOWtest/PHPMailer/WrapTextTest.php95 'expected' => 'Lorem ipsum dolor sit amet, consectetur adipiscing =' . PHPMailer::getLE()
LOWtest/PHPMailer/WrapTextTest.php95 'expected' => 'Lorem ipsum dolor sit amet, consectetur adipiscing =' . PHPMailer::getLE()
LOWtest/PHPMailer/WrapTextTest.php104 'message' => 'Lorem ipsumdolorsitametconsetetursadipscingelitrseddiamnonumy',
LOWtest/PHPMailer/WrapTextTest.php110 'message' => 'Lorem ipsumdolorsitametconsetetursadipscingelitrseddiamnonumy',
LOWtest/PHPMailer/WrapTextTest.php111 'expected' => 'Lorem ipsumdolorsitametconsetetursadipscingelitrs=' . PHPMailer::getLE()
LOWtest/PHPMailer/WrapTextTest.php116 'message' => 'Lorem ipsumdolorsitametconsetetursadipscingelitrseddiam=' . PHPMailer::CRLF
LOWtest/PHPMailer/EmptyMailerTest.php33 $this->Mail->addAddress('whoto@example.com', 'John Doe');
LOWtest/PHPMailer/ValidateAddressTest.php191 'test@test.com',
LOWtest/PHPMailer/PHPMailerTest.php1316 $this->Mail->setSMTPXclientAttribute('LOGIN', 'user@example.com');
LOWtest/PHPMailer/PHPMailerTest.php1326 $this->assertEquals(['ADDR' => '127.0.0.1', 'LOGIN' => 'user@example.com'], $attributes);
LOWtest/PHPMailer/Html2TextTest.php54 'input' => ' Lorem ipsum dolor sit amet, consectetur adipiscing elit. ',
LOWtest/PHPMailer/Html2TextTest.php54 'input' => ' Lorem ipsum dolor sit amet, consectetur adipiscing elit. ',
LOWtest/PHPMailer/Html2TextTest.php55 'expected' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
LOWtest/PHPMailer/Html2TextTest.php55 'expected' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
LOWtest/PHPMailer/Html2TextTest.php181 'input' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
LOWtest/PHPMailer/Html2TextTest.php181 'input' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
LOWtest/PHPMailer/Html2TextTest.php183 'expected' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
LOWtest/PHPMailer/Html2TextTest.php183 'expected' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.',
LOWtest/PHPMailer/Html2TextTest.php186 'input' => 'Lorem <div>ipsum</div> dolor sit amet<br/>,'
LOWtest/PHPMailer/Html2TextTest.php191 'expected' => 'Lorem ipsum dolor sit amet, consectetur adipiscing() elit.',
LOWtest/PHPMailer/Html2TextTest.php191 'expected' => 'Lorem ipsum dolor sit amet, consectetur adipiscing() elit.',
LOWtest/PHPMailer/Html2TextTest.php194 'input' => 'Lorem <div>ipsum</div> dolor sit amet<br/>,'
LOWtest/PHPMailer/Html2TextTest.php197 'expected' => 'Lorem ipsum dolor sit amet, consectetur adipiscing() elit.',
LOWtest/PHPMailer/Html2TextTest.php197 'expected' => 'Lorem ipsum dolor sit amet, consectetur adipiscing() elit.',
LOWtest/PHPMailer/Html2TextTest.php200 'input' => 'Lorem <div>ipsum</div> dolor sit amet<br/>,'
LOWtest/PHPMailer/Html2TextTest.php203 'expected' => 'Lorem ipsum dolor sit amet, consectetur adipiscing() elit.',
LOWtest/PHPMailer/Html2TextTest.php203 'expected' => 'Lorem ipsum dolor sit amet, consectetur adipiscing() elit.',
LOWtest/PHPMailer/Html2TextTest.php206 'input' => 'Lorem <div>ipsum</div> dolor sit amet<br/>,'
LOWtest/PHPMailer/Html2TextTest.php209 'expected' => 'Lorem ipsum dolor sit amet, consectetur elit.',
LOWtest/PHPMailer/Html2TextTest.php209 'expected' => 'Lorem ipsum dolor sit amet, consectetur elit.',
LOWtest/PHPMailer/Html2TextTest.php212 'input' => 'Lorem <div>ipsum</div> dolor sit amet<br/>,'
LOWtest/PHPMailer/Html2TextTest.php215 'expected' => 'Lorem ipsum dolor sit amet, consectetur elit.',
LOWtest/PHPMailer/Html2TextTest.php215 'expected' => 'Lorem ipsum dolor sit amet, consectetur elit.',
LOWtest/PHPMailer/Html2TextTest.php218 'input' => 'Lorem <div>ipsum</div> dolor sit amet<br/>,'
LOWtest/PHPMailer/Html2TextTest.php221 'expected' => 'Lorem ipsum dolor sit amet, consectetur elit.',
LOWtest/PHPMailer/Html2TextTest.php221 'expected' => 'Lorem ipsum dolor sit amet, consectetur elit.',
LOWtest/PHPMailer/AuthCRAMMD5Test.php45 $this->Mail->addAddress('user@example.com');
LOWtest/PHPMailer/ValidateAddressCustomValidatorTest.php36 PHPMailer::validateAddress('user@example.com', $callback),
LOWtest/PHPMailer/ValidateAddressCustomValidatorTest.php52 return 'user@example.com' === $address;
2 more matches not shown…
Over-Commented Block8 hits · 8 pts
SeverityFileLineSnippet
LOW.phan/config.php21 ],
LOWtest/fakepopserver.sh1#!/usr/bin/env bash
LOWtest/PHPMailer/PHPMailerTest.php1341 * @group slow
LOWlanguage/phpmailer.lang-fo.php21$PHPMAILER_LANG['provide_address'] = 'Tú skal uppgeva minst móttakara-emailadressu(r).';
LOWlanguage/phpmailer.lang-fi.php21$PHPMAILER_LANG['provide_address'] = 'Aseta vähintään yksi vastaanottajan sähk&ouml;postiosoite.';
LOW.github/workflows/tests.yml141 - name: Check out code
LOWsrc/PHPMailer.php1901 //A space after `-f` is optional, but there is a long history of its presence
LOWsrc/PHPMailer.php5261 //Unfold header lines
Self-Referential Comments1 hit · 3 pts
SeverityFileLineSnippet
MEDIUMtest/fakesendmail.sh5#Create a temp folder to put messages in