问候...
在我的sitecontroller中,我有这个代码来查询数据库中的表格横幅。
public function actionIndex()
{
$model = new Contacto();
$query = new Query;
$query->select('foto')
->from('banner')
->where('id=1');
$command = $query->createCommand();
$imagem1 = $command->queryOne();
$model = new Contacto();
$query = new Query;
$query->select('foto')
->from('banner')
->where('id=2');
$command = $query->createCommand();
$imagem2 = $command->queryOne();
$model = new Contacto();
$query = new Query;
$query->select('foto')
->from('banner')
->where('id=3');
$command = $query->createCommand();
$imagem3 = $command->queryOne();
if ($model->load(Yii::$app->request->post()) && $model->save()) {
return $this->redirect(Url::toRoute(['site/sucessocontacto']));
} else {
return $this->render('index', [
'model' => $model, 'imagem1' => $imagem1, 'imagem2' => $imagem2, 'imagem3' => $imagem3
]);
}
}
在我看来,我有这段代码:
<?=
Supersized::widget([
'theme' => Supersized::THEME_SLIDESHOW,
'returnType' => Supersized::RETURN_CONTROL,
'options' => [
'slide_interval' => 2000,
'transition' => 1,
'transition_speed' => 1400,
'slide_links' => 'blank',
'random' => 0,
'slides' => [
['image' => implode('', $imagem1)],
['image' => implode('', $imagem2)],
['image' => implode('', $imagem3)],
]
]
]);
?>
此网站已完成,并且在我的本地主机中效果良好。
我将网站上传到实时服务器,它总是在视图代码中抛出错误。错误是: implode():传递的参数无效
var_dump $ image1不会出现,因为它首先提供错误。
任何人都知道为什么它像魅力一样工作并在横幅上显示所有3个图像在localhost上,但在实时服务器上它总是在implode()函数上给出这个错误?
服务器中的PHP版本设置为我在localhost中开发的版本。
我试图将$ image1 2和3 vars声明为数组但是没有工作,vars的var_dump总是显示类似于array1 [0] =&gt;布尔(假)
我试图在最后几个小时解决这个问题,但没有成功。我必须在一天结束时使用该网站进行测试。
非常感谢答案。
答案 0 :(得分:-1)
解决了,在弄清楚implode需要在实时服务器上有一个数组类型(在localhost中它没有争论那个?? !!)我们需要将index [0]数组传递给implode函数:
因此,要关闭此问题,请将行更改为以下形式:
$imagem1[] = $command->queryOne();
['image' => implode('', $imagem1[0])],