PHP:非法的字符串偏移量


PHP: Illegal string offset

我知道已经有这样的问题了,但这对我没有帮助。

我在我的网站上得到以下错误:

警告:中的字符串偏移量"networkConnections"非法/第25行的var/www/bitmsg/templates/header.php{

线路是 <?= $bmstatus["networkConnections"] ?> p2p nodes

如果我print_r$bmstatus,那么我得到:

{
    "numberOfBroadcastsProcessed": 2308,
    "networkStatus": "connectedAndReceivingIncomingConnections",
    "softwareName": "PyBitmessage",
    "softwareVersion": "0.4.1",
    "networkConnections": 52,
    "numberOfMessagesProcessed": 22888,
    "numberOfPubkeysProcessed": 8115
}

如何从该数组中获取信息?

我试过$bmstatus['networkConnections']$bmstatus->networkConnections但两者都返回了那个错误?

$bmstatus包含一个JSON字符串。您必须首先对其进行解码,才能从中提取所需的信息。为此,您可以使用内置函数json_decode()(第二个参数设置为TRUE,以获得关联数组,而不是对象):

$json = json_decode($bmstatus, true);
echo $json['networkConnections'];

这是一个json字符串。您需要使用json_decode和第二个参数true来解码json响应,以获得关联数组。

$bmstatusArray = json_decode($bmstatus,true);
echo $bmstatusArray["networkConnections"];