以PHP Mailer和接入支付宝接口为例:
发邮件时候是有命名空间的,用tp5的import助手函数手动引入文件,然后上面用use引入命名空间,new的时候直接new就可以,
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
class Index extends Controller
{
public function index()
{
import('PHPMailer',VENDOR_PATH.'PHPMailer'.DS.'src');
import('SMTP',VENDOR_PATH.'PHPMailer'.DS.'src');
import('Exception',VENDOR_PATH.'PHPMailer'.DS.'src');
$mail = new PHPMailer();
}
}
接支付的时候是没有命名空间的,就只要import加载之后,在new的时候他的名字前加反斜杠,让他就从根命名空间找;就可以了
import('AlipayTradeService',VENDOR_PATH.'alipay'.DS.'pagepay'.DS.'service');
import('AlipayTradePagePayContentBuilder',VENDOR_PATH.'alipay'.DS.'pagepay'.DS.'buildermodel');
$payRequestBuilder = new \AlipayTradePagePayContentBuilder();
$aop = new \AlipayTradeService($config);