有些数据存在想放php变量进行处理可是太长了

d_erse 2013-09-15 10:20:18
原本在一个js变量里,但是要用对数据处理一下,用explode分数组之类的,可是数据太长了,放到php变量里,用dw的时候总报错。
...全文
204 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
街头小贩 2013-09-15
  • 打赏
  • 举报
回复
引用 12 楼 u011625403 的回复:
$d=explode("@",$a) foreach($d as $k=>$r){ $res=explode("|",$r);} 能不能帮我写个正则呢?
如果没有中文的话简单

$a="123@345@111";
preg_match_all("/[^@]+/",$a,$mat);
d_erse 2013-09-15
  • 打赏
  • 举报
回复
$d=explode("@",$a) foreach($d as $k=>$r){ $res=explode("|",$r);} 能不能帮我写个正则呢?
d_erse 2013-09-15
  • 打赏
  • 举报
回复
引用 10 楼 xiaofanku 的回复:
哪用preg_match_all()吧,手册上有提示说它有可能存在错误:
be careful when using explode() on big strings, as it can also explode your memory usage
原来是这样啊,这个是正则吗?,,,不会用。。。
街头小贩 2013-09-15
  • 打赏
  • 举报
回复
哪用preg_match_all()吧,手册上有提示说它有可能存在错误:
be careful when using explode() on big strings, as it can also explode your memory usage
d_erse 2013-09-15
  • 打赏
  • 举报
回复
引用 8 楼 xiaofanku 的回复:
[quote=引用 7 楼 u011625403 的回复:] [quote=引用 6 楼 xiaofanku 的回复:] 不删除的情况你分隔成功了?成功后存不到表里?
分割不成功,至少4万英文字的长度。[/quote]哪你echo能显示全$a的内容?[/quote] 可以显示的,就是分组的时候分不了呢
街头小贩 2013-09-15
  • 打赏
  • 举报
回复
引用 7 楼 u011625403 的回复:
[quote=引用 6 楼 xiaofanku 的回复:] 不删除的情况你分隔成功了?成功后存不到表里?
分割不成功,至少4万英文字的长度。[/quote]哪你echo能显示全$a的内容?
d_erse 2013-09-15
  • 打赏
  • 举报
回复
引用 6 楼 xiaofanku 的回复:
不删除的情况你分隔成功了?成功后存不到表里?
分割不成功,至少4万英文字的长度。
街头小贩 2013-09-15
  • 打赏
  • 举报
回复
不删除的情况你分隔成功了?成功后存不到表里?
d_erse 2013-09-15
  • 打赏
  • 举报
回复
不是,我把$a删除一大堆就可以正常进行了,而且数据也是预期被分割。
引用 4 楼 xiaofanku 的回复:
[quote=引用 2 楼 u011625403 的回复:] $a="很长的东西@很长的东西@。。。"; $b=explode(”@“,$a); foreach($b as $k=>$v) {...//录入数据库} //$a 太长了,删掉一大堆才可以正常执行。 怎么办?
哪是你的表结构的原因,列的长度太短了,把列的数据长度变大.例如:varchar(200)变成varchar(500)[/quote]
街头小贩 2013-09-15
  • 打赏
  • 举报
回复
引用 2 楼 u011625403 的回复:
$a="很长的东西@很长的东西@。。。"; $b=explode(”@“,$a); foreach($b as $k=>$v) {...//录入数据库} //$a 太长了,删掉一大堆才可以正常执行。 怎么办?
哪是你的表结构的原因,列的长度太短了,把列的数据长度变大.例如:varchar(200)变成varchar(500)
fzfei2 2013-09-15
  • 打赏
  • 举报
回复
你说dw 是Dreamweaver?,如果是Dreamweaver,就不用管它,只要能运行就行
d_erse 2013-09-15
  • 打赏
  • 举报
回复
$a="很长的东西@很长的东西@。。。"; $b=explode(”@“,$a); foreach($b as $k=>$v) {...//录入数据库} //$a 太长了,删掉一大堆才可以正常执行。 怎么办?
一起混吧 2013-09-15
  • 打赏
  • 举报
回复
看不懂,举例说明吧。
d_erse 2013-09-15
  • 打赏
  • 举报
回复
这条正则我再那些正则测试工具里面都是可以正确匹配,为什么放到preg_match('/(\@[a-z]+\|[\u4e00-\u9fa5]+\|[A-Z]+\|[a-z]+\|[a-z]+\|[0-9]+)/is',$a)是不行的啊?测试工具里面我选全局搜索是可以的,不选是不行的,是不是这个原因呢?preg_match_all不是就全局搜索的吗?

87,991

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧