我正在加载一个朋友网站来玩它并且它给了我:注意:数组到字符串转换错误。任何想法如何解决这一问题? (我的朋友不在城里)
function href($filename) {
if (@$_SERVER['HTTPS'] != 'on') {
return HTTP_IMAGE . $filename;
} else {
return HTTPS_IMAGE . $filename;
}
}
错误指向此代码的第3行。
答案 0 :(得分:2)
您正在return
中混合数组和字符串。请尝试以下方法:
$filename
的索引(如$filename[0]
)或:
implode()
函数的字符串(如implode(',', $filename);
,它为您提供一个字符串,其中包含数组$filename
的值,由,
隔离答案 1 :(得分:1)
您正在使用字符串连接运算符,而不是字符串。即,使用数组。
试试这个:
function href($filename) {
var_dump($HTTP_IMAGE);
var_dump($filename);
if (@$_SERVER['HTTPS'] != 'on') {
return HTTP_IMAGE . $filename;
} else {
return HTTPS_IMAGE . $filename;
}
}
运行此代码时,它应显示HTTPS_IMAGE和$ filename中的内容。
由于我不知道它们包含什么,我将使用以下示例代码进行解释:
$my_array[0] = 'Hello';
$my_array[1] = 'world';
$my_array[2] = '!';
var_dump( $my_array );
如果您执行该代码,您将获得以下内容:
array(3) {
[0]=>
string(5) "Hello"
[1]=>
string(5) "world"
[2]=>
string(1) "!"
}
这是一个数组。它是元素的集合,需要通过索引访问。例如,要访问“world”,您需要通过索引“1”访问它:
echo $my_array[1];
回到您的示例,确定哪个变量是数组并通过适当的索引访问它。通过检查var_dump()的结果,您将知道哪个索引。