【问题标题】:I dont understand why im getting this error in php Array to string conversion我不明白为什么我在 php 数组到字符串的转换中遇到这个错误
【发布时间】:2013-11-14 18:58:41
【问题描述】:

这是怎么回事,我想做一个多语言网站数组到字符串的转换错误:注意:数组到字符串的转换在 C:\wamp\www\choose language\language.php 第 12 行

<form action="language_switcher.php" method="post">
<select name="lang">
    <option value="en"<?php if( $_COOKIE["language"] == "en" ) { echo " selected"; } ?>>English</option>
    <option value="fr"<?php if( $_COOKIE["language"] == "fr" ) { echo " selected"; } ?>>Français</option>
    <option value="de"<?php if( $_COOKIE["language"] == "de" ) { echo " selected"; } ?>>Deutsch</option>
    <option value="it"<?php if( $_COOKIE["language"] == "it" ) { echo " selected"; } ?>>Italiano</option>

</select>
<input type="submit" value="Select Language">
</form>

<p>Language: <?php if( isset( $_COOKIE['language'] ) ) { echo $_COOKIE['language']; } else { echo "<em>not set</em>"; } ?></p>

【问题讨论】:

  • print_r($_COOKIE['language']);
  • 这是一个通知,这是一个非常轻微的错误消息。这会产生您期望的 HTML 吗?当你执行 var_dump($_COOKIE); 时你看到了什么?

标签: php arrays forms cookies setcookie


【解决方案1】:

很可能是你的

$_COOKIE["language"]

不是像 "en" 这样的字符串,而是像 array($code=>"en", $name=>"english") 这样的数组。您需要先检查该值。 echo 它, print_r 它或 var_dump 它。

添加

<?php var_dump($_COOKIE["language"]); ?> 

到页面顶部或任何地方。

【讨论】:

  • 那我该怎么说呢?抱歉,我还不是很熟悉
猜你喜欢
  • 1970-01-01
  • 2022-10-05
  • 2016-02-03
  • 1970-01-01
  • 1970-01-01
  • 2020-04-30
  • 1970-01-01
  • 2016-04-20
  • 2016-05-20
相关资源
最近更新 更多