草庐IT

GLOB_BRACE

全部标签

php: 我可以在没有完整路径的情况下压缩 glob 文件吗?

这段代码就像在非常糟糕的一天里的一批神奇的新鲜薯片一样工作:PUREJOY。但是当我提取存档时,文件嵌套在它们存储在服务器上的路径中。我不喜欢。我如何在没有完整路径的情况下压缩glob;只是文件。$zip=newZipArchive();$zip->open("_dox/pdftmp/".$_SESSION['archiveName'],ZipArchive::CREATE);$files_pdf=glob('_dox/pdftmp/*.pdf');foreach($files_pdfas$file){$zip->addFile($file);}$zip->close();记住:只有文

php - 检查是否允许 glob()

我想在php脚本中使用glob(),但我收到用户的报告说服务器上并不总是允许这样做。一位用户报告了以下错误:Warning:glob()hasbeendisabledforsecurityreasons如何检测是否允许使用glob?这是通过disable_functions完成的吗?,或者还有其他方法可以禁用glob?safe_mode是否也禁用glob?(php.net上的一位评论者saysso)。除了检查safe_mode和disable_functions(如建议:howtotestifPHPsystem()functionisallowed?andnotturnedofffor

php - 为什么 PHP 函数 glob() 会返回与通配符不匹配的文件?

在data2目录中,我有这些文件:使用以下代码(在Mac上运行),我只想获取以.xls结尾的文件:$file_names=glob('data2/*.xls');foreach($file_namesas$file_name){echo$file_name.'';}我希望这段代码会返回一个文件27template.xls,但是,它还会返回包含TEMP的文件并添加一个.xls给他们:添加:同样,如果我将smaller.xls更改为smaller.xlsx那么它不会按预期找到它,但是如果我更改它到smaller.NNN它找到smaller.NNN.xls。如何使用glob()只获取.xls

php glob() 如果在 Windows 上为空则返回数组,在 Linux 上则没有

目前我有:$files=array_merge(glob($path_.'*.js'),glob($path_.'*.css'));如果目录在Windows上为空,则返回一个空数组。如果它们在linux上为空,则不返回任何内容。这会在Linux上产生这个错误:警告:array_merge()[function.array-merge]:参数#1不是数组Windows:Apache:2.2.21PHP:5.3.10Linux/Debian:Apache:2.2.16PHP:5.3.10经过进一步的研究和测试,我发现这是PHP中的一个错误:https://bugs.php.net/bug.

具有不区分大小写匹配的 PHP glob

我使用glob来查找文件夹作为$str="TestFolder";$folder=glob("$dir/*$str*");如何告诉glob进行匹配以找到不区分大小写的匹配文件夹?匹配测试文件夹、TESTFOLDER等注意$str是脚本的未知输入! 最佳答案 我可以建议在$str的每个字母上构建不区分大小写的字符范围吗?代码:(Demo)functionglob_i($string){//thisfunctionisnotmulti-byteready.$result='';//inittheoutputstringtoallowco

在Glob()php中使用两种模式?

我有一个文件列表,不同的项目由连字符分开,然后是“.txt”。例如:dog_cat.txt可能是一个文件,但是cat_dog.txt和cat.txt,dog.txt也是有效的。我可以使用Glob使用Glob返回所有文件,例如使用Glob()函数返回所有文件?还是只有一种模式合法?谢谢!看答案您可以使用牙套结合多种图案。glob('{Dog_*,*_Dog}.txt',GLOB_BRACE);

为 glob 或类似 Ant 的模式 "*foo/**/*.txt"返回 List<File> 的 Java 库?

我正在寻找一个库,它会提供一种方法,该方法会给我一个匹配给定类Ant模式的文件列表。对于*foo/**/*.txt我会得到foo/x.txtfoo/bar/baz/.txtmyfoo/baz/boo/bar.txt等我知道这可以通过DirWalker和PathMatchermat=FileSystems.getDefault().getPathMatcher("glob:"+filesPattern);,但我更喜欢一些维护的库。我希望CommonsIO拥有它,但没有。更新:我很高兴重用Ant的代码,但更喜欢比整个Ant更小的东西。 最佳答案

java - 在 Eclipse 中运行 Java 应用程序时如何避免 glob 扩展

我遇到了Eclipse运行配置的一个特殊行为,它似乎是一个仅限Windows的问题。假设我有一个Java应用程序可以打印出命令行参数,如下所示:publicclassWildCard{publicstaticvoidmain(String[]args){for(Stringarg:args){System.out.println(arg);}}}如果我为参数提供一个可以由shell扩展的通配符,shell将扩展它并将其提供给Java程序。这并不奇怪。所以,如果我在命令提示符下执行javaWildCardtest/*程序会打印test/foo.txttest/bar.txt其中foo.t

php - 使用 PHP 在同一类别的多个页面上生成 rel 规范(并使用 glob( ) 函数)

假设您在一家公司工作,该公司拥有一个相当大的电子商务网站,其中包含许多产品类别和子类别(有时还有子类别)。因此,为了方便用户,有些类别具有重复的子类别和重复的内容。每当用户登陆这些重复类别之一并将其指向对SEO更友好的类别时,您希望使用PHP生成rel规范。在这种情况下,带有重复子类别的类别是“随机的东西”,而我希望规范指向的类别是“各种东西”。因此,item_1.html-item_4.html都可以在“random-stuff”和“assorted-things”中找到,但我希望规范指向“assorted-things”。目前,这是我所拥有的:';?>';?>';?>';?>它可以

c++ - 使用 boost 的 Glob 风格正则表达式模式匹配

我需要搜索与某些模式匹配的文件,该模式类似于使用boost在glob命令行中给出的模式。例如:如果输入是myFiles*.c,它应该匹配文件myFiles.c、myFiles1.c、myFiles123.c等。尝试在perl模式下使用boost::regex_match。但我必须将输入模式作为myfiles.*.c而不是myFiles*.c。我可以识别myfiles*.c并将其转换为myFiles.*.c并在perl模式下将其提供给boost::regex_match。但是输入模式可以是glob样式中的任何有效正则表达式,因为它是为命令行实用程序提供的。在boost中有什么方法可以以g