PHP 一次创建两个文件名不同但内容相同的文件
PHP creates two files at a time with different files names but with the same content
目标是创建自定义会话文件的存储库。当我使用此代码将数据写入会话文件时,php 创建了两个名称不同但内容相同的文件。为什么会这样?
$uniqFileName = sha1(uniqid('', true)) . '.sess';
$path = '/storage/sessions/';
$sessionContent = ['name' => 'SomeName', 'age' => 'SomeAge'];
file_put_contents($path . $uniqFileName, serialize($sessionContent));
这会同时创建两个内容相同的文件:
0b2399001549e543d067ea28c6561a1b752f58a9.sess
685fcb86fc7310d58e1154ca6b6d029630bb6d56.sess
两个文件的内容:
a:2:{s:4:"name";s:8:"SomeName";s:3:"age";s:7:"SomeAge";}
据了解,这将是一个 class,但代码在 class 和 index.php 上下文中的工作方式相同。
由于使用 uniq()
时这两个名称不同,这意味着您的代码肯定会被调用两次。寻找那个。此代码部分必须有一个循环或 2 个调用。不能自己发生。
目标是创建自定义会话文件的存储库。当我使用此代码将数据写入会话文件时,php 创建了两个名称不同但内容相同的文件。为什么会这样?
$uniqFileName = sha1(uniqid('', true)) . '.sess';
$path = '/storage/sessions/';
$sessionContent = ['name' => 'SomeName', 'age' => 'SomeAge'];
file_put_contents($path . $uniqFileName, serialize($sessionContent));
这会同时创建两个内容相同的文件:
0b2399001549e543d067ea28c6561a1b752f58a9.sess
685fcb86fc7310d58e1154ca6b6d029630bb6d56.sess
两个文件的内容:
a:2:{s:4:"name";s:8:"SomeName";s:3:"age";s:7:"SomeAge";}
据了解,这将是一个 class,但代码在 class 和 index.php 上下文中的工作方式相同。
由于使用 uniq()
时这两个名称不同,这意味着您的代码肯定会被调用两次。寻找那个。此代码部分必须有一个循环或 2 个调用。不能自己发生。