我目前正在使用一个现有的应用程序,该应用程序在用户登录时定义了几个常量。例如,如果 Alice 登录SOME_CONSTANT
被定义为1
,而如果 Bob 登录SOME_CONSTANT
被定义为2
。现在我正在尝试编写一个脚本,它会像爱丽丝一样做几件事,像鲍勃一样做几件事。“好像它是”我的意思SOME_CONSTANT
是为一次迭代定义一种方式,为下一次迭代定义另一种方式。不幸的是,常量在切换值方面并不是最好的,并且重构应用程序以将它们从常量更改为目前不是一种选择。
我考虑过的一种方法是使用 pcntl_fork()。我会在定义常量之前分叉并为每个常量运行一个单独的进程。但是,我希望这个脚本能够在 Windows 和 Linux 上运行。目前 Windows 不直接支持 pcntl 扩展。如果我能提供帮助,我会尽量避免通过 Cygwin 让一切正常工作。
我考虑过的另一种方法是让脚本调用子脚本使用exec("php childscript.php constant_value")
. 这种方法是否允许一个子脚本以一种方式定义常量,而另一个子脚本以另一种方式定义它?我认为它应该,但我还没有测试它。此外,这种方法还有其他任何人可以看到的主要问题吗?
还有另一种我没有考虑过的方法会是更好的选择吗?感谢您的时间。