数组用尽的允许的内存大小为268435456字节

用户名

我试图做一个函数来生成所有可能的组合。这部分效果很好,所以输出将是

aaa aab aac aad ...

但是现在我正尝试为每个组合添加扩展名,因此我想在末尾添加“ HI”,例如

aaaHI aabHI aacHI aadHI

IV尝试以下内容,但即时通讯收到此错误。有什么更好的方法可以做到这一点吗?

致命错误:耗尽了268435456字节的允许的内存大小(尝试分配100663409字节)

这是我的剧本

function sampling($chars, $size, $combinations = array()) {

    # if it's the first iteration, the first set 
    # of combinations is the same as the set of characters
    if (empty($combinations)) {
        $combinations = $chars;
    }

    # we're done if we're at size 1
    if ($size == 1) {
        return $combinations;
    }

    # initialise array to put new values in
    $new_combinations = array();

    # loop through existing combinations and character set to create strings
    foreach ($combinations as $combination) {

        foreach ($chars as $char) {
            $new_combinations[] = $combination. $char;
            $new_combinations[] = implode($new_combinations, "HI");
        }
    }

    # call same function again for the next iteration
    return sampling($chars, $size - 1, $new_combinations);

}


// example
$chars = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z');

$output = sampling($chars, 3);

foreach($output as $do) 
{ 
    echo $do."<br>";
} 
丹尼斯v

目前尚不清楚要做什么,但是首先,您使用implode()不正确。第一个参数必须为$ glue,第二个参数为数组。

string implode ( string $glue , array $pieces )

其次,您的$ new_combinations数组在每个步骤中都在逐步增长。

但是,如果我了解您的打算,那么这段代码将为您工作:

<?php

function sampling($chars, $size, $combinations = array()) {

    // if it's the first iteration, the first set
    // of combinations is the same as the set of characters
    if (empty($combinations)) {
        $combinations = $chars;
    }

    // we're done if we're at size 1
    if ($size == 1) {
        return $combinations;
    }

    // initialise array to put new values in
    $new_combinations = array();

    // loop through existing combinations and character set to create strings
    foreach ($combinations as $combination) {

        foreach ($chars as $char) {
            $tmp = $combination. $char;
            if ($size == 2) {
                $tmp .= '.com';
            }

            $new_combinations[] = $tmp;
            // I don't get what you were going to do with this line,
            // but this looks like a logical bug in your code
            //$new_combinations[] = implode(".com", $new_combinations);
        }
    }

    // call same function again for the next iteration
    return sampling($chars, $size - 1, $new_combinations);

}


// example
$chars = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z');

$output = sampling($chars, 3);

foreach($output as $do)
{
    echo $do."<br>".PHP_EOL;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

数组用尽的允许的内存大小为268435456字节

来自分类Dev

允许的内存大小为134217728字节已用尽(尝试分配42字节)

来自分类Dev

尝试将SQL结果导入数组:致命错误:允许的134217728字节的内存大小已用尽

来自分类Dev

致命错误:耗尽了268435456字节的允许的内存大小(尝试分配71个字节)

来自分类Dev

致命错误:耗尽了268435456字节的允许的内存大小(试图分配71个字节)

来自分类Dev

PHP致命错误:在第62行的NormalizerFormatter.php上耗尽了268435456字节的允许的内存大小

来自分类Dev

致命错误:ini_set之后,允许的内存大小为134217728字节(已尝试分配3个字节)已用尽

来自分类Dev

PHP中的简单数组推送超出了允许的内存。(允许使用的内存大小为33554432字节(尝试分配33554440字节))

来自分类Dev

允许的内存大小为134217728字节用尽+ mysql + php

来自分类Dev

Laravel @include进入主布局会导致:PHP致命错误:允许的内存大小为134217728字节已用尽

来自分类Dev

生成数据库备份时出现“ PHP致命错误:允许的内存大小为134217728字节已用尽”

来自分类Dev

Laravel中允许的内存大小为536870912字节

来自分类Dev

允许的内存大小已用完134217728字节(尝试分配18472字节)

来自分类Dev

如何在PHP中调试“致命错误:允许的内存大小为xxx字节已用尽”

来自分类Dev

joomla k2-耗尽了5242880字节的允许内存大小

来自分类Dev

joomla k2-耗尽了5242880字节的允许内存大小

来自分类Dev

致命错误:耗尽了536870912字节的允许的内存大小

来自分类Dev

为什么PHP耗尽了134217728字节的允许内存大小?

来自分类Dev

Composer require内存不足。PHP致命错误:允许的内存大小为1610612736字节已耗尽旅行者

来自分类Dev

致命错误:Magento的可用内存大小为134217728字节

来自分类Dev

Memcached允许的内存大小用尽

来自分类Dev

LARAVEL 致命错误异常:已用尽 134217728 字节的允许内存大小(尝试分配 10489856 字节)

来自分类Dev

致命错误:第15行的C:\ xampp \ htdocs \ main.php中耗尽了134217728字节的允许内存大小(尝试分配8192字节)

来自分类Dev

PHP - 允许的内存大小为 134217728 字节已用完

来自分类Dev

Laravel 和 PHPUnit - 允许的内存大小为 134217728 字节

来自分类Dev

MAMP PHP致命错误:允许的内存大小用尽

来自分类Dev

读取文件时允许的内存大小用尽错误

来自分类Dev

PHP - 允许的内存大小用尽(Zend Framework Expressive)

来自分类Dev

允许的内存大小为 134217728 字节耗尽(尝试分配 81920001 字节)

Related 相关文章

  1. 1

    数组用尽的允许的内存大小为268435456字节

  2. 2

    允许的内存大小为134217728字节已用尽(尝试分配42字节)

  3. 3

    尝试将SQL结果导入数组:致命错误:允许的134217728字节的内存大小已用尽

  4. 4

    致命错误:耗尽了268435456字节的允许的内存大小(尝试分配71个字节)

  5. 5

    致命错误:耗尽了268435456字节的允许的内存大小(试图分配71个字节)

  6. 6

    PHP致命错误:在第62行的NormalizerFormatter.php上耗尽了268435456字节的允许的内存大小

  7. 7

    致命错误:ini_set之后,允许的内存大小为134217728字节(已尝试分配3个字节)已用尽

  8. 8

    PHP中的简单数组推送超出了允许的内存。(允许使用的内存大小为33554432字节(尝试分配33554440字节))

  9. 9

    允许的内存大小为134217728字节用尽+ mysql + php

  10. 10

    Laravel @include进入主布局会导致:PHP致命错误:允许的内存大小为134217728字节已用尽

  11. 11

    生成数据库备份时出现“ PHP致命错误:允许的内存大小为134217728字节已用尽”

  12. 12

    Laravel中允许的内存大小为536870912字节

  13. 13

    允许的内存大小已用完134217728字节(尝试分配18472字节)

  14. 14

    如何在PHP中调试“致命错误:允许的内存大小为xxx字节已用尽”

  15. 15

    joomla k2-耗尽了5242880字节的允许内存大小

  16. 16

    joomla k2-耗尽了5242880字节的允许内存大小

  17. 17

    致命错误:耗尽了536870912字节的允许的内存大小

  18. 18

    为什么PHP耗尽了134217728字节的允许内存大小?

  19. 19

    Composer require内存不足。PHP致命错误:允许的内存大小为1610612736字节已耗尽旅行者

  20. 20

    致命错误:Magento的可用内存大小为134217728字节

  21. 21

    Memcached允许的内存大小用尽

  22. 22

    LARAVEL 致命错误异常:已用尽 134217728 字节的允许内存大小(尝试分配 10489856 字节)

  23. 23

    致命错误:第15行的C:\ xampp \ htdocs \ main.php中耗尽了134217728字节的允许内存大小(尝试分配8192字节)

  24. 24

    PHP - 允许的内存大小为 134217728 字节已用完

  25. 25

    Laravel 和 PHPUnit - 允许的内存大小为 134217728 字节

  26. 26

    MAMP PHP致命错误:允许的内存大小用尽

  27. 27

    读取文件时允许的内存大小用尽错误

  28. 28

    PHP - 允许的内存大小用尽(Zend Framework Expressive)

  29. 29

    允许的内存大小为 134217728 字节耗尽(尝试分配 81920001 字节)

热门标签

归档