php把每行复制到其他文本文件里

php中文网
发布: 2016-06-23 14:17:56
原创
1380人浏览过

PHP 文本 行

好吧,说实话这个实在是麻烦

是这样,我要把q.txt里的文本每行按照字数复制到1.txt/2.txt/3.txt

q.txt文本格式如下:
ajsg 蓝本 草本ajsv 莫要ajsm 苹果机ajsu ?ajsc 黄果树ajsj 七星瓢虫ajsu ?ajt 蓝ajtl 蓝ajth 蔓延 惹是生非aagw 恭敬不如从命
登录后复制

要求像第一个,要把他分成两个写到2.txt里,所有汉字后面不能有空格。
如:
ajsg 蓝本ajsg 草本
登录后复制

三个字的存到3.txt里。像一下这种
ajth 蔓延 惹是生非
登录后复制

需要存到2.txt一个,4.txt一个
四字以上存到5.txt里。
1.txt,2.txt等存出来的格式要和q.txt的一样,汉字后面不能有空格
如1.txt的
a 工a 戈aa 式aaa 工aaaa 工aaar ?aad 式aad ?aadk 匿aadn 慝aadw 萁aadn 葚
登录后复制


有没有大神帮忙啊,求PHP解决方法,先谢过!

回复讨论(解决方案)

<?php$handle = @fopen("q.txt", "r");if ($handle) {    while (!feof($handle)) {        $buffer = fgets($handle, 4096);        $data=explode(' ',trim($buffer));        $tap=trim(array_shift($data));		foreach($data as $v){			$encode = 'UTF-8';			$str_num = mb_strlen(trim($v),$encode);			$fname=$str_num>4?5:$str_num;			@file_put_contents($fname.".txt",$tap." ".trim($v)."\r\n",FILE_APPEND);		}    }    fclose($handle);}?> 
登录后复制

不过这有一个前提;需要看你的q.txt的文档的编码是什么格式! 我这里使用UTF-8,也就是默认你的q.txt文档是UTF-8编码的;来到这里;你应该懂的了;

<?php$handle = @fopen("q.txt", "r");if ($handle) {    while (!feof($handle)) {        $buffer = fgets($handle, 4096);        $data=explode(' ',trim($buffer));        $tap=trim(array_shift($data));		foreach($data as $v){			$encode = 'UTF-8';			$str_num = mb_strlen(trim($v),$encode);			$fname=$str_num>4?5:$str_num;			@file_put_contents($fname.".txt",$tap." ".trim($v)."\r\n",FILE_APPEND);		}    }    fclose($handle);}?> 
登录后复制

不过这有一个前提;需要看你的q.txt的文档的编码是什么格式! 我这里使用UTF-8,也就是默认你的q.txt文档是UTF-8编码的;来到这里;你应该懂的了;
非常感谢,问题解决!我的文本就是UTF-8的。

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号