PHP 更新文件中的值
PHP updating a value in a file
我有一个 PHP 脚本和一个文件。该文件仅包含“8”。我需要使用 PHP 脚本将此值更新为“9”(或任何值,只需将文件中的内容增加 1)。
目前我有一个如下所示的文件:
<?php
file_put_contents("numberFile", file_get_contents("numberFile")[0]++);
?>
这应该将它从第一行读取的内容 + 1 写入文件。但是它不起作用。有更好的方法吗?
$content = file_get_contents('numberFile');
if (isset($content))
{
$number = intval($content);
file_put_contents('numberFile', ++$number);
}
未经测试,但我怀疑这与您想要的东西很接近,如果不是完全一样的话。 :)
如评论中所述,不要试图在一行中完成所有操作,分解代码以提高可读性。
看起来你正在做的事情会奏效,但你必须非常小心。
file_get_contents
returns a string, not an array of strings (you could use file
)。
您还可以 index a string as an array, and you can use operators 字符串。
// This should print '3'
$text = '3
';
echo $text[0] . "\n";
// This should print '3' too
$text = '33';
echo $text[0] . "\n";
// This should be '4'
echo $text[0] + 1 . "\n";
// What about this ?
$text = '9';
// Now it rolls to two digits. What then ?
正确的方法是使用 intval
.
将 整个 字符串转换为数字
我有一个 PHP 脚本和一个文件。该文件仅包含“8”。我需要使用 PHP 脚本将此值更新为“9”(或任何值,只需将文件中的内容增加 1)。
目前我有一个如下所示的文件:
<?php
file_put_contents("numberFile", file_get_contents("numberFile")[0]++);
?>
这应该将它从第一行读取的内容 + 1 写入文件。但是它不起作用。有更好的方法吗?
$content = file_get_contents('numberFile');
if (isset($content))
{
$number = intval($content);
file_put_contents('numberFile', ++$number);
}
未经测试,但我怀疑这与您想要的东西很接近,如果不是完全一样的话。 :)
如评论中所述,不要试图在一行中完成所有操作,分解代码以提高可读性。
看起来你正在做的事情会奏效,但你必须非常小心。
file_get_contents
returns a string, not an array of strings (you could use file
)。
您还可以 index a string as an array, and you can use operators 字符串。
// This should print '3'
$text = '3
';
echo $text[0] . "\n";
// This should print '3' too
$text = '33';
echo $text[0] . "\n";
// This should be '4'
echo $text[0] + 1 . "\n";
// What about this ?
$text = '9';
// Now it rolls to two digits. What then ?
正确的方法是使用 intval
.