gpt4 book ai didi

php - 使用 foreach 连接字符串

转载 作者:行者123 更新时间:2023-12-02 18:05:45 24 4
gpt4 key购买 nike

我正在尝试生成随机字符。我使用 foreach 循环连接 $char_type 的值,但它没有显示任何内容。这是我的代码:

    public function randomizer($range, $type) {
$strtester = '';
$char_type = array('alp_sm' => 'abcdefghijklmnopqrstuvwxyz',
'alp_cs' => 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',
'num' => '0123456789',
'sp' => '!@#$%^&*()');

if(is_array($type)) {
foreach($type as $row) {
if(in_array($row, $char_type)) {
$strtester .= $char_type[$row];
}
}
}
print_r($strtester); exit();
$seed = str_split($strtester);
shuffle($seed);
$generated_string = '';
foreach (array_rand($seed, $range) as $k) $generated_string .= $seed[$k];

return $generated_string;
}

更新:我想从 $strtester 得到的是例如我想要 $char_type alp_smalp_cs 然后 $strtester 将得到 abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

提前谢谢

最佳答案

if(in_array($row, $char_type)) { 替换为 if(array_key_exists($row, $char_type)) { 然后尝试

    function randomizer($range, $type) {
$strtester = '';
$char_type = array('alp_sm' => 'abcdefghijklmnopqrstuvwxyz',
'alp_cs' => 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',
'num' => '0123456789',
'sp' => '!@#$%^&*()');

if(is_array($type)) {
foreach($type as $row) {
if(array_key_exists($row, $char_type)) {
$strtester .= $char_type[$row];
}
}
}

$seed = str_split($strtester);
shuffle($seed);
$generated_string = '';
foreach (array_rand($seed, $range) as $k)
$generated_string .= $seed[$k];
return $generated_string;
}

$res = randomizer(5, array("alp_sm"));
print_r($res);

关于php - 使用 foreach 连接字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30860030/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com