PHP-获取文件内容不能作为数组使用?

PHP-获取文件内容不能作为数组使用?,php,arrays,string,file-get-contents,array-splice,Php,Arrays,String,File Get Contents,Array Splice,我使用$file\u contents=file\u get\u contents$file\u名称,然后使用$file\u contents=array\u splice$file\u contents,30,7,“changedText”来更新文件代码中的某些内容。然而,这不断导致: Warning: array_splice(): The first argument should be an array 据我所知,file\u get\u返回的字符串应该可以像其他数组一样操作。有什么原

我使用$file\u contents=file\u get\u contents$file\u名称,然后使用$file\u contents=array\u splice$file\u contents,30,7,“changedText”来更新文件代码中的某些内容。然而,这不断导致:

Warning: array_splice(): The first argument should be an array
据我所知,file\u get\u返回的字符串应该可以像其他数组一样操作。有什么原因让我有麻烦吗?多谢各位

来自:

文件\u获取\u内容-将整个文件读入字符串

所以你没有数组。你有一根绳子

阅读

字符串不是数组,即使它支持使用方括号:

$str[0]
为您想要的行为使用函数。它会将字符串转换为实数组,然后您可以将其用作数组函数中的参数。例如:

echo('<pre>');
var_dump(array_slice(str_split("Stack Overflow"), 6));
echo('</pre>');
die();

我认为这很有帮助。

文件函数将文件读入一行数组。我认为问题是关于通过方括号访问字符串,它看起来像一个数组,但事实上它不是-它只是一个PHP有用的语法。是的-这就是为什么我也添加了答案。但是你更快了:啊,我的错误是认为字符串是数组。出于某种原因,这是我的理解。谢谢,我的困惑在于假设字符串是PHP中数组的一种形式。这就是为什么str_split可以帮助您将字符串转换为数组;