变量如何保存非标量数据

时间:2013-12-11 18:05:53

标签: php file variables memory memory-management

我对变量如何将文本文件的数据存储到内存中感到困惑。

示例:

<?php
$varContent  = 'book.txt'; 

现在,我想清楚的是,$varContent中存储了什么?是简单的字符串名称'book.txt'还是文件类型,标题,文件中的信息存储在变量中?

将文件整个内容与变量一起存储的负面(如果有的话)会破坏某些约定还是完全可以接受?

为了进一步阐明我的观点,如果我确实将如上所示的文件目的地存储到变量中,并且我在我的类中使用了这个变量,是否存在某种内存约束或性能问题?因为,我的印象是将字符串/ int分配给变量很好,因为内存占用很小,但是在这里和那里调用,5MB .txt文件可能不会。

所以,我只是想要更好地理解这一点。 感谢。

2 个答案:

答案 0 :(得分:1)

如果您已经显示存储的唯一内容是简单字符串。没有其他信息可以向PHP表明字符串是指文件。

修改

要打开文件并在内存中包含元数据,请使用SplFileObject

之类的内容
<?php
$file = new SplFileObject("/etc/passwd");
$stat = $file->fstat();

答案 1 :(得分:1)

这只是一个字符串。如果要加载文件,可以使用

$content = file_get_contents("book.txt");

(你只会得到内容,没有其他信息)。