草庐IT

zip_open

全部标签

php - 在 OJS(Open Journal System)中选择 MySQLi 驱动程序而不是 MySQL 驱动程序

我有这个错误:PHPfatalerror:未捕获错误:调用/home/epuedu/public_html/journal/epuojs/ojs/lib/pkp/lib/adodb/drivers/adodb-mysql.inc.php:456中的未定义函数mysql_connect()在OJS上搜索这个错误后:我找到了这个答案:如果是PHP7,您可能需要选择MySQLi驱动程序而不是MySQL驱动程序。所以我明白PHP7不再使用MYSQL驱动了。我的问题:如何将OJS连接切换到MYSQLi驱动程序?谢谢 最佳答案 我发现我可以在安

php - 我们如何在不解压缩 PHP 的情况下读取 zip 文件并获取包含的文件或文件夹的信息?

我真正想做的是读取zip文件,然后如果它确实包含文件夹则拒绝它并显示一些消息。我希望用户只上传没有任何目录结构的文件的zip文件。所以我想阅读zip文件包含并检查文件结构。我正在尝试使用以下代码片段。$zip=zip_open('/path/to/zipfile');while($zip_entry=zip_read($zip)){$filename=zip_entry_name($zip_entry);//@todocheckwhetherfileorfolder.} 最佳答案 我整理好了。我现在将文件名检查为字符串,无论我在哪里

php - 从命令行运行脚本时的 open_basedir 限制

我正在学习如何根据最近项目的要求使用命令行。我有一个将在cronjob期间运行的脚本,我正在使用Putty从命令行点击它来测试它。我的脚本在浏览器中运行良好,但在命令行中尝试包含文件甚至检查文件是否存在时出现权限错误。这只会在命令行中发生。这是控制台中的内容(我确定正在执行正确的脚本,现在它所做的只是检查是否存在所需的文件):这是终端中执行命令的行:secure:~/www/private/cron$php-f./update.php这是输出:Warning:file_exists():open_basedirrestrictionineffect.File(/usr/local/ap

php - 您可以在远程服务器上解压缩 .zip 文件吗?

我有一个脚本可以在服务器上解压缩文件,但是否可以在外部或远程服务器上解压缩文件。比如我可以去吗open('ftp://user:password@host/path/file.zip');$zip->extractTo('ftp://user:password@host/');$zip->close();echo"Ok!";?>非常感谢 最佳答案 您可以通过与该服务器的ssh连接尝试以下操作:更多信息在这里:http://www.php.net/manual/en/function.ssh2-exec.php

php - 使用 PHP 将文件添加到 zip 文件中的文件夹

如何使用PHP将文件添加到zip文件中的文件夹?例如,如果我有zip文件:myzip.zip|-hello.doc如果我想在“images”文件夹中添加文件“example.jpg”,zip文件将是:myzip.zip|-hello.doc|-images|-example.jpg我怎样才能做到这一点? 最佳答案 使用PHP的ZipArchive类。Here'sthedocumentation.所以你会做类似的事情:open('/path/to/your/file.zip');//Noticethesecondargumentwhi

php - 创建不创建 ZIP 的 ZIP 文件脚本(无错误)

我不是本地PHP开发人员,但我会使用我能找到的东西并一起破解,所以如果这没有太大意义,请原谅:我有一个简单的(看起来如此)脚本,它在URL中接受两个参数。一个是简单的字符串(要创建的ZIP的标题),另一个是序列化的音轨数组,指向服务器上需要压缩的文件。然后这些就可以正常通过并被反序列化等。这是脚本:open($destination,$overwrite?ZIPARCHIVE::OVERWRITE:ZIPARCHIVE::CREATE)!==true){returnfalse;}foreach($valid_filesas$file){$just_name=preg_replace("

php - 带有 mod_vhost_alias 的动态 open_basedir

我正在使用mod_vhost_alias并想为每个用户动态设置open_basedir。有点像php_admin_valueopen_basedir/var/www/vhosts/%1但它不起作用。因为我有很多虚拟主机(4000-5000)mod_macro不适合我。我正在尝试应用这个补丁http://wiki.preshweb.co.uk/doku.php?id=apache:securemassvhosting但没有成功。有什么建议吗? 最佳答案 您可以使用auto_prependphp.ini中的选项以提供将首先执行的脚本。在

PHP readfile() 无效的 zip

我有一个脚本可以在mysql数据库中查找文件,发送一些header,将文件命名为人类可读的名称,然后将其交付给用户。它工作了大约六个月(为数以千计的用户),直到大约6小时前。现在,Windows7用户现在会收到一条错误消息,提示“Windows无法打开文件夹。压缩(zipped)文件夹:'...filename.zip'无效。”无论用于下载的浏览器如何,都会发生这种情况。Linux用户等可以很好地打开交付的文件,Win7用户如果有WinRAR也可以。只有Windows资源管理器无法打开它们。这里真的很奇怪......如果我制作我的脚本的新副本并删除查找文件并决定命名它的各种包含,它将下

pipe - 使用 proc_open() 加载 .profile

情况是这样的:我编写了一个后端应用程序,它在某个服务器上运行。在此服务器上,有一个脚本可以通过ssh从前端服务器执行。然后我的脚本将检查是否正确加载了它需要的环境变量,因为我在脚本本身中严重依赖它们。这行得通,尽管不是我希望的工作方式。建立连接后,./profile不会加载,仅使用exec('source/home/user/.profile');当然是行不通的。由于脚本已经在运行。这就是为什么脚本是这样开始的:#!/to/php/bin/php-n那个帮助脚本是一个ksh脚本:#!/path/kshsource/.profile$*加载配置文件,并再次调用第一个脚本。我希望第二个脚本

php, proc_open 如何传递多个参数

我正在编写可在*nix系统下运行的php代码。我需要在php代码中调用带有5个参数的python脚本。一些争论是用户输入,所以可能有任何字符。我不知道如何将参数传递给脚本。我将如何分开论点?例如在thisquestion您按行尾字符分隔,但在我的论点中可以是用户编写的任何内容。如何传递这样的论点?有什么想法吗?编辑:我有将转义字符放在每个引号符号'或"之前的想法传递参数,在另一端我将摆脱转义字符。json编码可以吗? 最佳答案 你想要的函数是escapeshellcmd():$arg1=escapeshellarg($input1)