使用 fwrite 保存变量
Save variable using fwrite
我只是想了解如何使用 fwrite。在下面的代码中,我试图将输出保存在文本文件中。我只是得到一个空的 txt 文件。
谁能告诉我我做错了什么
<?php
$name = fix_name("ALAN", "james", "LiM");
echo $name[0] . " " . $name[1] . " " . $name[2];
function fix_name($n1, $n2, $n3) {
$n1 = ucfirst(strtolower($n1));
$n2 = ucfirst(strtolower($n2));
$n3 = ucfirst(strtolower($n3));
return array($n1, $n2, $n3);
}
$fp = fopen("name.txt", "wb");
$written = fwrite($fp, $name);
fclose($fp);
?>
您正在将 array
传递给 fwrite
。
如果您使用
启用错误报告
error_reporting(E_ALL);
你会收到一条警告说
Warning: fwrite() expects parameter 2 to be string, array given in file.php on line 16
return 来自您的函数的字符串
return $n1 . ', ' . $n2 . ', ' . $n3;
或者在函数外,使用implode
从数组的元素中得到一个字符串
$name = implode(', ',fix_name("ALAN", "james", "LiM"));
此外,在函数外,只打印出 $name
变量
print $name;
在您的文本文件中,您将拥有这个
Alan, James, Lim
我只是想了解如何使用 fwrite。在下面的代码中,我试图将输出保存在文本文件中。我只是得到一个空的 txt 文件。 谁能告诉我我做错了什么
<?php
$name = fix_name("ALAN", "james", "LiM");
echo $name[0] . " " . $name[1] . " " . $name[2];
function fix_name($n1, $n2, $n3) {
$n1 = ucfirst(strtolower($n1));
$n2 = ucfirst(strtolower($n2));
$n3 = ucfirst(strtolower($n3));
return array($n1, $n2, $n3);
}
$fp = fopen("name.txt", "wb");
$written = fwrite($fp, $name);
fclose($fp);
?>
您正在将 array
传递给 fwrite
。
如果您使用
error_reporting(E_ALL);
你会收到一条警告说
Warning: fwrite() expects parameter 2 to be string, array given in file.php on line 16
return 来自您的函数的字符串
return $n1 . ', ' . $n2 . ', ' . $n3;
或者在函数外,使用implode
从数组的元素中得到一个字符串
$name = implode(', ',fix_name("ALAN", "james", "LiM"));
此外,在函数外,只打印出 $name
变量
print $name;
在您的文本文件中,您将拥有这个
Alan, James, Lim