php - array_keys 在 laravel 中不起作用

标签 php mysql laravel

我想返回一个包含键的数组:

<?php
if(isset($values[0]->Content)):
$jarray= json_decode($values[0]->Content);
print_r(array_keys($jarray));
exit;
endif;
?>

$jarray 的输出:

stdClass Object
(
    [_token] => QjyTAyDDUeadYvO0qj0gAZyK7OVyudSsY7Sq8Hhp
    [datefrom] => 2017-07-07
    [dateto] => 2017-07-31
    [Productivity] => test1
    [Productivityrating] => 2
    [Technical_Skills] => test2
    [Technical_Skillsrating] => 3
    [Work_Consistency] => test3
    [Work_Consistencyrating] => 4
    [Presentation_skills] => test4
    [Presentation_skillsrating] => 5
    [test] => test5
    [testrating] => 3
    [cycle_id] => 1
    [save] => proceed
)

我想返回一个包含键的数组,所以我尝试了

array_keys($jarray)

但是它给出了类似

的错误

array_keys() expects parameter 1 to be array, object given (View: my path)

预期输出:

Array
(
    [0] =>_token
    [1] => datefrom
    [2] =>_dateto
    [3] => Productivity
    [4] =>Productivityrating
    [5] => Work_Consistency
    [6] =>_Work_Consistencyrating

)etc

如有任何帮助,我们将不胜感激。

最佳答案

json_decode()默认情况下返回一个解码为对象的 json 字符串(这就是为什么会出错)。要将你的 json 解码成一个数组,你应该使用它和第二个参数等于 true 如下:

$jarray = json_decode($values[0]->Content, true);

关于php - array_keys 在 laravel 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45053472/

相关文章:

python - MySQLConnector (Python) : New DB connection for each query vs. 单个连接

laravel - 如何使用一个 SQL 查询在 Laravel (Eloquent) 中获取两个相关对象

php - 来自变量的 Laravel 语言键

php - 如何通过单击按钮从服务器下载文件

php - 创建自定义存储库原则

mysql - 使用 mysql 和 php 连接数据

mysql - 计算用户点击 MySQL 中不同事件的数量

php - 如何按多列对 Laravel 查询构建器结果进行排序?

javascript - JSON:getElementById 返回未定义

php - foreach inside foreach 迭代两次