Alipay支付宝支付 报错 invalid [default store dir]: /tmp/
1.如果使用支付宝sdk,首先lotusphp_runtime 文件也要一起使用 支付宝现在的php sdk中有lotus框架可以和aop文件。
2.保证AopSdk.php文件中的方法可以走到这个lotusphp_runtime对应的方法中,然后进行测试看看是否可以请求成功。
/**
* 找到lotusphp入口文件,并初始化lotusphp
* lotusphp是一个第三方php框架,其主页在:lotusphp.googlecode.com
*/
$lotusHome = dirname(__FILE__) . DIRECTORY_SEPARATOR . "lotusphp_runtime" . DIRECTORY_SEPARATOR;
include($lotusHome . "Lotus.php");
$lotus = new Lotus;
$lotus->option["autoload_dir"] = dirname(__FILE__) . DIRECTORY_SEPARATOR . 'aop';
$lotus->devMode = AOP_SDK_DEV_MODE;
$lotus->defaultStoreDir = AOP_SDK_WORK_DIR;
$lotus->init();
3.如果还是报错,打开AopSdk.php 把下面:"/tmp/"文件夹 ,文件夹名称自定义, window环境改成绝对路径,
并且保证这个文件夹有读写权限
4.修改完成再进行测试。
这是因为/tmp/被定位到linux下的根目录tmp文件夹,而windows是没有这种文件的所以报错了。
在SDK下面建立一个tmp文件夹,然后打开AopSdkl.php,18行左右的路径修改为
define("AOP_SDK_WORK_DIR", dirname(__FILE__) . "/tmp/");