php把数组写入文件
A. file_put_contents说明
file_put_contents 是 php 中的一个函数,用于将一个字符串或数据写入到文件中,其功能相当于依次调用 fopen, fwrite 和 fclose。以下是关于 file_put_contents 函数的详细说明:
函数语法:
- int file_put_contents
参数说明:
- $filename:要写入的文件路径。
- $data:要写入的字符串或数据。可以是字符串、数组或 stream 资源。如果为数组,将使用类似 join 函数的方式转换为字符串。如果为 stream 资源,则将其缓存数据写入到指定文件中。
- $flags:用于控制写入行为的标志。例如,FILE_APPEND 用于在文件末尾追加数据,而不是覆盖原有数据。
- $context:一个资源,用于指定文件句柄的上下文选项。
返回值:
- 函数返回写入到文件中的数据字节数。如果失败,则返回 false。
使用示例:
- 写入字符串到文件:phpfile_put_contents; 将数组转换为字符串后写入文件:php$my_array = ['Hello', ',', ' ', 'World', '!'];$file_content = implode;file_put_contents;
优点:
- 使用 file_put_contents 函数可以简化文件操作的代码,减少错误发生的可能性,因为它将文件打开、写入和关闭三个步骤合并为一个步骤。
总之,file_put_contents 函数是 PHP 中一个非常实用的文件操作函数,能够高效地将数据写入文件。
B. PHP怎样在网页间传递数组
方法很多,主要看怎么用:
1:把数组做成字符串放在页面中,然后表单提交过去。
2:写入数据库,下一个页面直接读数据库。
3:写成文件,下个页面读文件。
4:放在超全局数组中,直接使用。
5:使用一些其他支持,比如memcache。
C. PHP如何将下面数组遍历,插入数据库
有两个方法可供选择,一种是把数据存入csv文件,然后执行load data infile
还有一种就是类似于sql server里面的bulk insert,使用insert语句插入批量数据,结合PHP的implode函数,
可以很简单的实现大批量数组数据的一次性插入。
[php] view plain
$statement = "INSERT INTO table (title, type, customer) VALUES ";
foreach( $data as $row) {
$statement .= ' ("' . implode($row, '","') . '")';
}
不过大批量数据的插入,需要注意mysql在内存上有限制:
http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_bulk_insert_buffer_size
bulk_insert_buffer_size变量的默认大小为8M, 是指单个线程占用的大小限制,设置为0,表示不做限制。
D. 用php写一个数组包括5行数据,数组的格式是:学号,姓名,性别,年龄,班级;将数组的内容写入到stu.csv中
源代码如下:
<html>
<head>
<title>打开CSV文件</title>
</head>
<p>
<center>
<?php
$t_array=array(
array("1","张三","男","21","0921212"),
array("2","李四","女","20","0921212"),
array("3","王五","女","世厅21","0921212"),
array("4","小六","男","22","0921212"),
array("5","田七","女","20","0921212")
);
$handle=fopen("html/stu.csv","w");
foreach ($stu as $line)
{fputcsv($handle,$line);}
fclose($handle);
echo"<table border=1><tr><td>学梁销号</td><td>姓名</td><td>性别</td><td>年龄</td><td>班级</td></tr>";
while (list($key,$value)=each($t_array))
{
list($XH,$XM,$XB,$NL,$BJ)=$value;
echo "<tr><td>$XH</td><td>$XM</td><td>$XB</td><td>$NL</td><td>$BJ</td></tr>";
}
echo"</table>";
?>
</橡返游p>
</center>
</body>
</html>
,剩下的就是你自己建立一个CSV文件,把对应的内容填写完整就行了,记得把内容换一下,不要照抄了啊