警告:非法字符串偏移错误消息

时间:2015-03-04 15:27:17

标签: php

我收到此错误消息:

  

"警告:非法字符串偏移'密码'在   /home/u/u6882969/www/hittarum.nu/wp-content/themes/wm-mediation/page-login.php   在第165"

我在另一个正在运行的网站上使用相同的代码,但在这种情况下它不起作用。有人可以告诉我该怎么办?

<?php
if (!$error["password"]):
?><label for="password">Lösenord</label><?php
else:
?><label class="error" for="password"><?php
    echo $error['password'];
?></label><?php
endif;
?>

我使用的是PHP版本5.5.17和MySQL版本5.0.67

2 个答案:

答案 0 :(得分:0)

听起来$error是字符串而不是数组。字符串是一个字符数组,但请考虑这一点:

$error = 'string';
echo $error[1]; // 't'
echo $error[3]; // 'i';
echo $error['password']; // illegal string offset

您应var_dump($error)查看实际存在的内容,它很可能是包含错误的字符串,而不是按字段分解的数组。

答案 1 :(得分:0)

$error["password"]可能不存在。如果是这种情况,您将看到错误。相反,替换它:

if (!$error["password"]):

...与:

if (empty($error["password"])):