吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2573|回复: 14
收起左侧

[求助] 在学习PHP中遇到的疑问, 求知..

[复制链接]
chenwenjie 发表于 2019-7-11 17:03
今天在学习Php时发现, Php可以对字符串进行增删改查, 然后在学习删除部分的时候发现:
例如一个变量 $userName = "DavidChen";
然后我想删除'D'这个字母[下标0],
于是我就写了$userName{0} = '';
结果报错如下
image.png
百度才发现, 似乎Php7版本不能这么删除字符串指定下标的字符了
我切换版本成PHP5.6的就不会报错了, 可以正常删除...
想来问问大佬门, PHP7版本真的不能这么删除了吗? 还是在下操作的方式不当?
当然, 用preg_replace可以实现这么个功能, 可是看着视频里的老师操作没有问题, 我看着难受 强迫症

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

yjq小乔 发表于 2019-7-11 17:14
$userName[0] = ''; 才对把
 楼主| chenwenjie 发表于 2019-7-11 17:15
川姜一男 发表于 2019-7-11 17:20
偷喝奶的浣熊 发表于 2019-7-11 17:27
substr不就可以了
 楼主| chenwenjie 发表于 2019-7-11 17:28
川姜一男 发表于 2019-7-11 17:20
$trimmed = ltrim($userName, "D");  ??

参考:https://www.php.net/manual/zh/function.ltrim.php

没用呀
只能删除最右边的或者最左边的
而且不能指定下标
我还想问的是, Php7真的不能$userName[0] = '';这样做了嘛
为什么
mosou 发表于 2019-7-11 17:29
[PHP] 纯文本查看 复制代码
$a = 'asdfgh';
$a[1]='b';
echo $a;
$a{1}='c';
echo $a;

php7 实测 没有任何问题
 楼主| chenwenjie 发表于 2019-7-11 17:30

不是这样的
是$a = '';
你这样试试
mosou 发表于 2019-7-11 17:48
chenwenjie 发表于 2019-7-11 17:30
哥不是这样的
是$a = '';
你这样试试

[PHP] 纯文本查看 复制代码
                $a = 'asdfgh';
                $a[0]='b';
                echo $a.'----';
                $a = str_replace($a[0],'',$a);
                echo $a;


完美解决
不能直接设为空 你用替换就Ok了
Aswind 发表于 2019-7-11 17:56
https://phpedia.net
各个版本的在线编辑器
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-27 04:21

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表