jjzjj

php - php 中的 tmp 文件名是如何生成的?

coder 2024-04-20 原文

在php中tmp文件名(上传)是如何生成的?它的机制是什么?我可以相信它们总是独一无二的吗?

问题是我想将所有上传的文件复制到一个 const 目录中,我不确定 tmp 名称是否会在我的服务器运行历史中再次出现。

最佳答案

最终由 PHP 生成的临时文件名使用函数 mkstemp/mktemp这保证文件名是唯一的。如果它生成的文件名已经存在,它将多次尝试生成一个不存在的文件名。

在 Windows 上,PHP 使用 GetTempFileName这对唯一性做出了相同的保证。

无论哪种情况,如果函数不能返回唯一的文件名,它们将返回一个错误值,PHP 根本不会返回文件名。

关于php - php 中的 tmp 文件名是如何生成的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13037969/

有关php - php 中的 tmp 文件名是如何生成的?的更多相关文章

  1. php - Twitter 用户名的正则表达式不起作用 - 2

    以下用于验证Twitter用户名的正则表达式函数不起作用,因为Twitter名称最少为1个字符,最多为20个字符。但是,当我对此进行测试时,它允许用户名超过20个字符。我哪里出错了?publicfunctionval_username($subject){return(bool)preg_match('/[a-zA-Z0-9_]{1,20}/',$subject);} 最佳答案 您忘记了$和^/^[a-zA-Z0-9_]{1,20}$/应该有效publicfunctionval_username($subject){

  2. php - postgresql全文搜索中的问题,包含单引号 - 2

    我需要使用全文搜索来获取列中包含单词O'henry的行我的代码:$word="O'henry";$sql="SELECT*FROMmytableWHEREto_tsvector('english',col)@@to_tsquery(:word)";$sth=$db->prepare($sql);$sth->execute(array(":word"=>$word));我有两个问题:1)此查询匹配包含单词O'henry的列,但它也匹配包含以下内容的列,例如:“Oyes,thierryhenryisg

  3. PHP:为什么将 "Strict standards: Declaration of x should be compatible with y"应用于静态方法? - 2

    如果您编写如下代码,PHP警告“严格标准:x的声明应与y兼容”会警告您:classA{functionfoo($x){..}}classBextendsA{functionfoo(){..}}这是明智的,因为像“$a”这样的对象引用,您认为它是A,但在运行时可能会变成B,因此像$a->foo(3)这样的动态调度方法调用可能最终调用B::foo()时使用了错误数量的参数。我的问题是:为什么同样的警告适用于不是动态调度的静态方法?classX{staticfunctionbar($x){..}}classYextendsX{staticfunctionbar(){..}}在这个例子中,函数

  4. php - 使用php从文本文件中删除文本 - 2

    我尝试删除文本文件中的一些文本。文本文件是这样的:#MESSAGE:0*^(To|cc).*fd.*|/usr/bin/vacationfd#monfiltreperso:0*^From.*martial@gironde.comMaildir/.repertorymoi#FIN#monfiltreperso2:0*^Subject:.*monsujet2Maildir/.repertorymoi2#FIN#monfiltreperso3:0*^From.*martial2@gironde.comMaildir/.repertorymoi2#FIN我尝试删除#monfiltre...和#

  5. php - 匹配文件名第一部分的全局模式 - 2

    在一个目录中,我有像123X1.jpg、23X1.jpg、23X2.jpg、4123X1.jpg这样的文件名。我需要glob模式来仅获取以所需字符串开头的列出文件。例如:'23X'->23X1.jpg,23X2.jpg'123X'->123X1.jpg模式的最后一部分始终是X。第一个是数字。 最佳答案 glob()很简单:print_r(glob('/path/to/23X*.jpg'));print_r(glob('/path/to/123X*.jpg')

  6. php - 上传时无法创建临时文件 - 2

    尝试使用表单和PHP/IIS7上传文件时,我收到此消息:PHPWarning:Fileuploaderror-unabletocreateatemporaryfileinUnknownonline0我的表格:<formaction="acciones.php"id="form3"method="POST"enctype="multipart/form-data"><inputtype="hidden"value="3"name="accion"><

  7. php - Else If block 和大括号 - 2

    知道在PHP中我们可以忽略条件block中的花括号,在“if”、“elseif”或“else”标记之后只有一个函数/行,如下所示:if(myVal=="1")doThis();elseif(myVal=="2")doThat();elsedoNothing();我问自己是否有这样的事情:if(myVal=="1")doThis();elseif(myVal2==true)doThat();elsedoNothing();被PHP视为:if(myVal=="1"){doThis();}else{if(myVal2==true

  8. php - 使用 PHP SimpleXML 选择具有特定名称的所有节点 - 附上源代码 - 2

    在下面的XML文件中,我试图打印所有TestItem节点,但只得到4outer节点。请问有人知道如何打印每个具有该名称的节点,而不管它们的位置如何吗?数据.xml:<?xmlversion="1.0"?><Tests><TestItemName="UpdateBootProfile"Result="PASS"/><TestItemName="NRBBoot"Result="PASS"><TestItemName="BootTest"Res

  9. PHP,获取 $_GET 以忽略来自 url 的数字 - 2

    我目前正在使用一个程序来发送时事通讯,在每份时事通讯中我都会发送一个链接,这样客户就可以查看他自己的数据并订阅/取消订阅时事通讯。我现在使用的链接是这样的:http://localhost/Mail/subscriptionseditklant.php?ID=77并且是用这段代码制作的:<ahref="subscriptionsedit.php?page=1&ID=<?=$objResult["ID"];?>">subscriptions</a>出于安全原因,我不想显示客户ID=77部分,这样他就无法修改它来查

  10. PHP Joomla 恶意软件隐藏链接删除 - 2

    我有一个网站会自动在联系我​​们页面和其他3个页面下添加隐藏链接。我删除了所有恶意软件代码,但它仍在该页面上重命名,我还检查了数据库,但没有迹象表明找不到任何签名。这是页面上出现的链接<divid="xXQrAdjTl"style="position:absolute;top:-1004px;left:-1540px;width:307px;"><ahref="http://buycialisonlinepharmacys.com"title="Address">buycheapcialiswith

随机推荐

  1. php - Twitter 用户名的正则表达式不起作用 - 2

    以下用于验证Twitter用户名的正则表达式函数不起作用,因为Twitter名称最少为1个字符,最多为20个字符。但是,当我对此进行测试时,它允许用户名超过20个字符。我哪里出错了?publicfunctionval_username($subject){return(bool)preg_match('/[a-zA-Z0-9_]{1,20}/',$subject);} 最佳答案 您忘记了$和^/^[a-zA-Z0-9_]{1,20}$/应该有效publicfunctionval_username($subject){

  2. php - postgresql全文搜索中的问题,包含单引号 - 2

    我需要使用全文搜索来获取列中包含单词O'henry的行我的代码:$word="O'henry";$sql="SELECT*FROMmytableWHEREto_tsvector('english',col)@@to_tsquery(:word)";$sth=$db->prepare($sql);$sth->execute(array(":word"=>$word));我有两个问题:1)此查询匹配包含单词O'henry的列,但它也匹配包含以下内容的列,例如:“Oyes,thierryhenryisg

  3. PHP:为什么将 "Strict standards: Declaration of x should be compatible with y"应用于静态方法? - 2

    如果您编写如下代码,PHP警告“严格标准:x的声明应与y兼容”会警告您:classA{functionfoo($x){..}}classBextendsA{functionfoo(){..}}这是明智的,因为像“$a”这样的对象引用,您认为它是A,但在运行时可能会变成B,因此像$a->foo(3)这样的动态调度方法调用可能最终调用B::foo()时使用了错误数量的参数。我的问题是:为什么同样的警告适用于不是动态调度的静态方法?classX{staticfunctionbar($x){..}}classYextendsX{staticfunctionbar(){..}}在这个例子中,函数

  4. php - 使用php从文本文件中删除文本 - 2

    我尝试删除文本文件中的一些文本。文本文件是这样的:#MESSAGE:0*^(To|cc).*fd.*|/usr/bin/vacationfd#monfiltreperso:0*^From.*martial@gironde.comMaildir/.repertorymoi#FIN#monfiltreperso2:0*^Subject:.*monsujet2Maildir/.repertorymoi2#FIN#monfiltreperso3:0*^From.*martial2@gironde.comMaildir/.repertorymoi2#FIN我尝试删除#monfiltre...和#

  5. php - 匹配文件名第一部分的全局模式 - 2

    在一个目录中,我有像123X1.jpg、23X1.jpg、23X2.jpg、4123X1.jpg这样的文件名。我需要glob模式来仅获取以所需字符串开头的列出文件。例如:'23X'->23X1.jpg,23X2.jpg'123X'->123X1.jpg模式的最后一部分始终是X。第一个是数字。 最佳答案 glob()很简单:print_r(glob('/path/to/23X*.jpg'));print_r(glob('/path/to/123X*.jpg')

  6. php - 上传时无法创建临时文件 - 2

    尝试使用表单和PHP/IIS7上传文件时,我收到此消息:PHPWarning:Fileuploaderror-unabletocreateatemporaryfileinUnknownonline0我的表格:<formaction="acciones.php"id="form3"method="POST"enctype="multipart/form-data"><inputtype="hidden"value="3"name="accion"><

  7. php - Else If block 和大括号 - 2

    知道在PHP中我们可以忽略条件block中的花括号,在“if”、“elseif”或“else”标记之后只有一个函数/行,如下所示:if(myVal=="1")doThis();elseif(myVal=="2")doThat();elsedoNothing();我问自己是否有这样的事情:if(myVal=="1")doThis();elseif(myVal2==true)doThat();elsedoNothing();被PHP视为:if(myVal=="1"){doThis();}else{if(myVal2==true

  8. php - 使用 PHP SimpleXML 选择具有特定名称的所有节点 - 附上源代码 - 2

    在下面的XML文件中,我试图打印所有TestItem节点,但只得到4outer节点。请问有人知道如何打印每个具有该名称的节点,而不管它们的位置如何吗?数据.xml:<?xmlversion="1.0"?><Tests><TestItemName="UpdateBootProfile"Result="PASS"/><TestItemName="NRBBoot"Result="PASS"><TestItemName="BootTest"Res

  9. PHP,获取 $_GET 以忽略来自 url 的数字 - 2

    我目前正在使用一个程序来发送时事通讯,在每份时事通讯中我都会发送一个链接,这样客户就可以查看他自己的数据并订阅/取消订阅时事通讯。我现在使用的链接是这样的:http://localhost/Mail/subscriptionseditklant.php?ID=77并且是用这段代码制作的:<ahref="subscriptionsedit.php?page=1&ID=<?=$objResult["ID"];?>">subscriptions</a>出于安全原因,我不想显示客户ID=77部分,这样他就无法修改它来查

  10. PHP Joomla 恶意软件隐藏链接删除 - 2

    我有一个网站会自动在联系我​​们页面和其他3个页面下添加隐藏链接。我删除了所有恶意软件代码,但它仍在该页面上重命名,我还检查了数据库,但没有迹象表明找不到任何签名。这是页面上出现的链接<divid="xXQrAdjTl"style="position:absolute;top:-1004px;left:-1540px;width:307px;"><ahref="http://buycialisonlinepharmacys.com"title="Address">buycheapcialiswith