Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP OOP与Java中的main()有等价物吗?_Php_Object_Coding Style - Fatal编程技术网

PHP OOP与Java中的main()有等价物吗?

PHP OOP与Java中的main()有等价物吗?,php,object,coding-style,Php,Object,Coding Style,出于代码清晰性的考虑,我想知道是否有可能让PHP中的对象在定义时执行函数或块,以保持更像Java 它不是通过\uu construct()实例化的,而是像Java中的main()一样定义的。PHP在Java中是否与main()等效 对于有使用OO PHP编写整个项目经验的人来说:如何决定哪些代码应该和不应该包含在对象中?如果你真的想,你可以创建一个“main”函数,然后调用它: function main(){ $obj1 = new Obj1(); doSomething

出于代码清晰性的考虑,我想知道是否有可能让PHP中的对象在定义时执行函数或块,以保持更像Java

它不是通过
\uu construct()
实例化的,而是像Java中的
main()
一样定义的。PHP在Java中是否与
main()
等效


对于有使用OO PHP编写整个项目经验的人来说:如何决定哪些代码应该和不应该包含在对象中?

如果你真的想,你可以创建一个“main”函数,然后调用它:

function main(){

     $obj1 = new Obj1();
     doSomething();
     //etc...

}

main();

如果我正确理解了你的问题…

如果你真的想,你可以创建一个“main”函数,然后调用它:

function main(){

     $obj1 = new Obj1();
     doSomething();
     //etc...

}

main();

如果我正确理解了你的问题…

你问的不是OO问题。Java和类似语言中的main()是一个框架特性,而不是OO特性。所有main()定义都是应用程序的入口点,这是您正在做的事情


因此,简单的回答是,这是无关紧要的。较长的答案是,如果您需要这种执行顺序,可以在PHP中查找特定的框架

你所问的不是一个面向对象的问题。Java和类似语言中的main()是一个框架特性,而不是OO特性。所有main()定义都是应用程序的入口点,这是您正在做的事情


因此,简单的回答是,这是无关紧要的。较长的答案是,如果您需要这种执行顺序,可以在PHP中查找特定的框架

您将在堆栈跟踪中看到main。它只是应用程序的入口点。通常是调用解析器的第一个文件的第一行(或第零行)


您将在堆栈跟踪中看到main。它只是应用程序的入口点。通常是调用解析器的第一个文件的第一行(或第零行)


对象中应该包含哪些代码?好吧,这是一个非常开放的问题:这要看情况而定

对于小型项目,您可以按程序完成所有工作。但OO确实为大型项目带来了一些好处,例如封装(只在需要时授予外部方法/属性访问权限,并将一个部分的机制隐藏在其他不相关的部分中)和继承(非常有助于解决一般情况,然后将其缩小到您的需求范围,同时保持代码井然有序)

对于大型web项目,尤其是那些使用现代PHP框架的项目,我想说80%的代码可以是OO——除了视图层中的控制器和代码片段。但是一些系统(比如Wordpress)强制采用更为程序化的风格,因此您的OO可能只占代码的30%(我在OO中开发WP插件,但从我可以看出,这种方法是不寻常的)


要了解更多信息,您可能会发现选择一个PHP框架(Symfony、Zend、Cake等)并运行他们的教程很有帮助。在我看来,通过实践学习比通过抽象学习要多得多。

对象中应该包含哪些代码?好吧,这是一个非常开放的问题:这要看情况而定

对于小型项目,您可以按程序完成所有工作。但OO确实为大型项目带来了一些好处,例如封装(只在需要时授予外部方法/属性访问权限,并将一个部分的机制隐藏在其他不相关的部分中)和继承(非常有助于解决一般情况,然后将其缩小到您的需求范围,同时保持代码井然有序)

对于大型web项目,尤其是那些使用现代PHP框架的项目,我想说80%的代码可以是OO——除了视图层中的控制器和代码片段。但是一些系统(比如Wordpress)强制采用更为程序化的风格,因此您的OO可能只占代码的30%(我在OO中开发WP插件,但从我可以看出,这种方法是不寻常的)


要了解更多信息,您可能会发现选择一个PHP框架(Symfony、Zend、Cake等)并运行他们的教程很有帮助。在我看来,通过实践你会学到比通过抽象学习多得多的东西。

什么?你能更详细地说明你在说什么吗?不,没有。PHP在找到语句时执行语句,从文件开始到结束。等效的方法是定义一个类,将
main()
代码放在构造函数中,然后在末尾添加
newmyclass()
。main和u构造的共同点是什么?是的,绝对没有……什么?你能更详细地说明你在说什么吗?不,没有。PHP在找到语句时执行语句,从文件开始到结束。等效的方法是定义一个类,将
main()
代码放在构造函数中,然后在末尾添加
newmyclass()
。main和u构造的共同点是什么?是的,绝对没有。复选标记也用于对我原始问题的评论中的halfer的答案。谢谢@ch7527,很高兴它有帮助。复选标记也用于对我原始问题的评论中的halfer的答案。谢谢@ch7527,很高兴它有帮助。