惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Security Latest
Security Latest
Recorded Future
Recorded Future
人人都是产品经理
人人都是产品经理
S
SegmentFault 最新的问题
Hacker News - Newest:
Hacker News - Newest: "LLM"
C
CXSECURITY Database RSS Feed - CXSecurity.com
博客园 - 三生石上(FineUI控件)
博客园 - 聂微东
P
Privacy & Cybersecurity Law Blog
WordPress大学
WordPress大学
Know Your Adversary
Know Your Adversary
Spread Privacy
Spread Privacy
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
量子位
L
LINUX DO - 热门话题
L
Lohrmann on Cybersecurity
博客园 - Franky
酷 壳 – CoolShell
酷 壳 – CoolShell
T
Tor Project blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
雷峰网
雷峰网
阮一峰的网络日志
阮一峰的网络日志
V
Visual Studio Blog
T
Threatpost
T
Tenable Blog
有赞技术团队
有赞技术团队
大猫的无限游戏
大猫的无限游戏
Engineering at Meta
Engineering at Meta
GbyAI
GbyAI
C
Cisco Blogs
H
Heimdal Security Blog
Attack and Defense Labs
Attack and Defense Labs
A
About on SuperTechFans
Last Week in AI
Last Week in AI
N
News and Events Feed by Topic
T
Threat Research - Cisco Blogs
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
I
Intezer
V
V2EX
Cyberwarzone
Cyberwarzone
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
B
Blog RSS Feed
V
Vulnerabilities – Threatpost
N
Netflix TechBlog - Medium
T
The Blog of Author Tim Ferriss
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
U
Unit 42
PCI Perspectives
PCI Perspectives
P
Privacy International News Feed
D
Docker

立云图志 - 昆明

L.Plog.v1 超出预期的浏览体验 个性化图志系统 被嫌弃的博客图像处理 90% 只想好好听首歌 写而为己 对友链的思考 有声:东风坝开合浮桥 戒烟已十年 C/2025 A6 Lemmon Typecho 相册主题 Snapic Plus v6 寻求贡献者 Typecho 图志主题:Snapic Paper 预料中的又倒下一批 Typecho 主题、模板、插件 给 Typecho 博客添加申请友链、站点收藏等功能 给 Typecho 博客添加旅行足迹地图标记功能 给 Typecho 博客添加评论者「都说了啥」功能 Typecho 记事阅读主题:Snapic Just 640px Typecho 多合一功能集插件:Lopwon Hub 视频:紫金山 - 阿特拉斯彗星 C/2023 A3 Tsuchinshan-ATLAS Typecho SEO 搜索引擎优化插件 视频:老成昆线 7466/5 次慢火车 博客已十年 视频:Nunca Tristes Typecho 相册主题:Snapic Plus v5 停止开发! 视频:中缅边境,填坑行 一季山河:有声篇 追踪文昌近期火箭发射 又双叒叕,退票成功 一季山河:已完结 已退票 一季山河:引 给 Typecho 博客添加文章页相册功能 给 Typecho 博客添加QQ空间「那年今日」功能 棋子 昆明下雪 十年足迹 一季山河:影像篇 Kodak DC20 世界上最纤薄的数码相机 未命名文档 拆机换电 Canon IXY Digital 出事方知厮是谁 失焦的街头照 废片吗? 四台潜望式卡片机 拍一拍 其实嘛…… 玩具相机拍片
与 Typecho 相关
作者: Lopwon · 2025-10-11 · via 立云图志 - 昆明

· Picture by ChatGPT· Picture by ChatGPT

在重制 Snapic Plus 过程中,需要把 JSON 字符串转换为数组,于是构建了以下函数:


    function jsonStringToArray($jsonString, $associative = true)
    {

        if (!is_string($jsonString) || empty(trim($jsonString))) {
            return $associative ? [] : null;
        }

        $decodedData = @json_decode($jsonString, $associative);

        if (json_last_error() === JSON_ERROR_NONE) {
            return $decodedData;
        }

        return $associative ? [] : null;

    }

    $data = '{"last_update_timestamp":"1760160739","total_media_count":576}';

    jsonStringToArray($data); // 转为数组
    jsonStringToArray($data, false); // 转为对象

事后细想,这是常用的功能,Typecho 或许有内置的,果然,在 var/Typecho/Common.php 文件里找到了:


    $data = '{"last_update_timestamp":"1760160739","total_media_count":576}';

    Json::decode($data); // 转为对象
    Json::decode($data, true); // 转为数组

这样的现象还挺普遍,由于官方提供的使用文档略显粗犷,主题、插件的开发者们常常会忽略这些自带的方法、组件等,这么一来,无形中增加了制作的时间开销,也存在升级新版 Typecho 时,主题、插件代码失效报错的情况,比如(这里)提及的偏方。

此外,不少主题会使用诸如以下的标记方式对文章内容进行替换,以输出自定义的丰富版式,但是,由于官方似乎没有制定统一的开发规范,导致不同开发者使用了不同风格去实现相似的渲染结果,致使在切换主题时,无法正确兼容适配。


    [photos][/photos] // 开发者 A
    [fotos][/fotos] // 开发者 B

26 视频:中缅边境,填坑行

尼康D90相机抓拍进藏骑行者

1374141600

尼康D90相机抓拍进藏骑行者

明天的天气不会太糟,可以出发

1348999200

明天的天气不会太糟,可以出发