【问题标题】:ErrorException htmlspecialchars() expects parameter 1 to be string, array given [duplicate]ErrorException htmlspecialchars() 期望参数 1 是字符串,给定数组 [重复]
【发布时间】:2019-09-05 02:58:28
【问题描述】:

我想从数据库中获取数据“report_to”。但是当我尝试在视图页面中打印变量时出现错误。它说“错误异常 htmlspecialchars() 期望参数 1 是字符串,给定数组”。

这是我的控制器。

function editroledetails(Request $request)
    {
        $user = \Auth::user();
        $userphone = 0;
        $reportTo = DB::select(DB::raw("SELECT report_to FROM customer_type WHERE username='19331986' "));
        $data = [
            'editUsername' => $request->editUsername,
            'editNik' => $request->editNik,
            'editEmail' => $request->editEmail,
            'editRegIdentities' => $request->editRegIdentities,
            'editID' => $request->editID
        ];

        return view('editroledetails', compact('user', 'userphone', 'data', 'reportTo'));
    }

这是我的看法

<div class="alert alert-info">
            <h3>{{$reportTo}}</h3>
        </div>

我希望视图将显示变量“名称”,但我得到错误 htmlspecialchars() 期望参数 1 是字符串,给定数组。

【问题讨论】:

  • 嗯,解决方案在错误中...您传递的是数组而不是字符串。
  • 您发布的代码中没有htmlspecialchars
  • reportTo 是数组,要么在模板中对其进行迭代,要么在控制器中提取一个值。
  • 添加错误屏幕截图以获取更多信息
  • @Andreas 它隐含在 {{ ... }} 模板语法中。

标签: php laravel laravel-5.4


【解决方案1】:

改变

$reportTo = DB::select(DB::raw("SELECT report_to FROM customer_type WHERE username='19331986' "));

$reportTo = DB::select(DB::raw("SELECT report_to FROM customer_type WHERE username='19331986' "))->get();

现在$reportTo 是一个数组,您可能需要使用@foreach@for。或者如果你确定你只会得到一条记录,你可以使用first()like

$reportTo = DB::select(DB::raw("SELECT report_to FROM customer_type WHERE username='19331986' "))->first();

【讨论】:

    【解决方案2】:

    这意味着很明显 $reportTo 是查询的结果集,将您的查询更改为 $reportTo = DB::select(DB::raw("SELECT report_to FROM customer_type WHERE username='19331986' "))-&gt;first(); 然后访问您的数据库列,如 $reportTo['colname']

    【讨论】:

    • 我试了一下,显示错误“FatalErrorException Call to a member function first() on array”
    【解决方案3】:

    [已解决] 谢谢你的回答,我已经解决了。

    这是代码

    <?php echo $reportTo[0]->report_to; ?>
    

    This is print_r of $reportTo

    This is my reference

    【讨论】:

      猜你喜欢
      • 2020-11-22
      • 2017-07-12
      • 2017-03-22
      • 2018-02-22
      • 2018-11-10
      • 2017-08-08
      • 2021-02-06
      • 1970-01-01
      • 2021-11-13
      相关资源
      最近更新 更多