草庐IT

php - 强制在所有浏览器中保存文件 - 不在浏览器窗口中打开

我正在寻求一种适用于所有浏览器的简单解决方案。对于特定文件类型或通过类的目标链接:我怎样才能让它们在所有主流浏览器中简单地强制下载。我以为我找到了apachce服务器的完美解决方案-将其添加到.htaccess中。http://css-tricks.com/snippets/htaccess/force-files-to-download-not-open-in-browser/AddTypeapplication/octet-stream.csvAddTypeapplication/octet-stream.xlsAddTypeapplication/octet-stream.doc

php - 强制代码在页面关闭后继续运行

我有一个可以运行几分钟的While循环(函数),有时可能需要长达10分钟,有时需要30分钟。我不想让用户在打开网页窗口的情况下等待30分钟,我想让用户关闭窗口并让循环自行继续。我希望用户打开网页点击一个按钮来启动该功能,然后关闭页面并让该功能自行运行。这样的事情有可能吗? 最佳答案 您可以查看fastcgi_finish_request().它允许您的脚本继续运行但“挂断”与浏览器的连接。当然应该小心使用它,否则您可能会面临许多进程在半后台运行的风险。当然,这只适用于php-fpm。否则你会看到像gearman这样的东西,基本上任何

php - 强制客户选中复选框以确认他们已阅读文档

我有一个WooCommerce网站,其中有一些产品由于订购错误而获得了大量返回。我添加了一个“备忘单”,客户可以通过高级自定义字段进行引用。我编写了以下代码来强制他们在将产品添加到购物车之前选中该框以确认他们已阅读它。问题是无论他们是否选中该框,我都会显示自定义错误消息。所以很明显我的逻辑有缺陷,但我无法查明它。如有任何帮助,我们将不胜感激。IconfirmthatIhavereadthe"/>cheatsheet. 最佳答案 错误在这里。IconfirmthatIhavereadthe">cheatsheet改成这样Iconfir

PHP7 : Methods with a scalar type declaration refuse to type juggle NULL values, 即使在弱/强制模式下

截至PHP7.0,标量类型提示int、float、string和bool可以包含在方法签名中。默认情况下,这些类型声明以弱/强制模式(或“typejuggling”模式)运行。根据PHPmanual:PHPwillcoercevaluesofthewrongtypeintotheexpectedscalartypeifpossible.Forexample,afunctionthatisgivenanintegerforaparameterthatexpectsastringwillgetavariableoftypestring.但即使可以将NULL强制转换为整数0,具有int类型提

php - Yii2 - 如何强制响应 JSON 格式化程序使用对象而不是数组?

我知道我可以设置Yii::$app->response->format=\yii\web\Response::FORMAT_JSON但我如何设置JSON编码标志JSON_FORCE_OBJECT以便将所有数组编码为对象? 最佳答案 好吧,没那么难:Yii::$app->response->formatters[\yii\web\Response::FORMAT_JSON]=['class'=>'yii\web\JsonResponseFormatter','encodeOptions'=>JSON_FORCE_OBJECT,];甚至

php - 有没有办法强制 Yii2 在每次请求时重新加载模块 Assets ?

我的网站分为独立的模块。每个模块都有自己特定的css或js文件。当我第一次打开一个使用我的Assets的页面时,Yii的assetManager会创建一个文件夹。不幸的是,如果我在文件中更改某些内容,Yii1.x不会重新加载我的css或js文件。我必须手动删除web/assets文件夹。当您开发应用程序时,这真的很烦人。这在我将模块添加到后端文件夹时有效,但在我使用自己的命名空间在供应商文件夹中创建模块时无效。 最佳答案 在Yii2中,您可以像这样将时间戳附加到Assets的URL中......return[//...'compon

php - 如何强制 PHP/Apache 再使用一年?

因此,另一名员工将一个旧项目交给了我。它的编码很糟糕,差点让我辞掉工作。两次。因为我没有那么多时间(我有2周的时间来完成这项任务),所以我无法重写整个内容。我按照要求修改了它,目前,我正在进行测试。问题是,代码应该改变它在其他年份的行为。这个问题的问题是,没有设置当前年份的中心位置,它遍布使用date("Y")的代码,这将迫使我更改大约200个文件。因此,最简单的解决方案是在开始时告诉PHP:“嘿,现在是20xx年”。我尝试了date_default_timezone_set(),但这对我一点帮助都没有。所以我正在寻找的是:将当前年份更改为设定值的PHP命令(如Set_Date("Y"

php - 有没有办法强制用户从 href 链接下载文件而不是在浏览器窗口中打开它?

基本上我写了一个脚本,它根据用户输入生成一个xml文件。生成文件后,会出现一个下载链接,如下所示:DownloadFile但是当单击它时它会在浏览器中打开xml,我希望它在单击链接时开始下载。有什么办法可以实现吗? 最佳答案 是的,有。它确实需要指定一些标题。具体如何工作取决于您使用的语言,但这里有一个使用php的示例,取自php.net:基本上,首先我们告诉客户端我们要发送的文件类型,然后我们告诉客户端我们要发送的是一个附件,它的名称,而不是要显示的页面,最后我们将文件打印/读取到输出。鉴于您已经在使用php来生成xml文件,我建

php - 使用 PHP 强制下载然后重定向

我知道这个问题已经被问过很多次了,但我找不到适合我需要的答案。我需要找到一种方法来强制下载文件,然后在下载开始后重定向到“感谢下载”页面。到目前为止我有:隐藏下载文件的位置很重要,否则我会创建一个指向该文件的HTML链接。我显然不能将重定向header放在其他header下方,因为它不会起作用。除了在弹出窗口中打开它并将主窗口定向到“谢谢”页面之外,我真的看不出从这里去哪里-但这是最​​后的选择。谁能给点建议?干杯,丰富 最佳答案 您不能隐藏文件位置。任何有决心找到它的人都可以清楚地看到它,因为浏览器需要知道URL才能下载文件。如您

php - 强制某人让他的子类实现接口(interface)的方法

我想知道如何强制子类实现给定的接口(interface)方法。假设我有以下类(class):interfaceSerializable{publicfunction__toString();}abstractclassTag//AnyHTMLorXMLtagorwhateverlike,,,etc{protected$attributes=array();publicfunction__get($memberName){return$this->attributes[$member];}publicfunction__set($memberName,$value){$this->att