5

我是 PHP 新手。一个 PHP 今天从 5.3.3 迁移到 5.4.4 版本(Debian Squeeze 到 Debian Wheezy),之后,我从 Apache 日志中得到这个错误:

> PHP 警告:xyz 中的非法字符串偏移 'phptype'

该行是:

self::$conn[$dsn['phptype']] = $mdb2;

我需要帮助来恢复系统。

4

2 回答 2

4
<?php
$a = 'Hello';
echo $a['whatever'];
?>

正如评论中的一些人所说,这样做可能会导致该错误。正如您在上面的示例中看到的那样,$a它是一个字符串而不是一个数组。这意味着您无法使用密钥访问它(但是,如果您想获取字符串中的第三个字母,则可以这样做$a[2])。

您需要检查它实际上是数组而不是字符串self::$conn$dsn正如 Álvaro G. Vicario 在评论中所说,您可以通过转储变量来做到这一点:

var_dump(self::$conn, $dsn)

于 2013-04-18T16:49:52.743 回答
0

当您尝试使用对象或数组作为索引键访问数组索引时,会发生非法偏移类型错误。检查您的阵列是否正确。

于 2013-04-18T16:39:32.953 回答