php - 如何使用 PayPal rest-api-sdk 设置具有不同计费周期和金额的 PayPal 定期付款?
问题描述
我尝试了以下代码来设置不同的计费周期,但它不起作用。这段代码有什么错误?
提前致谢!
$paymentDefinition_0 = new PaymentDefinition();
$paymentDefinition_1 = new PaymentDefinition();
$paymentDefinition_0->setName('1stPayment')
->setType('REGULAR')
->setFrequency('DAY')
->setFrequencyInterval('1')
->setCycles('1000')
->setAmount(new Currency(array(
'value' => $request->20,
'currency' => 'USD'
)));
$paymentDefinition_1->setName('2nd Payment')
->setType('REGULAR')
->setFrequency('DAY')
->setFrequencyInterval('1')
->setCycles('1000')
->setAmount(new Currency(array(
'value' => $request->30,
'currency' => 'USD'
)));
$plan->setPaymentDefinitions(array(
$paymentDefinition,
$paymentDefinition_1
));
解决方案
20 和 30 在技术上是常量,您不能将它们作为表单请求中的名称或将它们作为对象的属性访问,这是语法错误
如果它们是恒定的,则硬编码这些值
$paymentDefinition_0->setName('1stPayment')
->setType('REGULAR')
->setFrequency('DAY')
->setFrequencyInterval('1')
->setCycles('1000')
->setAmount(new Currency(array(
'value' => 20,
'currency' => 'USD'
)));
$paymentDefinition_1->setName('2nd Payment')
->setType('REGULAR')
->setFrequency('DAY')
->setFrequencyInterval('1')
->setCycles('1000')
->setAmount(new Currency(array(
'value' => 30,
'currency' => 'USD'
)));
或者在 HTML 表单中给他们一个字符串名称,然后将该名称作为请求对象的属性访问
例如
<form action="/" method="post">
@csrf
<input type="number" name="paymentDefinition_0" value="20"><br>
<input type="number" name="paymentDefinition_1" value="30"><br>
<button type="submit">Submit</button>
</form>
并相应地访问
$paymentDefinition_0->setName('1stPayment')
->setType('REGULAR')
->setFrequency('DAY')
->setFrequencyInterval('1')
->setCycles('1000')
->setAmount(new Currency(array(
'value' => $request->paymentDefinition_0,
'currency' => 'USD'
)));
$paymentDefinition_1->setName('2nd Payment')
->setType('REGULAR')
->setFrequency('DAY')
->setFrequencyInterval('1')
->setCycles('1000')
->setAmount(new Currency(array(
'value' => $request->paymentDefinition_1,
'currency' => 'USD'
)));
希望这可以帮助
推荐阅读
- mysql - 在内部联接上访问左联接
- c# - C# 组合框选定项更改(从单击选项到底部选项)
- ios - iOS 自定义初始化问题,如何设置默认初始化方法?
- java - LocalDate 返回随机日期
- java - Spring Rest Template Http 客户端错误异常
- mysql - 如何传递逗号分隔的输入参数以从另一个存储过程调用存储过程
- python - 如何加载我将用作类属性的文件,其中这些属性的顺序可以更改
- wordpress - 如何修复:FB-Pixel 检测到事件代码但像素尚未激活
- java - 如何计算 Firebase 数据库中的子节点整数值?(请看图片,谢谢)
- c++ - 尝试在 OpenCV C++ 中运行 Yolo3 示例时生成错误