Php 如何以面向对象的方式处理文件?
我需要复制、移动和删除文件 是否有用于此的组件或类 我发现了这个,但它只会移动:Php 如何以面向对象的方式处理文件?,php,oop,symfony,symfony-2.1,Php,Oop,Symfony,Symfony 2.1,我需要复制、移动和删除文件 是否有用于此的组件或类 我发现了这个,但它只会移动: 或者我应该坚持使用本机函数?PHP有很多函数来处理文件系统 按照其名称的含义执行-复制文件 实际重命名和/或移动文件。linux用户将熟悉这种行为,如mv命令 用于删除文件 有一整套专门用于文件系统操作的功能 当您在代码中实现这些功能时,以及如何在代码中实现这些功能时,面向对象的方法将发挥作用。关于Symfony框架,您可以查看 您发布的链接是HttpFoundation中的一个类,仅用于上载的文件。您可以启
或者我应该坚持使用本机函数?PHP有很多函数来处理文件系统
- 按照其名称的含义执行-复制文件
- 实际重命名和/或移动文件。linux用户将熟悉这种行为,如
命令mv
- 用于删除文件
当您在代码中实现这些功能时,以及如何在代码中实现这些功能时,面向对象的方法将发挥作用。关于Symfony框架,您可以查看
您发布的链接是HttpFoundation中的一个类,仅用于上载的文件。您可以启动自己的帮助器类来包装过程命令吗?或者,您可以浏览一些流行的文件系统助手类框架或类似的框架
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' );
@我同意。大写字母必须放在需要的地方:P谢谢您的编辑;)当然,但这不是面向对象的,我也不确定是否应该在Symfony2项目中使用它。例如:您可以使用exec()执行命令,但随后您意识到在Symfony中有更好的方法来执行命令。这就是任何PHP代码(最终)操作文件的方式。包装器以及如何使用包装器使其成为面向对象的。由你决定!:)听着,我不想争论,但是如果已经有一个包装器来改进这一切(例如:抛出异常而不是警告/致命错误),我想知道。我知道这只是另一层抽象。