php如何读取文件|php 怎样读取excel表格内容 – 技术问答

A. php 怎样读取excel表格内容 – 技术问答

常用的用PHP读取EXCEL的方法有以下三种,各自有各自的优缺点。个人推荐用第三种方法,因为它可以跨平台使用。1. 以.csv格式读取将.xls转换成.csv的文本格式,然后再用PHP分析这个文件,和PHP分析文本没有什么区别。优点:跨平台,效率比较高、可以读写。缺点:只能直接使用.csv的文件,如果经常接受.xls二进制文件的话需要手工转换,不能自动化。一个文件只有一个SHEET。PHP有自带的分析.csv函数:fgetcsvarray fgetcsv ( int $handle [, int $length [, string $delimiter [, string $enclosure]]] )handle 一个由 fopen()、popen() 或 fsockopen() 产生的有效文件指针。length (可选)必须大于 CVS 文件内最长的一行。在 PHP 5 中该参数是可选的。如果忽略(在 PHP 5.0.4 以后的版本中设为 0)该参数的话,那么长度就没有限制,不过可能会影响执行效率。delimiter (可选)设置字段分界符(只允许一个字符),默认值为逗号。enclosure (可选)设置字段环绕符(只允许一个字符),默认值为双引号。该参数是在 PHP 4.3.0 中添加的。 和 fgets() 类似,只除了 fgetcsv() 解析读入的行并找出 CSV 格式的字段然后返回一个包含这些字段的数组。fgetcsv() 出错时返回 FALSE,包括碰到文件结束时。注意: CSV 文件中的空行将被返回为一个包含有单个 null 字段的数组,不会被当成错误。当然也可以自己手动分析字符串。还可以利用fputcsv函数将行格式化为 CSV 并写入文件指针。2. ODBC链接数据源优点:支持多种格式,cvs, xls等。支持读写,使用标准SQL语言,和SQLSERVER、MYSQL数据库几乎完全一样。缺点:值支持windows服务器3. PHP自定义类优点:跨平台。某些类支持写操作。支持.xls二进制文件常用的类有phpExcelReader、PHPExcel。其中后者支持读写,但是需要php5.2以上版本。phpExcelReader是专门用来读取文件的。返回一个数组,包含表格的所有内容。该 class 使用的方法可以参考网站下载回来的压缩档中的 example.php。不过我下载回来的 (版本 2009-03-30),有两点要注意:reader.php 中的下面这行要修改将 require_once ‘Spreadsheet/Excel/Reader/OLERead.php’;改为 require_once ‘oleread.inc’;example.php 中修改 $data->setOutputEncoding(’CP1251′);为 $data->setOutputEncoding(’CP936′);example2.php 中修改 nl2br(htmlentities($data->sheets[$sheet]['cells'][$row][$col]));为 $table_output[$sheet] .= nl2br(htmlspecialchars($data->sheets[$sheet]['cells'][$row][$col]));不然中文会有问题。繁体的话可以修改为CP950、日文是CP932,具体可参考codepage说明。修改 $data->read(’jxlrwtest.xls’) 为自己的 excel 文件名,zip 档中附的 jxlrwtest.xls 应该是坏了。

B. PHP怎么读取php所在文件夹下的图片和mp3文件,并且显示出来

<?php$dir="./";//要获取的目录echo"**********获取目录下所有文件和文件夹***********<hr/>";//先判断指定的路径是不是一个文件夹if(is_dir($dir)){if($dh=opendir($dir)){while(($file=readdir($dh))!=false){if(getFileType($file)=="mp3"){echo"mp3格式";}if(getFileType($file)=="jpg"||getFileType($file)=="png"||getFileType($file)=="gif"){echo"图片格式";}closedir($dh);}}functiongetFileType($filename){returnstrtolower(pathinfo($filename)['extension']);}?>

C. PHP远程读取excel文件,怎么读取

PHPExcel 通过 PHPExcel_Shared_OLERead 类的 read 方法读取文件但 read 方法里使用了 is_readable 函数来确认文件是否存在,而 is_readable 不能作用于 url所以不可直接远程读取但若绕过 is_readable 函数的话,就是可以的 public function read($sFileName) { // Check if file exists and is readable if(!is_readable($sFileName)) { throw new Exception("Could not open " . $sFileName . " for reading! File does not exist, or it is not readable."); } // Get the file data $this->data = file_get_contents($sFileName);

D. php如何读取文本指定的内容

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);}?>——–第二种方法————<?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;}?>—–第三种方法————<?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;}?>——-第四种方法————–<?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 />";}*/}?>—-第五种方法——————–<?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;}?>

E. php如何获取当前脚本所有加载的文件

get_included_files 返回被 include和require文件名的array

说明

get_included_files ( void ) : array

返回所有被 include、 include_once、 require 和 require_once 的文件名。

返回值

返回所有文件名称的 array。

脚本最初被称为”被包含的文件“,所以脚本自身也会和 include 系列函数引用的脚本列在一起,被多次 include 和 require 的文件在返回的 array 里只会列出一次。

(5)php如何读取文件扩展阅读:

程序示例

<?php

include 'test1.php';

include_once 'test2.php';

require 'test3.php';

require_once 'test4.php';

$included_files = get_included_files();

foreach ($included_files as $filename) {

echo "$filename
";

}

?>


赞 (0)