file_put_contents() 函数查看APP接口数据

本文介绍了一种在不影响项目正常运行的情况下,利用PHP内置函数file_put_contents记录请求数据的方法,适用于接口测试及调试。
由于项目在运行,打断点做测试又会影响正常的项目运行,现在又需要测试APP接口接收请求的数据是不是正常?(在不影响项目正常运行的前提下,使用file_put_contents() 函数是比较适合的)

file_put_contents() 函数把一个字符串写入文件中。

将记录的文本信息,记录在当前的目录下:

file_put_contents(dirname(__FILE__).'/text.txt',json_decode($_REQUEST)."操作时间:".date("Y-m-d H:i:s",time()).PHP_EOL);

代码位置如下:

$save['bank_name'] = isset($_REQUEST['bank_name']) ? trim(addslashes(htmlspecialchars($_REQUEST['bank_name']))) : ''; //开户银行名
$save['bank_account_number'] = isset($_REQUEST['bank_account_number']) ? trim(addslashes(htmlspecialchars($_REQUEST['bank_account_number']))) : ''; //银行账号
$save['bank_account_name'] = isset($_REQUEST['bank_account_name']) ? trim(addslashes(htmlspecialchars($_REQUEST['bank_account_name']))) : ''; //开户名

$save['applynum'] = 2;//1公司信息认证一,2公司信息认证二

//在不打断点记录到text.txt中
file_put_contents(dirname(__FILE__).'/text.txt',json_decode($_REQUEST)." 操作时间:".date("Y-m-d H:i:s",time()).PHP_EOL);

//将接收并特殊字符串处理的数据,存入商家入驻数据表中
if ($db->autoExecute($ecs->table('supplier'), $save, 'UPDATE', 'user_id='.$userid) !== false){
    $result=array('status'=>3,'message'=>'第三步,填写店铺信息!');
    echo json_encode($result);exit;
}else{
    $result=array('status'=>2,'message'=>'操作失败!');
    echo json_encode($result);exit;
}

运行代码,生成test.txt文本(由json_decode转化成json格式)

{
    "bank_name": "****银行",
    "bank_account_number": "452533557555",
    "bank_account_name": "哥哥",
    "applynum":2
} 操作时间:2018 - 07 - 13 16: 54: 01
在不打断点的前提下,输出APP提交的数据
启动代码: <?php // 设置工作目录到项目根目录 chdir(dirname(__DIR__)); // 定义必要的常量 if (!defined('DS')) define('DS', DIRECTORY_SEPARATOR); if (!defined('ROOT_PATH')) define('ROOT_PATH', dirname(__DIR__) . DS); if (!defined('APP_PATH')) define('APP_PATH', ROOT_PATH . 'application' . DS); if (!defined('RUNTIME_PATH')) define('RUNTIME_PATH', ROOT_PATH . 'runtime' . DS); // 防止重复加载 Composer 自动加载文件 if (!class_exists('Composer\Autoload\ClassLoader', false)) { require ROOT_PATH . 'vendor/autoload.php'; } // 加载框架基础文件 require ROOT_PATH . 'thinkphp/base.php'; // 手动加载应用函数文件 if (file_exists(APP_PATH . 'common.php')) { require_once APP_PATH . 'common.php'; } // 设置错误报告级别 error_reporting(E_ALL); ini_set('display_errors', '1'); // 注册自动加载 \think\Loader::register(); // 手动加载采集服务类 require_once APP_PATH . 'caiji/CaijiScheduler.php'; require_once APP_PATH . 'caiji/CaijiWorker.php'; try { // 记录启动日志 file_put_contents(RUNTIME_PATH . 'caiji_start.log', date('[Y-m-d H:i:s]') . " 采集服务启动\n", FILE_APPEND); // 创建锁文件 $lockFile = RUNTIME_PATH . 'caiji.lock'; if (file_exists($lockFile)) { exit("采集进程已在运行中\n"); } file_put_contents($lockFile, getmypid()); // 注册关闭函数 register_shutdown_function(function() use ($lockFile) { if (file_exists($lockFile)) { unlink($lockFile); } }); // 启动调度器 $scheduler = new app\caiji\CaijiScheduler(); $scheduler->start(); // 启动Worker $worker = new app\caiji\CaijiWorker(); $worker->start(); } catch (\Throwable $e) { $error = date('[Y-m-d H:i:s]') . " 错误: " . $e->getMessage() . "\n"; $error .= "追踪: " . $e->getTraceAsString() . "\n"; file_put_contents(RUNTIME_PATH . 'caiji_error.log', $error, FILE_APPEND); exit(1); }
05-30
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值