你好我一直在探索在实现网站时使用框架cakephp。在我当前的PHP脚本中出现此错误:未定义的偏移量:1并且它已经让我头疼。你能帮助我解决我做错的事吗。
我的代码在这里:
function file_upload($file_array, $id){
if(count($file_array))
{
$location = "files/library-files/";
foreach ($file_array as $file) {
$ext = explode(".", $file['name']);
$new_name = md5(uniqid());
$target_path = $location . $new_name .".".$ext[1];
if(move_uploaded_file($file['tmp_name'], $target_path))
{
$this->LibraryFiles->create();
$this->LibraryFiles->set('id', $new_name);
$this->LibraryFiles->set('library_id', $id);
$this->LibraryFiles->set('name', $file['name']);
$this->LibraryFiles->set('ext', $ext[1]);
$this->LibraryFiles->set('type', $file['type']);
$this->LibraryFiles->set('size', $file['size']);
if($this->LibraryFiles->save())
{
}
else
{
}
}
}
}
}
答案 0 :(得分:2)
您可以添加以下支票:
if(isset($ext[1]))
{
$target_path = $location . $new_name .".".$ext[1];
}
else if($file['name'] !== '.' && $file['name'] !== '..')
{
$target_path = $location . $new_name;
}
else
{
continue;
}
答案 1 :(得分:-1)
我刚刚更换了这个$ target_path = $位置。 $ new_name。“。”。$ ext [1];
与
if (isset($target_path))
$target_path = $location . $new_name .".".$ext[1];
else
$target_path = '';
现在我很高兴:D