linkify-tracking
Linkifies package tracking numbers for DHL, FedEx, Royal Mail (UK), UPS, and USPS., (*1)
Installation
composer require philipnewcomer/linkify-tracking
Usage
First instantiate an instance of the library:, (*2)
$linkifyTracking = new PhilipNewcomer\LinkifyTracking\LinkifyTracking;
Get the tracking URL for a single tracking number
$linkifyTracking->getLinkUrl('12345678901234567890');
Result:, (*3)
https://tools.usps.com/go/TrackConfirmAction?tLabels=12345678901234567890
Get the link data for a single tracking number
$linkifyTracking->getLinkData('12345678901234567890');
Result:, (*4)
[
'carrier' => 'USPS',
'url' => 'https://tools.usps.com/go/TrackConfirmAction?tLabels=12345678901234567890'
]
Convert all tracking numbers in the given content to HTML links
$content = '
Here is a tracking number: 12345678901234567890
And another tracking number: 12345678901234567890
';
$linkifyTracking->linkify($content)
Result:, (*5)
Here is a tracking number: <a href="https://tools.usps.com/go/TrackConfirmAction?tLabels=12345678901234567890">12345678901234567890</a>
And another tracking number: <a href="https://tools.usps.com/go/TrackConfirmAction?tLabels=12345678901234567890">12345678901234567890</a>
Configuration
Configuration arguments may be passed to the LinkifyTracking
constructor., (*6)
The following arguments may be provided:
* linkAttributes
: An array of attributes which should be added to the generated HTML links, (*7)
Example:, (*8)
$linkifyTracking = new PhilipNewcomer\LinkifyTracking\LinkifyTracking([
'linkAttributes' => [
'class' => 'tracking-link',
'target' => '_blank'
]
]);
Credits
Tracking number regular expressions for DHL, FedEx, UPS, and USPS are taken from https://github.com/darkain/php-tracking-urls., (*9)