小编too*_*n81的帖子

在PHP中为变量赋值NULL:这有什么作用?

在维护代码时,我遇到了循环,在循环结束时,几个变量被设置为NULL如下:$var = NULL;.根据我在手册中的理解,NULL主要用于在PHP代码中进行比较.由于NULL没有类型而且不是字符串或数字,输出它是没有意义的.

遗憾的是我无法提供示例,但我认为NULL值正在写入我们代码中的文件.我的问题是:$var在赋值后是否有值,并将回显/写入它产生输出?

编辑: 我已阅读PHP手册条目 NULL.没有必要在评论或回答中发布这个:http://php.net/manual/en/language.types.null.php,或者在没有RTM的情况下向我推荐.谢谢!

php null

8
推荐指数
1
解决办法
3万
查看次数

宣布一个空课是不好的?

在业余时间,我正在构建一个数独求解器,试图在PHP中获得OOP的支持.对于那些不知道的人来说,数独谜题最常见的形式是从1到9的9x9数字矩阵,其中3x3正方形以类似于tic-tac-toe的模式描绘.有些数字是提前填写的.拼图的目标是填写剩余的数字,这样任何行,列或3x3方块都不会包含多次相同的数字.

为此,我做了很多课程.A Cell可以是a的元素Constraint,即行,列和3x3正方形.A SudokuConstraints和Cells 的集合.我有一个SudokuSolver类,它动态地包含具有SolverHelper子类类声明的源文件,并实例化每个子类中的一个.一个助手的Solve()功能,需要一个Sudoku作为参数.它检查Constraints并询问其细胞,根据它发现的东西消除价值可能性.程序本身只是循环帮助程序,直到他们都没有报告他们能够消除任何可能性.

但是,行或列中的所有单元排列的事实具有在某些解决方案技术中利用的某些推论.所以我需要区分行/列和其他Constraints.我可以将行和列放在不同的数组中,这不是一个糟糕的解决方案.这具有允许良好优化机会的优点:例如,没有列与另一列相交.我还可以添加一个布尔属性IsLinear.

或者,现在我们回答我的问题:我可以将类子类化为Constraint一个LinearConstraint.但那个班级是空的.它不需要覆盖Constraint类中的任何内容.它将是一对花括号,就是这样; 一个LinearConstraint对象是一个特殊的,因为它是一个类的实例.如果我想要或需要有与线性约束相关的特殊代码,我总是可以添加它.我的问题是:我正在考虑宣布和使用一个空课,这是我做错了什么的迹象?我对这个过于抽象和理论吗?

php oop

7
推荐指数
2
解决办法
1271
查看次数

标签 统计

php ×2

null ×1

oop ×1