小编Nic*_*ers的帖子

更好的蜜罐实施(形式反垃圾邮件)

我们如何在我们的网站上摆脱这些垃圾邮件?

在某些时候,每个网站都成为垃圾邮件的牺牲品.如何处理它会影响您的客户,大多数解决方案可能会阻止某些人填写您的表单.

这就是蜜罐技术的用武之地.它允许你忽略垃圾邮件而不强迫你的用户填写验证码或跳过其他篮球来填写你的表格.

这篇文章纯粹是为了帮助其他人在他们的网站表单上实现蜜罐陷阱.


更新:

自从在我所有客户的网站上实施以下蜜罐以来,我们已成功阻止了99.5%(数千份提交)的所有垃圾邮件.这是不使用"高级"部分中提到的技术,这将很快实施.

forms spam-prevention honeypot

49
推荐指数
3
解决办法
4万
查看次数

克隆和传递引用的问题

因此,在过去的几天里,我一直在试图让一个班级正确克隆.问题是克隆不会删除/重做任何pass-by-reference.结果是,主数据对象仍然作为引用传递,从而完全否定了克隆的影响.

这是问题的简化版本:

class my_class {

    private $data;

    public $var1;
    public $var2;
    public $var3;


    public function __construct() {
        $this->data = new stdClass;

        $this->data->var1 = 'a';
        $this->data->var2 = 'b';
        $this->data->var3 = 'c';

        $this->var1 = &$this->data->var1;
        $this->var2 = &$this->data->var2;
        $this->var3 = &$this->data->var3;
    }
}


$original  = new my_class;
$new       = clone $original;
$new->var3 = 'd';

// Output Should Be "c", outputs "d"
echo $original->var3;
Run Code Online (Sandbox Code Playgroud)

请在此处查看:http://3v4l.org/nm6NW

我的问题:我怎样才能__clone()用来纠正"d"到"c"的输出?

请以任何方式帮助你!?


更新

我最终使__clone()触发器出错并创建了一个名为make_clone()克隆标准化的函数.

__clone() 现在看起来像:

public function __clone() { …
Run Code Online (Sandbox Code Playgroud)

php oop clone pass-by-reference

9
推荐指数
1
解决办法
2154
查看次数

运行HHVM和普通Apache服务器

今天早上我开始使用HHVM作为我的默认本地服务器.大多数事情都很好,但我仍然有HHVM尚未完全支持的应用程序.

如果我只能切换端口或目录,那么不是更改配置和重新启动服务,而是更容易.

我的问题:是否可以在一个端口(80)上运行普通的Apache服务器,在另一个端口(8080)上运行HHVM供电的服务器?或者,是否可以仅在特定目录(及其"子目录")中运行HHVM?

在方案1中,切换到HHVM应用程序将如下所示:

  localhost/my-project/index.php
  localhost:8080/my-project/index.php
Run Code Online (Sandbox Code Playgroud)

在方案2中,切换到HHVM应用程序将如下所示:

  localhost/my-project/index.php
  localhost/hhvm/my-project/index.php
Run Code Online (Sandbox Code Playgroud)

我猜这可以通过Apache的配置文件来实现,但我不知道配置文件如何自己动手,请帮忙!?


操作系统: Ubuntu 14.04
Apache版本: 2.4.7
HHVM版本: 3.2.0

php apache hhvm

5
推荐指数
1
解决办法
1718
查看次数

作曲家/包装师忽略分支

因此,我在Github存储库中有以下分支:(遵循“ git flow”)

  • 掌握(最新稳定版:1.1.0)
  • 发展(2.0.0)
  • 功能/ feature_in_dev
  • 功能/ other_feature_in_dev
  • 版本1.0.0
  • 版本1..1.0

我已经知道如何创建分支别名,例如针对发行版。从技术上讲,composer.json每次我添加一个新的功能分支时都可以删除该文件,然后在准备将其合并到中时将其提交回来develop,但这将非常烦人并且容易忘记。

我的问题:如何隐藏Packagist的要素分支?

php composer-php packagist

5
推荐指数
1
解决办法
467
查看次数

如何在PHP中通过对比反转RGB十六进制值

到目前为止,我有以下代码:

function hexrgb_invert($hex) {
    $arr = str_split($hex, 2);
    foreach ($arr as &$value) {
        $c = base_convert($value, 16, 10);
        $value = str_pad(base_convert(255 - $c, 10, 16), 2, '0', STR_PAD_LEFT);
    }
    return implode('', $arr);
}
Run Code Online (Sandbox Code Playgroud)

问题:我需要根据对比度反转颜色.上述功能适用于某些功能,但不适用于其他功能.

示例:如果输入是9d702f输出9d702f.(2种对比度低的颜色)

我没有找到任何运气在StackOverflow上寻找其他地方,因为大多数答案似乎使用我已经使用的相同算法.


更多例子:

让我们说我试图找到#FFFFFF(白色)对比的对立面.这是非常直接的,因为白色是原色,因此可以很容易地计算出相反的颜色.(上述功能将完美适用.)#FFFFFF当然#000000(黑色)相反,当你比较2种颜色时,你会得到21:1对比度.

但是,如果我们尝试在颜色上使用上面相同的功能,#808080它将为我们提供颜色#7F7F7F.这两种颜色几乎相同,对比度仅为1.01:1.这是因为越接近十六进制80(十进制128),函数可以提供的对比度越小.

在特定情况下,#808080颜色#000000将提供最大的对比度为5.32:1.


解:

function rgb_best_contrast($r, $g, $b) {
    return array( …
Run Code Online (Sandbox Code Playgroud)

php algorithm hex

5
推荐指数
1
解决办法
1776
查看次数

为什么在 ES6 中不应该使用 import all

所以我最近开始学习 React 并注意到所有文档都有类似的导入:

import { Apples, Bananas, Oranges } from 'fruits';
Run Code Online (Sandbox Code Playgroud)

但是在研究 React 时我发现这种语法也同样有效:

import * as Fruits from 'fruits';
Run Code Online (Sandbox Code Playgroud)

我的问题:使用 import all 语法是否有任何性能损失或逻辑冲突?

如果没有,那么我将继续使用该语法。我宁愿更详细一点,而不必担心确保所有内容都已导入。

javascript ecmascript-6 reactjs es6-modules

5
推荐指数
1
解决办法
2354
查看次数

在本机反应中获取屏幕 DPI

语境:

我正在尝试创建一个能够使用现实世界维度的应用程序。在我的特殊情况下,如果不是 100% 准确也没关系;但是,越准确越好。

例如:如果我试图显示一个 3 厘米宽的正方形,而实际上我显示的是一个 2.8 厘米宽的正方形,这是可以接受的。

问题:

虽然似乎有办法以像素为单位获取屏幕的宽度和高度,但无法以厘米/英寸为单位获取屏幕 DPI 或屏幕的宽度和高度。

我的问题:如何获取或计算屏幕的 DPI?如果这是不可能的,是否有另一种方法可以尝试使用现实世界的测量?

dpi react-native

3
推荐指数
1
解决办法
4707
查看次数

如何禁用 WordPress 主题编辑器

我知道如何禁用特定 WordPress 站点中的插件/主题编辑器。

我的问题:是否可以从主题functions.php文件中禁用编辑器?

我的想法是,每当我的主题处于活动状态时,默认情况下将其关闭;但是,一旦接受了一些警告,就可以通过主题选项页面重新启用编辑器。(这是 WordPress应该做的事情,但无论出于何种原因,却没有这样做。)

除此之外,所讨论的特定主题非常先进。这意味着即使是知道自己在做什么的人也可能在没有意识到的情况下把事情搞砸。

php wordpress wordpress-theming

1
推荐指数
1
解决办法
5892
查看次数