最近一直在php 7.4 下调东西,发现有很多的代码需要在 php 7.4 下做兼容的修改。而今天就恰恰遇到了一处兼容性的错误,记录下来与大家分享一下。
兼容错误提示:
Array and string offset access syntax with curly braces is deprecated
错误原因:
由于 php 的7.4版本与之前的版本的相比的话,在一些逻辑与数据处理上做了很大程度的改变,其它一项就是不能够再使用花括号(也就是{}),来访问数组与字符串的偏移。如果你不是很懂的话,可以参考下面的例子。
示例1:php 7.4 不再允许使用花括号来访问数组的元素。
定义一个数组:<?php
$arr = array('1','2','3');
?>
php 7.4以前的版本,可以使用以下的两种方式输出:<?php
echo $arr[0];
echo $arr{0}; //注意,这里是花括号
?>
php 7.4版本的输出:
由于 php7.4 版本做了变化,不能够再使用花括号,所以只能使用第一种。<?php
// php 7.4 只能使用下面的一种
echo $arr[0];
?>
例2 :php7.4 不允许使用花括号访问字符串的偏移
定义一个字符串<?php
$arr = 'feiniaomy.com';
?>
php 7.4 之前的版本输出字符串的偏移<?php
// 下面两种输出方式是等价的
echo $arr[0]; //输出字母 f
echo $arr{0}; //注意,这里是花括号
?>
php 7.4 输出字符串的偏移,不能使用花括号<?php
// php 7.4版本,只能使用下面的一种
echo $arr[0]; //输出字母 f
?>
获取更多的 php教程 请关注本站!