gpt4 book ai didi

php - 格式化手机号码数组

转载 作者:行者123 更新时间:2023-12-04 06:55:11 25 4
gpt4 key购买 nike

我正在创建一个短信应用程序,下面的代码应该是:

  • 检查手机/手机号码是否为 11 个字符长。
  • 检查数字是否以 07 开头。

  • 如果这两个条件都不满足,它应该从数组中删除数字。

    所以以下数字将是有效的:
    07123456789,07123456790,07123456791,07123456792,07123456793,07123456794

    但是以下不会(并且需要删除):
    0801458,07855488,6695522214124514

    $param["number"] = "07123456789,07123456790,07123456791,07123456792,07123456793,07123456794,0801458,07855488,6695522214124514";
    $number = explode(',', $param["number"]);
    foreach($number as $num){
    if (!substr_compare($num, "07", 0, 3, false)) {
    unset($num);
    }
    elseif (substr_compare($num, "07", 0, 3, true)) {
    if(strlen($num) == 11) {
    $li .= "447" . substr($num, 2) . ',';
    }
    }
    }
    $il .= substr($li, 0, strlen($li)-1);
    echo $il;

    // $request = substr($request, 0, strlen($request)-1);
    // return $n;
    }

    我还需要从结果中删除最后一个逗号。

    任何帮助将不胜感激。

    谢谢,

    凯尔

    最佳答案

    您可以构建一个新的有效数字数组,并在最后 implode() 。

    $validNumbers = array();
    foreach($number as $num){
    if (!substr_compare($num, "07", 0, 3, false)) {
    unset($num);
    }
    elseif (substr_compare($num, "07", 0, 3, true)) {
    if(strlen($num) == 11) {
    $validNumbers[] = "447" . substr($num, 2);
    }
    }
    }
    $il .= implode($validNumbers, ',');

    关于php - 格式化手机号码数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2652086/

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