PHP:彼此使用的类
发布时间:2020-12-13 16:16:43 所属栏目:PHP教程 来源:网络整理
导读:我有父类Color和children,ColorRGBA和ColorHSLA.在Color类中我想使用这些子函数的静态函数,但是我找不到错误“Class’Color’.”这是同样的问题 http://forums.codeguru.com/showthread.php?t=469995但是类Color;似乎不适用于PHP. Color.php: include_once
我有父类Color和children,ColorRGBA和ColorHSLA.在Color类中我想使用这些子函数的静态函数,但是我找不到错误“Class’Color’.”这是同样的问题
http://forums.codeguru.com/showthread.php?t=469995但是类Color;似乎不适用于PHP.
Color.php: include_once 'ColorRGBA.php'; include_once 'ColorHSLA.php'; class Color{ public static function isValid(&$tokens,$i) { return ColorRGBA::isValid($tokens,$i) || ColorHSLA::isValid($tokens,$i); } } ColorHLSA.php和类似的ColorRGBA.php include_once 'Color.php'; class ColorRGBA extends Color { public static function isValid(&$t,&$i) { ... } } 我应该如何重建我的类层次结构或包含指令?或者还有其他选择如何使我的代码工作? 解决方法
为了解决这类问题,也许你应该考虑实现
factory class.如果这不是你的风格,另一个优雅的方法是使用
__autoload().
至于代码的维护.根据您介绍的颜色数量,这将很困难.为什么不尝试这样的事情: class Color{ public static function isValid($type,&$tokens,$i){ $class_name = 'Color'.$type; if (!class_exists($class_name)) { throw new Exception('Missing '.$class_name.' class.'); } $class_name::isValid(&$tokens,$i); } } PHP 3.5 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |