gpt4 book ai didi

php - 如何摆脱这种循环依赖?

转载 作者:可可西里 更新时间:2023-11-01 13:28:47 24 4
gpt4 key购买 nike

我目前正在编写一些类来处理 PHP 网络应用程序中的本地化。

类是:

  • Locale - 处理设置和获取用户的区域设置、时区、语言。
  • LocaleFormat - 处理格式化日期、排序规则、货币格式等。
  • 时区 - 处理为国家/地区编制时区列表以及与时区相关的其他功能。
  • LocaleData - 获取区域设置数据,例如地址格式和邮政编码正则表达式等内容。

整个应用程序运行正常,但我需要向 Timezone 添加更多内容。

这导致了这个问题:Locale 需要 Timezone 的方法,而 Timezone 需要 LocaleData 的方法,而 LocaleData 需要 Locale 的方法。

如何打破这种循环依赖?我应该把我的类(class)分解成更小的部分吗?有什么模式可以处理这个问题吗?

干杯:)

最佳答案

如果你只是调用其他类的方法,先加载所有的类,然后你就可以在类之间调用方法了。不要在类文件中执行任何初始化,应该在“包含”文件的单独“加载程序”文件中完成,然后调用执行初始化。

如果您获得基于扩展其他类的类的循环依赖,那么您需要重新考虑整个设置。

关于php - 如何摆脱这种循环依赖?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7453030/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com