使用PHP函数创建新的txt文件

时间:2013-05-18 09:02:32

标签: php file function

我正在尝试编写一个函数,它接受两个参数(文件名和放入内部的sting),创建一个包含字符串的新文件。

<?php

function writeFile($name, $string) {
    $text = $string;
    $fh = fopen($name + ".txt", 'w') or die("Could not create the file.");
    fwrite($fh, $text) or die("Could not write to the file.");
    fclose($fh);
    echo "File " . $name . ".txt created!";
}

writeFile("testovFail", "Lorem ipsum dolor sit amet");

if(file_exists("testovFail.txt")) echo "<br>File exists!";

?>

这是我到目前为止,函数echos创建文件,但是当我运行IF条件来检查文件是否已创建时,它返回它不是。

5 个答案:

答案 0 :(得分:5)

如何使用file_put_contents呢?

$current = "John Smith";
file_put_contents("blabla.txt", $current);

答案 1 :(得分:4)

试试这个:fopen($name . ".txt", 'w')
$ name +“。txt”总是返回0!

答案 2 :(得分:2)

$name + ".txt"这不是string concatenation在php中的工作方式。它应该是$name.'txt'

您的代码将生成名为0的文件,因为它会将$name(在给定示例中为string)的值添加到string和{{1 }}

答案 3 :(得分:1)

function writeFile($name, $string) {
    $filename = $name.".txt"; 
    $text = "helloworld"; 
    $fp = fopen($filename,"a+");  
    fputs($fp,$string); 
    fclose($fp);  
}

这应该做到 - 希望它到目前为止。 使用+ w,您将删除已存在于文件中的内容,并使用+将其附加到文本中。

答案 4 :(得分:0)

这是一种略有不同的方法。 :)

<?php
$file = new SplFileObject('file.txt', 'w');
$file->fwrite('Hi!');