小编mpy*_*pyw的帖子

array_splice保留键

我遇到了使用保留键拼接数组的情况,所以我做了以下功能.
我达到了用数组包装每个项目的解决方案,但似乎有一些内存效率低下的语句.
你有什么想法吗?
谢谢.


array_splice_pk

这保留了密钥,不同于array_splice.

概述:

  • &$input- >与array_splice一个相同.
  • $key - >目标键.
  • $use_key_as_offset- >使用$key参数作为数字偏移量.
  • $length- >与array_splice一个相同.
  • $replacement- >与array_splice一个相同.但您也可以为每个值提供密钥.

码:

function array_splice_pk(&$input, $key, $use_key_as_offset = false, $length = 0, $replacement = null) {
    if (!is_array($input) || !is_scalar($key)) {
        return array();
    }
    if ($replacement !== null) {
        $replacement = array($replacement);
        if (!is_array($replacement[0])) {
            $replacement = array($replacement);
        }
    }
    $wrapper = array();
    foreach ($input as …
Run Code Online (Sandbox Code Playgroud)

php arrays array-splice preserve

10
推荐指数
2
解决办法
7316
查看次数

为什么这些 Heredoc 和 Nowdoc 会导致错误?

我已经找到了一些解决方案,但不知道发生了什么......

示例 1:

<?php

echo <<< EOD
test
EOD;
Run Code Online (Sandbox Code Playgroud)

示例 2:

<?php

echo <<< 'EOD'
test
EOD;
Run Code Online (Sandbox Code Playgroud)

输出 1,2:

PHP Parse error:  syntax error, unexpected end of file, expecting variable (T_VARIABLE) or heredoc end (T_END_HEREDOC) or ${ (T_DOLLAR_OPEN_CURLY_BRACES) or {$ (T_CURLY_OPEN)
Run Code Online (Sandbox Code Playgroud)

示例 3:

<?php

echo <<< EOD
test
EOD;

?>
Run Code Online (Sandbox Code Playgroud)

示例 4:

<?php

echo <<< 'EOD'
test
EOD;

?>
Run Code Online (Sandbox Code Playgroud)

示例 5:

<?php

echo <<< EOD
test
EOD;
'dummy';
Run Code Online (Sandbox Code Playgroud)

示例 6:

<?php

echo <<< 'EOD'
test
EOD;
'dummy';
Run Code Online (Sandbox Code Playgroud)

输出 3、4、5、6:

test
Run Code Online (Sandbox Code Playgroud)

php heredoc nowdoc

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

对于矩阵运算,为什么"ikj"比"ijk"快?

对于矩阵运算......

IJK算法

public static int[][] ijkAlgorithm(int[][] A, int[][] B) {
    int n = A.length;
    int[][] C = new int[n][n];
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < n; j++) {
            for (int k = 0; k < n; k++) {
                C[i][j] += A[i][k] * B[k][j];
            }
        }
    }
    return C;
}
Run Code Online (Sandbox Code Playgroud)

ikj算法

public static int[][] ikjAlgorithm(int[][] A, int[][] B) {
    int n = A.length;
    int[][] C = new int[n][n];
    for (int …
Run Code Online (Sandbox Code Playgroud)

java algorithm matrix

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

标签 统计

php ×2

algorithm ×1

array-splice ×1

arrays ×1

heredoc ×1

java ×1

matrix ×1

nowdoc ×1

preserve ×1