「水坑」Z-BlogPHP 中各种错误提示的复现

吐槽/反馈/建议:我的咸鱼心  爱发电-@wdssmq

严格来说并不都是 Z-BlogPHP 独有的错误;

另外这里标题是「复现」,以最简单的例子演示为什么会出现这种错误,至于初学者能否看懂以及能否帮助解决实际的问题。。emmm

包月 59.3 看心情解答各种问题。。zblog 为主。。

HelloZBlog「插件开发演示」 - Z-Blog 应用中心:

https://app.zblogcn.com/?id=18072

zb_users\plugin\HelloZBlog\include.php 中有一个HelloZBlog_debug()函数,在该函数内可以测试复现下边各种错误;


Array and string offset access syntax with curly braces is no longer supported

offset access直译是「偏移访问」,对应的中文概念是「(数组)下标」;

syntax是「语法」,比如PHPJavaScript在表达普通字符串时单引号和双引号都可以,但是涉及「变量解析/模板字符串」时有各自的「规则语法」;

curly braces是「大括号」;

no longer supported——不再支持;

// 正确
$arr = array(1,2,3);
echo $arr[0];
// die();

// 错误
$arr = array(1,2,3);
echo $arr{0}; // Array or string offset access with curly braces deprecated in PHP 7.4. Targeting PHP 8.1.0.
// die();

编辑器语法检测会提示:

「花括号」形式的「数组或字符串下标」已经在「PHP 7.4 中废弃(deprecated)」,然后「Targeting PHP 8.1.0」;

所以这个「Targeting」该怎么翻译。。我自己现在用的 7.4,实际花括号并没有报错,各种讨论中也是用 PHP 8 的会出现这个报错;


Trying to access array offset on value of type null

// 正确
$var = array(0);
echo $var[0];
// die();

// 报错
$var = null;
echo $var[0];
// die();

Function name must be a string

// 正确
$var = "fnTest"; // 前提是 fnTest() 函数存在
echo $var();
// die();

// 报错
$var = 1024;
echo $var();
// die();

Call to undefined function fnTest()

对于上边$var = "fnTest";的示例能够正确执行,需要定义:

function fnTest()
{
  return "test";
}

Call to a member function fnTest() on bool

$obj = true;
$obj->fnTest();
// die();

Array to string conversion

// 正确,输出前进行转换或额外处理
$arr = array(0, 1, 2);
echo implode(", ",$arr);
// die();

// 错误,直接以 string 输出
$arr = array(0, 1, 2);
echo $arr;
// var_dump("$arr"); // 另外一种错误姿势
// die();

参考:

php 提示 Array to string conversion 解决方案:https://blog.csdn.net/zeroking_vip/article/details/87960319 「CSDN 少数有用的内容」


爱发电

本文标题:《「水坑」Z-BlogPHP 中各种错误提示的复现》作者:沉冰浮水
原文链接:https://www.wdssmq.com/post/20200922437.html
特别注明外均为原创,转载请注明。

分享到微信

扫描二维码

可在微信查看或分享至朋友圈。

相关文章

沉冰浮水 沉冰浮水 发布于 2010-12-08 13:24:34  
https://www.wdssmq.com
我也认为这个只能当个创意来看。。
----------
各种不给力。。
回复
Suitear Suitear 发布于 2010-12-07 21:54:09  
#cmt2769
第一,这衣服变化也不大,
第二女人们要的是多,你这对于能保护男同志的钱包力量太小~
第三,只有男人才能让~·满足?~
回复
发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

网站分类

  • 订阅本站的 RSS 2.0 新闻聚合

搜索

本周旧文

搬家也告一段落,虽然搬过来的东西还得归置,新衣柜虽说已经散俩月味儿了,但还是不想放衣服进去。

要不我每年汇总整理一次??碎雨集_沉冰浮水_第1页

所以,不带这条的话,2024 年目前只发了 13 条嘟????

VSCode 内 git 操作卡住的时候没办法主动取消一直是个痛点,一般都是推送或拉取,今天连提交都卡了。。

又一个夏天过去了,所以今年也没买防水鞋套;然后天凉了,为了应对踢被子买了睡袋,不知道 1.2 米会不会略窄。。

《五至七时的克莱奥》,2018 年 6 月加入列表,21 年 11 月底发现 B 站上线了这部,直到前几天才看完,还是分两次看的。。接下来有五项是 2019 年的,都是电影 —— 略长的待办列表。。

有用程序自动抓取自己带 tag 的嘟,然后按年备份后从线上删除;刚发现去年的数据有备份但是没删线上??和本地数据对比后发现线上的还少一条,Why??

本质上,每个人需要的是「让自己面临的问题得到解决」的能力。。

这又涉及到直接能力和间接能力,,缺乏直接能力很正常,视情况可以通过学习来掌握直接能力,或者「请」有直接能力的人来帮自己解决。。

缺乏间接能力的情况是真没救,尤其是对「这是**我自己**面临的问题」这一前提没有明确认知的人。。

其实,在认知意义上,焦虑时我知道这种情绪对应「焦虑」这个文法词汇,此外还有「压抑」「悲伤」等等,然而「抑郁」其实是个我认知体系外的词,虽然经常一些情绪感受我找不到对应的语言词汇来表述,却也只能将其实表述为「找不到对应的语言词汇来表述」的某些感受。。

所以,我所面对的问题又可以明确向哪里寻求帮助呢?

爱发电支持者

最新留言

友情链接