php 怎么修改txt文本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 怎么修改txt文本相关的知识,希望对你有一定的参考价值。

文本上的格式是:名字|密码|邮箱|地址
我要找到名字是Jim的那行,然后把密码改成1111,该怎么做

  php有两种方法读写文件,方法一、file、file_get_contents、file_put_contents三个函数整体读写文本,适合文本文件不太大的情况。两个函数的的典型应用是:

$text=file_get_contents(\'a.txt\');//把文本文件的所有内容取到字符串变量$text里面

$arr=file(\'a.txt\');//把文本文件的所有内容,取到数组$arr里面,$arr[0]就是第一行,以此类推

$arr[1]=\'abc\';//或者通过其它途径修改变量值

$text=implode($arr);//把数组连接为字符串

file_put_contents(\'a.txt\', $text);//把字符串变量的内容写入到文本文件里面。


  方法二、使用fopen、fgets、fputs、fclose函数读写文件,可以应付特大文件的修改。文件的修改一般方法是新建立一个文件,把源文件全部扫描一遍,遇到需要的部分进行处理,最后删除源文件,更名新文件。例如下面的代码把a.txt里面的abc修改为def:

$fp1=fopen(\'a.txt\',\'r\');
$fp2=fopen(\'a.tmp\',\'w\');
while(!feof($fp1))
    $line=fgets($fp1);
    $line=str_replace(\'abc\',\'def\',$line);
    fputs($fp2,$line);

flcose($fp1);
fclose($fp2);
unlike(\'a.txt\');
rename(\'a.tmp\', \'a.txt\');
参考技术A 在桌面点右键新建文件,“新建”——“文本文档”,把php里面的内容复制进去就行了。就变成TXT文本了。
PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到html(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。
参考技术B 很好办啊,用fopen啊,
$str="1.txt";
$fp=fopen($str,"r");
while(!feof($fp))
$reads=fgets($fp);
$arr[]=explode("|",$reads);

fclose($fp);
print_R($arr);
读在数组里面,然后再写回去就可以了啊本回答被提问者采纳
参考技术C 用fopen,
$str="1.txt";
$fp=fopen($str,"r");
while(!feof($fp))
$reads=fgets($fp);
$arr[]=explode("|",$reads);

fclose($fp);
print_R($arr);
读在数组里面,然后再写回去就可以了啊
参考技术D $str = '文件';
$file = 'music.txt';
preg_match_all( '/(.*)=([^\r\n]+)/', $str, $arr );
$arr[1] = implode( '|||', $arr[1] );
$arr[2] = implode( '|||', $arr[2] );
if ( is_file( $file ))
$str = file_get_contents( $file );
parse_str( $str );
$music .= '|||' . $arr[1];
$musictitle .= '|||' . $arr[2];
$str = "music=$music&musictitle=$musictitle";
else
$str = "music=$arr[1]&musictitle=www.Ytxybbs.com|||$arr[2]";

echo $str;
file_put_contents( $file, $str );

linux 下让文本文件怎么样直接运行? 例如test.txt 其文件内容为 ls -al 后用chmod 775 test.txt

可用 sh test 执行 能不能不用 su 去调用就可以动行? 意思就像DOS下的批处理一样不用样去调用 输入test 就可以执行
不用./program 这种方式执行
也不用sh program
想用以下方式执行,怎样做
$>test

首先修改文件权限,使其可执行
# chmod +x test
# ./test
如果需要直接使用test命令运行,修改PATH的值,在后面添加test文件所在的目录
# PATH=$PATH:test文件所在的目录
# echo $PATH
查看PATH值看是否包含test文件所在目录
上述方法只适用于这一次会话,如果希望在每次启动后都能适用,修改~/.bash_profile文件,修改PATH行,将test文件所在目录用冒号隔开添加在后面
参考技术A 可以的,但是需要有两个步骤,1是要把该文件设置为可执行的权限,使用命令chmod a+x test.txt就可以做到;2是把该文件放到环境变量PATH中的任意一个目录中,一般是放在/usr/local/bin目录中。
此外,用shell写的文件一般以.sh作为后缀,另外,文件的第一行要指明所使用的解释器位置,通常是这样的
#!/bin/bash(根据你系统里 bash位置的不同可能会有一些不同)追问

不用./program 这种方式执行
也不用sh program
想用以下方式执行,怎样做
$>test

追答

如果已经是可以执行的文件的话,放到环境变量PATH中的任意一个路径下就可以。比如PATH打印出是如下结果:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin
则你把该文件(test)放到结果中任意一个文件夹当中就可以直接执行,命令如下:
$cp test /usr/local/bin
$test。

本回答被提问者采纳
参考技术B 写一行 #!/bin/bash 在里面,然后给它+x执行权限,用 ./program 来调用即可追问

不用./program 这种方式执行
也不用sh program
想用以下方式执行,怎样做
$>test

追答

你要那样就添加当前目录.到PATH里就行了

以上是关于php 怎么修改txt文本的主要内容,如果未能解决你的问题,请参考以下文章

在LINUX 下 使用PHP 修改文本文件

求教php使用TXT数据库(读取和修改文本)

关于PHP文件操作: php保存数据到文本文件,怎么弄?

.txt文件也有编码么?怎么查看.txt的编码?如何修改?

java怎么修改文件名称

linux下修改以某个字母开头的文件后戳