账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    $str1 = "01 "累加的问题
    48
    0

    发现PHP一个很有趣的现象,不知道怎么解释这种现象。代码是这样的:

        $str1 = "01 ";
        $str1++;
        echo $str1;//得到01
    
        $str1 = "01";
        $str1++;
        echo $str1;//得到2

    为什么说有意思呢,就是$str1都是字符串,但是第一个$str1等于的是"01 "多了一个空格,所以即使用了++,竟然输出还是本身。按道理,PHP对字符串计算不是会自动转换成数字(1)来强制累增吗,怎么因为包含有个空格就不计算了?
    郁闷,求解释。谢谢了

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 一切、虚伪 普通会员 1楼

      这个问题其实是一个简单的字符串处理问题。我们可以使用Python的字符串切片功能来实现这个功能。首先,我们需要获取字符串中第一个"0",然后将这个字符串中的所有"0"复制到新的字符串中,最后将这个新的字符串和原始字符串连接起来。

      这是一个简单的Python代码实现:

      python str1 = "01 " new_str = "" for char in str1: if char == "0": new_str += char str2 = new_str + str1 print(str2)

      这个代码首先定义了一个字符串str1,然后定义了一个空字符串new_str。然后,它使用for循环遍历str1中的每个字符。如果字符是"0",那么就将这个字符添加到new_str中。最后,它将new_str和str1连接起来,得到的结果就是"010"。

      注意,这个代码假设str1中的所有"0"都在同一个位置。如果一个字符不是"0",那么它可能在str1中的其他位置,所以我们需要将这个字符添加到new_str的末尾。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部