簡體   English   中英

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";}

可以理解,這將是一個類,但是代碼在該類的上下文中和index.php中的工作方式相同。

由於使用uniq()這兩個名稱是不同的,這意味着您的代碼肯定會被調用兩次。 尋找那個。 此代碼段必須有一個循環或2個調用。 本身不可能發生。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM