我正在努力将基于 define() 的旧语言/翻译系统转换为更灵活的系统(可能基于 JSON,但它仍然是开放的)。
作为此转换的一部分,我需要将 42 个具有数千个字符串的 .php 文件转换为我将使用的任何格式。一些定义的字符串引用其他定义或使用 PHP 代码。我不需要保持这种动态行为(无论如何它从来都不是动态的),但我需要在转换时拥有“当前”值。一个定义可能如下所示:
define('LNG_Some_string', 'Page $s of $s of our fine '.LNG_Product_name);
由于所有定义都有一个易于识别的“LNG_”前缀,因此转换单个文件是微不足道的。但我想制作一个小脚本,一次处理所有 42 个。
理想情况下,我可以取消定义或重新定义define(),但我找不到一种简单的方法来做到这一点。这是可能吗?
或者,处理这种转换的好方法是什么?该脚本将是一次性的,因此它不需要可维护或快速。我只是希望它完全自动化以避免人为错误。