我使用MVC。这是我在模型中的函数:
public function saveImagenPerfil($data){
jimport('joomla.filesystem.file');
jimport('joomla.filesystem.folder');
$table = $this->getTable();
$milliseconds = round(microtime(true) * 1000);
$foto = JRequest::getVar('imagen', null, 'files', 'array');
$data['imagen'] = $foto['name'];
$table->load($data['cid'][0]);
if ($data['imagen']!=""){
$this->saveImagen($data['cid'][0], $foto);
$table->set('imagen' , $data['imagen']);
}
if (!$table->check() or !$table->store()){
return 1; // no se puede guardar en base de datos
}
}
我需要在图像名称前面添加$milliseconds
,然后保存在文件夹和数据库中。我该怎么做呢?
如果您需要更多的信息,我将尽可能多地提供给您。
这是$foto
带回来的
array(5) { ["name"]=> string(12) "IMG_2233.JPG" ["type"]=> string(10) "image/jpeg" ["tmp_name"]=> string(26) "/var/zpanel/temp/phpGB5kUE" ["error"]=> int(0) ["size"]=> int(2737252) }
在将整个$foto
数组传递到您的保存函数之前,您必须覆盖文件名:
(注意:这个答案是由OP在聊天中发布的请求):
public function saveImagenPerfil($data){
jimport('joomla.filesystem.file');
jimport('joomla.filesystem.folder');
$table = $this->getTable();
$milliseconds = round(microtime(true) * 1000);
$foto = JRequest::getVar('imagen', null, 'files', 'array');
$data['imagen'] = $foto['name'];
$table->load($data['cid'][0]);
if ($data['imagen']!=""){
$foto['name'] = $milliseconds . $foto['name'];
$this->saveImagen($data['cid'][0], $foto);
$table->set('imagen' , $data['imagen']);
}
if (!$table->check() or !$table->store()){
return 1; // no se puede guardar en base de datos
}
}