PHP相当于Javascript“with”范围语句
发布时间:2020-12-13 17:14:13 所属栏目:PHP教程 来源:网络整理
导读:从 Javascript移植一些代码我有这种不便.例如: 在javascript中我们可以生成此代码. var a,x,y;var r = 10;with (Math) { a = PI * r * r; x = r * cos(PI); y = r * sin(PI / 2);} 代替 a = Math.PI * r * r;x = r * Math.cos(Math.PI);y = r * Math.sin(Ma
从
Javascript移植一些代码我有这种不便.例如:
在javascript中我们可以生成此代码. var a,x,y; var r = 10; with (Math) { a = PI * r * r; x = r * cos(PI); y = r * sin(PI / 2); } 代替 a = Math.PI * r * r; x = r * Math.cos(Math.PI); y = r * Math.sin(Math.PI / 2); 在最后一个例子中将是PHP,IE中的相同比例,在第二个代码示例中,Math是多余的. 有人为任何清晰优雅的代码提供了解决方案吗? 我将以下代码添加为新示例: class MyExampleClass { function example { for($i = 0; $i < count($this->Registers); $i++) { $r = "50"; $r .= $this->ZeroFill($this->numericOnly($this->Registers[$i]->Id)),15) . $this->ZeroFill($this->numericOnly($this->Registers[$i]->Inscription),25); $r .= $this->ZeroFill($this->Registers[$i]->Model,2 ); $r .= $this->PadR($this->alpha($this->Registers[$i]->Date),10 ); $this->WriteRecord( $r); } } 在第三个例子中,我可以在$this-> Registers [$i]的语句中使用temp $var,但是如果所有的处理代码都变成了类Sanitize这样的类. with (Sanitize) { $r .= ZeroFill(numericOnly($tmp),15); // are much more clear and using OO } 我想要一种方法来做一个更短但没有重复的代码. 解决方法
你正在寻找的东西更像是java而不是javascript,在java中这个资格是可选的,可以省略. javascript的with语句功能正常,因为它甚至不能用于赋值.
PHP没有这个,你必须明确输入$this->每次. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |