小编Bra*_*ady的帖子

如果key在另一个数组中,则从数组中删除键

我有两个数组

array1 (
    "akey1" => "dfksjhf"
    "akey2" => "adasjkgffs"
    "akey3" => "afkjhsafshfkah"
)

array2 (
    "akey2" => "could be anything..."
)
Run Code Online (Sandbox Code Playgroud)

我正在寻找一个PHP函数,我可以提供两个数组,并将发生以下情况:

如果两个数组都具有相同的密钥(无论数据如何),则从数组1中删除密钥并返回数组1的其余部分.

如果运行将返回的函数:

array3 (
    "akey1" => "dfksjhf"
    "akey3" => "afkjhsafshfkah"
)
Run Code Online (Sandbox Code Playgroud)

是否有PHP函数可以执行此操作,如果不是,那么在PHP中执行此功能的最快和最有效的方法是什么?

非常感谢

php arrays function multidimensional-array

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

电子邮件模板样板 - 无法设置行高

我正在使用这个样板:http://htmlemailboilerplate.com/

我想要一个表行为6px的高度,一行是1px的高度.无论我尝试什么,表行不会低于15px的高度.巧合15px是字体大小.

码:

...
<tr>
    <td height="6" style="height: 6px;">&nbsp;</td>
</tr>
<tr>
    <td height="1" style="height: 1px;"><img src="images/bar.gif" width="220" height="1" /></td>
</tr>
...
Run Code Online (Sandbox Code Playgroud)

我有什么方法可以让这个表行成为我想要的高度?

html css html-table html-email email-templates

3
推荐指数
2
解决办法
7611
查看次数

jQuery添加结束标记,然后在使用.before()时重新打开

我有这个HTML:

    <ul>
        <div>
            <li>a</li>
            <li>b</li>
            <li class="break">c</li>
            <li>d</li>
            <li>f</li>
        </div>
    </ul>
Run Code Online (Sandbox Code Playgroud)

我想要的是class="break"我希望父母div关闭并打开一个新的,所以我最终得到这个:

    <ul>
        <div>
            <li>a</li>
            <li>b</li>
        </div>
        <div>
            <li>c</li>
            <li>d</li>
            <li>f</li>
        </div>
    </ul>
Run Code Online (Sandbox Code Playgroud)

现在我试过这个:

$(".break").before("</div><div>");

但jQuery没有像我期望的那样行事,而是改写我输入的内容div而改为空.像这样:

    <ul>
        <div>
            <li>a</li>
            <li>b</li>
            <div></div>
            <li class="break">c</li>
            <li>d</li>
            <li>f</li>
        </div>
    </ul>
Run Code Online (Sandbox Code Playgroud)

那么我怎样才能实现我的目标呢?

html jquery dom-manipulation

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

PHP使用默认数组来保持实时数组的正确结构

我有一个数组,为我的插件保留一些默认设置.随着插件的发展,设置可能会被删除或从版本添加到版本.

这是一个示例默认数组:

$defaults = array(
                    'setting1' => 'somevalue',
                    'setting2' => 'somevalue',
                    'setting4' => 'somevalue',
                  );
Run Code Online (Sandbox Code Playgroud)

以下是实时设置数据的示例,需要为新的$ default结构更新结构:

$livesettings = array(
                        'setting1' => 'foo',
                        'setting2' => 'bar',
                        'setting3' => 'foobar',
                      );
Run Code Online (Sandbox Code Playgroud)

我正在寻找一个函数,我可以传递两个数组,并更新livesettings的结构以匹配$ defaults.

所以在这种情况下,在livesettings:

  1. 未触摸setting1和setting2.他们的价值观保持不变
  2. 不再需要删除setting3
  3. 使用默认值添加setting4 somevalue

他们在PHP中的任何功能可以一次完成吗?如果是的话是什么?如果没有,我将如何使用PHP代码实现这一目标?

php arrays merge

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

PHP匿名函数在某些安装上导致语法错误

我有以下代码:

    $file_check_method_func = function($n) {
        $n = absint($n);
        if(1 !== $n) { $n = 0; }
        return $n;
    };
    $valid['file_check_method'] = array_map($file_check_method_func, $input['file_check_method']);
Run Code Online (Sandbox Code Playgroud)

这适用于我的PHP 5.3.5安装,但当我在PHP 5.2.15安装上运行此代码时,我得到:

Parse error: syntax error, unexpected T_FUNCTION in /home/xxxx/public_html/xxxx/xxxxxxx/wp-content/plugins/wordpress-file-monitor-plus/classes/wpfmp.settings.class.php on line 220
Run Code Online (Sandbox Code Playgroud)

第220行是上述代码的第一行.

所以我的问题是,我的代码中是否写错了会出现此错误?如果不是因为PHP 5.2.15中的错误或不支持的功能?如果是,那么我如何编写上面的代码以免产生错误?

上面的代码是一个类中的函数.

php syntax-error anonymous-function

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