Yii将上传的文件保存到base64字符串

Sam*_*son 4 php yii

我想使用base64在我的数据库中保存上传的照片,但我无法获取数据:

形成:

<?php $form=$this->beginWidget('CActiveForm',
            array(
                    'id' => 'upload-form',
                    'enableAjaxValidation' => false,
                    'htmlOptions' => array('enctype' => 'multipart/form-data'),
            ));?>
<?php echo $form->fileField($model, 'attachment');?>
Run Code Online (Sandbox Code Playgroud)

控制器:

$model->attributes=$_POST['Post'];
                    //gives me the filename
        $model->attachment=CUploadedFile::getInstance($model,'attachment');
Run Code Online (Sandbox Code Playgroud)

如何获取内容以便我可以编码?

小智 5

像这样做:

$model->attributes=$_POST['Post'];

//gives me the filename
$tmpfile = CUploadedFile::getInstance($model,'attachment');

$tmpfile_contents = file_get_contents( $tmpfile->tempName );

$model->attachment = base64_encode($tmpfile_contents);
Run Code Online (Sandbox Code Playgroud)