php 如何读取本机文件

php 如何读取本机文件,第1张

你的问题也就是PHP读取客户端的文件问题。

道理上来讲,我认为是不可以的,因为PHP是运行在服务端的,而且也要保证客户端的安全吧槐侍?

但可能可以解决的方法我认为也有两种,你不妨试试!

一:

利用JS,但必须是IE浏览器内核!因为用到的是IE插件ActiveXObject

<!DOCTYPE html>

<html lang="zh-CN"><head><meta http-equiv="Content-Type" content="text/html charset=UTF-8">  

    <title>唤明备Test ActiveXObject</title>   

    <script>

function ReadFiles(){

  if(window.ActiveXObject){

 //  alert("yes")

  var fso=new ActiveXObject("Scripting.FileSystemObject")

  var asd= fso.CreateTextFile("C:\\a.txt")//创建文件

  asd.WriteLine("56984566")

  asd.close()

  var kk=fso.OpenTextFile("c:\\a.txt")//打开文件

  while(!kk.atEndOfLine){

  document.writeln(kk.readLine())//读取文件,并输出

}

}

else{

  //  alert("no")

}

}

</script></head>

    <body onclick="ReadFiles()">ffffffffff

</body>

</html>

这是一段和毁HTML里的JS,你可以参考!然后加以修改。

方法二:

是一个构思,不知道能否实现!

是做为客户端的,让程序自行上传你想要的文件,然后达到可以看到的目前

php读取文件内容:

—–第一种方法—–fread()——–

<?php$file_path= "test.txt"if(file_exists($file_path)){$fp= fopen($file_path,"r")$str= fread($fp,filesize($file_path))//指定读取大小,这里把整个文件内容读取出来轿伏echo $str = str_replace("\r\n","<br

/>",$str)

}?>123456789101112131415161718

——–第二种方法————

<?php$file_path= "test.txt"if(file_exists($file_path)){$str= file_get_contents($file_path)//将整个文件内容读入到一个字符串中$str= str_replace("\r\n","<br

/>",$str)echo$str

}?>123456789101112131415161718192021222324

-----第三种方法------------<?php$file_path= "test.txt"if(file_exists($file_path)){$fp= fopen($file_path,"r")$str= ""$buffer= 1024//每次读取

1024 字节敏敬while(!feof($fp)){//循环读取,直至读取完整个文件$str.= fread($fp,$buffer)

}$str= str_replace("\r\n","<br

/>",$str)echo$str

}?>123456789101112131415161718192021222324252627282930313233343536373839404142

-------第四种方法--------------<?php$file_path= "test.txt"if(file_exists($file_path)){$file_arr= file($file_path)for($i=0$i<count($file_arr)$i++){//桥帆慎逐行读取文件内容echo$file_arr[$i]."<br

/>"

}/*

foreach($file_arr

as $value){

echo

$value."<br />"

}*/}?>1234567891011121314151617181920212223242526272829303132333435

—-第五种方法——————–

<?php$file_path= "test.txt"if(file_exists($file_path)){$fp= fopen($file_path,"r")$str=""while(!feof($fp)){$str.= fgets($fp)//逐行读取。如果fgets不写length参数,默认是读取1k。}$str= str_replace("\r\n","<br

/>",$str)echo$str

}?>123456789101112131415161718192021222324252627282930313233343536


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/12234842.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-22
下一篇 2023-05-22

发表评论

登录后才能评论

评论列表(0条)

保存