我需要复制,移动和删除文件。如何以OOP方式处理文件?
这是否有任何组件或类?
我发现这一点,但它只是移动:http://api.symfony.com/master/Symfony/Component/HttpFoundation/File/File.html
或者,也许我应该坚持到本机的功能呢?
我需要复制,移动和删除文件。如何以OOP方式处理文件?
这是否有任何组件或类?
我发现这一点,但它只是移动:http://api.symfony.com/master/Symfony/Component/HttpFoundation/File/File.html
或者,也许我应该坚持到本机的功能呢?
关于Symfony框架,你可以看看Symfony\Component\Filesystem\Filesystem
你贴在HttpFoundation仅用于上传的文件一类的链接。
PHP有很多功能来处理文件系统。
copy()
function做,因为它的名字所暗示的 - 将文件复制rename()
function实际上重命名和/或移动文件。这种行为对于linux用户来说很熟悉,如mv
命令。unlink()
function用于删除文件。PHP's documentation有一整段专用于文件系统操作的功能。
面向对象的方法会在您将代码中的这些函数实现的时候以及如何实现。
@shi - 我同意。大写字母必须放在需要的地方:P感谢编辑;) – Lix
当然,但这不是OOP,我不确定我是否应该在Symfony2项目中使用它。例如:你可以用exec()执行命令,但是你意识到在Symfony中有这样做的更好的方法。 – ChocoDeveloper
这是任何PHP代码(最终)如何操纵文件。这是包装和你如何使用它,使它面向对象。随你便! :) – Lix
你可以启动你自己的helper类来包装程序命令吗?或者,您可以查看一些文件系统助手类或类似的流行框架。
class File {
public static function exists($file) {
return file_exists($file);
}
public static function copy($file, $destination) {
// checks
return copy($file, $destination);
// error handling
}
public static function move($file, $destination) {
return rename($file, $destination);
}
public static function delete($file) {
return unlink($file);
}
}
File::copy('test.txt', 'copy.txt');
[文件系统组件](http://symfony.com/doc/master/components/filesystem.html) – ChocoDeveloper