请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

开启强类型后出现这个问题

PHP版本是7.3.9
代码和教程上一样,我只保留的关键部分

<?php
declare(strict_types=1);
namespace appapicontroller;

use appBaseController;

/**
 * 发送短信
 */
class Sms extends BaseController
{
    
    public function code() : object{        
        return show(config('status.success'), 'is ok');
    }
}

返回这样的错误,Return value of appapicontrollerSms::code() must be an instance of appapicontrollerobject, instance of think
esponseJson returned

如果改成以下的代码,则可以正常

<?php
declare(strict_types=1);
namespace appapicontroller;

use appBaseController;
use thinkResponseJson;

/**
 * 发送短信
 */
class Sms extends BaseController
{
    
    public function code() : Json {        
        return show(config('status.success'), 'is ok');
    }
}

更新:::::下面是show方法

function show($status, $message, $data = [], $httpStatus = 200){
    $results = [
        'status'    => $status,
        'message'   => $message,
        'result'    => $data,
    ];

    return json($results, $httpStatus);
}

正在回答 回答被采纳积分+3

5回答

左手边的回忆 2020-02-21 14:13:02

你这个要求的返回时json字符串,你就应该使用json不应该使用object


0 回复 有任何疑惑可以回复我~
PHP最差初学者 2020-02-21 10:42:23

请问问题解决了吗,我也遇到相同的情况

0 回复 有任何疑惑可以回复我~
happy技师 2020-01-17 11:20:03

请问问题解决了吗? 我也遇到了相同的情况

在 controller 层的 Sms.php 开启强类型, 报同样的错, 关闭强类型不报错

tp版本6.0.2

//img1.sycdn.imooc.com/szimg/5e2127db091aa36f11610950.jpg

//img1.sycdn.imooc.com/szimg/5e2127db09e35bbd09340800.jpg

https://img1.sycdn.imooc.com//szimg/5e2128c809b3ca6808310668.jpg

0 回复 有任何疑惑可以回复我~
singwa 2020-01-15 15:50:57

use think\response\Json;

这样试试。 Response =>  response小写。按道理和这个没有关系,您TP哪个版本?

0 回复 有任何疑惑可以回复我~
  • 提问者 夜明河 #1
    小写和大写结果一样
    回复 有任何疑惑可以回复我~ 2020-01-15 16:08:24
  • 提问者 夜明河 #2
    对了,我的环境是win7安装的虚拟机,vagrant安装的homestead,通过配置后,支持tp
    回复 有任何疑惑可以回复我~ 2020-01-15 16:09:21
  • 提问者 夜明河 #3
    6.0版本啊
    回复 有任何疑惑可以回复我~ 2020-01-15 18:07:05
singwa 2020-01-15 14:59:28

您好,您的show方法截图我看看。

0 回复 有任何疑惑可以回复我~
  • 提问者 夜明河 #1
    已经加上show方法的代码
    回复 有任何疑惑可以回复我~ 2020-01-15 15:01:02
  • 提问者 夜明河 #2
    另外,代码中的反斜线好像都屏蔽掉了,其实都是正常有的
    回复 有任何疑惑可以回复我~ 2020-01-15 15:04:02
  • singwa 回复 提问者 夜明河 #3
    OK,我试试你说的那个版本,晚点回复您。
    回复 有任何疑惑可以回复我~ 2020-01-15 15:29:02
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号