Heim > Fragen und Antworten > Hauptteil
Nachdem ich meine PHP-Version auf 5.4.0-3 aktualisiert habe, erhalte ich einen seltsamen PHP-Fehler.
Ich habe dieses Array:
Array ( [host] => 127.0.0.1 [port] => 11211 )
Ich erhalte seltsame Warnungen, wenn ich versuche, auf diese Weise darauf zuzugreifen
print $memcachedConfig['host']; print $memcachedConfig['port']; Warning: Illegal string offset 'host' in .... Warning: Illegal string offset 'port' in ...
Ich möchte wirklich nicht einfach meine php.ini bearbeiten und die Fehlerstufe zurücksetzen.
P粉4208682942023-10-10 12:23:40
错误Illegal string offset 'whatever' in...
通常意味着:您正在尝试将字符串用作完整数组。
这实际上是可能的,因为在 php 中字符串可以被视为单个字符的数组。所以你认为 $var 是一个带有键的数组,但它只是一个带有标准数字键的字符串,例如:
$fruit_counts = array('apples'=>2, 'oranges'=>5, 'pears'=>0); echo $fruit_counts['oranges']; // echoes 5 $fruit_counts = "an unexpected string assignment"; echo $fruit_counts['oranges']; // causes illegal string offset error
您可以在此处查看实际效果: http://ideone.com/fMhmkR
对于那些提出这个问题并试图将错误的模糊性转化为解决问题的人,就像我一样。
P粉2678859482023-10-10 10:42:00
请尝试这种方式......我已经测试过这段代码......它有效......
$memcachedConfig = array("host" => "127.0.0.1","port" => "11211"); print_r($memcachedConfig['host']);