草庐IT

php - 如何在php中增加文件名以防止重复

在很多情况下,我们需要在创建文件时使服务器上的文件名不同,以防止重复。最常见的答案似乎是,在末尾附加时间戳或将文件名存储在数据库中并使用这些存储的值来计算新名称。这些都很好,但是,附加一个很长的时间戳并不总是非常用户友好,并且存储在数据库中并不总是一种选择。那么,我们如何在通过php创建标准文件名时自动增加标准文件名? 最佳答案 所有这些答案似乎都有些矫枉过正:$k=0;while(!$result){if(!file_exists("file[$k].ext"))$result="file[$k].ext";$k++;}makef

php - 如何为上传的照片生成短文件名?

在使用PHP将新照片上传到Linux服务器时,我必须为它们指定唯一的名称(不能使用它的文件名)。没有与数据库的交互,因此也无法获得唯一的ID。我想过使用DATE+TIME.jpg,但是那太长了。那么用PHP创建尽可能短的唯一名称的最佳方法是什么? 最佳答案 使用tempnam().$filename=tempnam($dir,$prefix)它在指定目录中创建一个具有唯一名称的文件。生成的文件名很短,并且保证是唯一的。 关于php-如何为上传的照片生成短文件名?,我们在StackOver

PHP:没有文件扩展名的文件名 - 最好的方法?

我正在尝试从没有扩展名的目录中提取文件名。我正在努力解决以下问题:foreach($allowed_filesas$filename){$link_filename=substr(basename($filename),4,strrpos(basename($filename),'.'));$src_filename=substr($link_filename,0,strrpos($link_filename)-4);echo$src_filename;}...但是如果扩展字符串长度超过3,那将无法工作。我查看了PHP文档,但无济于事。 最佳答案

php - 使用唯一文件名通过 php 上传图像

我目前正在phonegap的帮助下编写移动应用程序。我希望此应用程序具有的少数几个功能之一是能够捕获图像并将其上传到远程服务器...我目前的图像捕获和上传/电子邮件部分在编译后的apk上工作正常...但在我的php中,我目前正在命名图像“图像[插入从10到20的随机数]...问题这里是数字可以重复,图像可以被覆盖......我已经阅读并考虑过使用rand()并选择一个从0到getrandmax()的随机数,但我觉得我可能有同样的机会文件覆盖...我需要每次都使用唯一名称将图像上传到服务器,无论如何......所以php脚本会检查服务器已经有什么并写入/上传图像有一个独特的名字...除了

PHP urlencode - 仅对文件名进行编码并且不要触摸斜杠

http://www.example.com/some_folder/somefile[that]needs"to"be(encoded).zipurlencode($myurl);问题是urlencode也会对斜杠进行编码,这使得URL无法使用。我如何才能只对最后一个文件名进行编码? 最佳答案 试试这个:$str='http://www.example.com/some_folder/somefile[that]needs"to"be(encoded).zip';$pos=strrpos($str,'/')+1;$result=s

PHP - FTP 文件名编码问题

我会很简短。我的FTP函数返回错误的文件名编码$conn_id=ftp_connect("site.com");ftp_login($conn_id,"login","pass");ftp_pasv($conn_id,true);$buff=ftp_nlist($conn_id,"./");print_r($buff);->//resultarray(){[0]=>"��.txt"}文件名采用Windows-1251编码。我尝试通过nodejs连接到FTP,但它也返回了一些令人毛骨悚然的东西—òð.txt。不过,我的桌面客户端(WinSCP)可以正常工作。PS:我尝试使用utf8_en

php - 服务器迁移后图像文件名中的特殊字符编码

我已将WordPress网站从Hostgator共享主机迁移到UbuntuDigitalOceanLAMP堆栈。当我导出带有特殊字符的图像文件时出现问题,例如文件operários_tarsila-1024x640.jpg。当WordPress尝试访问该文件时,它会显示错误。我找到了原因:我可以通过检查元素看到Wordpress尝试调用:http://mywebsite.com/wp-content/uploads/2013/02/oper%C3%A1rios_tarsila-1024x640.jpg并且服务器返回404错误。但是,如果我在浏览器中键入此URL:http://myweb

PHP:如何创建 unicode 文件名

我正在尝试创建文件名中包含Unicode字符的文件。我不太清楚我应该使用什么编码,或者是否可能。我有这个文件,以latin1编码保存:$h=fopen("unicode_♫.txt",'w');fclose($h);在UTF-8中,这将解码为“unicode_♫.txt”。它以latin1版本将其写入磁盘(这很明显?)。我需要将它保存为UTF-8解码时出现的样子。我也尝试过使用UTF-16对其进行编码,但这也不起作用。我正在使用PHP5.2,并希望它能与NTFS、ext3和ext4一起使用。如何做到这一点? 最佳答案 目前无法在

php - 如何获取文件夹下的文件名?

假设我有一个如下所示的目录:ABC|_a1.txt|_a2.txt|_a3.txt|_a4.txt|_a5.txt我如何使用PHP将这些文件名获取到一个数组,仅限于特定的文件扩展名并忽略目录? 最佳答案 您可以使用glob()功能:示例01:示例02:示例03:使用RecursiveIteratorIterator 关于php-如何获取文件夹下的文件名?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com

php 上传时的唯一文件名

我的网站上有一个上传图片的提交讨论表。现在,我想在用户提交图片时上传一个唯一的文件名,这样我就可以显示所有图片的结果并避免重复的文件名。我如何用php做到这一点?如果您需要我的表单处理代码,我会上传它。 最佳答案 可以使用uniqid()函数生成唯一ID/***GenerateauniqueID*@linkhttp://www.php.net/manual/en/function.uniqid.php*@paramprefixstring[optional]*Canbeuseful,forinstance,ifyougenerate