查阅了很多资料,竟然没有传参的说明:
直接找 action的定义, $vars 可以传 数字或字符串
if (!function_exists('action')) {
/**
* 调用模块的操作方法 参数格式 [模块/控制器/]操作
* @param string $url 调用地址
* @param string|array $vars 调用参数 支持字符串和数组
* @param string $layer 要调用的控制层名称
* @param bool $appendSuffix 是否添加类名后缀
* @return mixed
*/
function action($url, $vars = [], $layer = 'controller', $appendSuffix = false)
{
return Loader::action($url, $vars, $layer, $appendSuffix);
}
}
如果你的 方法 中的 参数名时 user,则你的写法时正确的:
加入你的Controller部分:
....
// Home\Api 控制器
public function send_validate_code($user) {
var_dump($user); //mqycn
...
你可以这样传值
$user = 'mqycn';
action('Home/Api/send_validate_code', ['user' => $user]);
也可以这样传值
action('Home/Api/send_validate_code', 'user=mqycn');