Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php SQL选择使响应仅包含值而不包含列名?_Php_Mysql_Sql_Database - Fatal编程技术网

Php SQL选择使响应仅包含值而不包含列名?

Php SQL选择使响应仅包含值而不包含列名?,php,mysql,sql,database,Php,Mysql,Sql,Database,我使用此SQL查询获取所有用户注册的设备令牌: select distinct device_token from users where device_token is not null 这将返回一个数组: [ { "device_token": "LONG SRING 1" }, { "device_token": "LONG SRING 2" }, { "device_token": "LONG SRING 3" } ] 我怎样才能让这个回答看起来像这样 [

我使用此SQL查询获取所有用户注册的设备令牌:

select distinct device_token 
from users 
where device_token is not null
这将返回一个数组:

[
    { "device_token": "LONG SRING 1" },
    { "device_token": "LONG SRING 2" },
    { "device_token": "LONG SRING 3" }
]
我怎样才能让这个回答看起来像这样

[
    "LONG SRING 1",
    "LONG SRING 2",
    "LONG SRING 3"
]
我这样打印阵列只是为了比较:

print_r($response);
print_r(array_values($response));
它打印:

Array
(
[0] => Array
    (
        [device_token] => LONG STRING 1
    )

[1] => Array
    (
        [device_token] => LONG STRING 2
    )

[2] => Array
    (
        [device_token] => LONG STRING 3
    )
)

Array
(
[0] => Array
    (
        [device_token] => LONG STRING 1
    )

[1] => Array
    (
        [device_token] => LONG STRING 2
    )

[2] => Array
    (
        [device_token] => LONG STRING 3
    )
)

数组_值()不会更改任何内容:(

使用数组_值仅从关联数组中获取值

array_values($array);

使用数组_值仅从关联数组中获取值

array_values($array);

您必须使用loop手动执行此操作

$json = '[{"device_token":"LONG SRING 1"},{"device_token":"LONG SRING 2"},{"device_token":"LONG SRING 3"}]';
    $json = json_decode($json, true);
    $result = array();
    foreach($json as $row){
        $result[] = $row['device_token'];
    }
    echo json_encode($result);
现在您将得到这种格式的响应

["LONG SRING 1","LONG SRING 2","LONG SRING 3"]

您必须使用loop手动执行此操作

$json = '[{"device_token":"LONG SRING 1"},{"device_token":"LONG SRING 2"},{"device_token":"LONG SRING 3"}]';
    $json = json_decode($json, true);
    $result = array();
    foreach($json as $row){
        $result[] = $row['device_token'];
    }
    echo json_encode($result);
现在您将得到这种格式的响应

["LONG SRING 1","LONG SRING 2","LONG SRING 3"]

最后我做了这样的事:

if (PF::is_multi($token)) {
    $temp = [];
    foreach (array_values($token) as $value)
        array_push($temp, array_values($value)[0]);
    $token = $temp;
}

最后我做了这样的事:

if (PF::is_multi($token)) {
    $temp = [];
    foreach (array_values($token) as $value)
        array_push($temp, array_values($value)[0]);
    $token = $temp;
}


您得到的是一个json字符串。用于解析它。@RajdeepPaul为了便于阅读,我将其编码为json。否则它仍然是相同的PHP数组结构…请查看
REPLACE
。如果它是PHP数组,请检查PHP列表。特别是,可能是您需要的函数。您得到的是一个json字符串。用于解析。@RajdeepPaul为了便于阅读,我将其编码为json。否则它仍然是相同的PHP数组结构…请查看
REPLACE
。如果它是PHP数组,请检查PHP列表。特别是,可能是您需要的函数。不起作用,没有任何更改。可能是因为我从我的数据库服务器收到的光线有两个阶段深?将你的数组粘贴到这里更新了我的问题,谢谢你的帮助。这是一个多维数组对象,数组值在这种情况下不能工作是的,这就是我想的,我必须循环通过它并手动提取值?不起作用,没有任何变化。可能是因为我从数据库服务器收到的数组深度为2级?将您的数组粘贴到此处更新了我的问题,感谢您的帮助。这是一个多维数组对象,数组值在这种情况下无法工作是的,这就是我所想的,我必须通过它循环并手动提取值?