草庐IT

overriding

全部标签

php - Magento 2 : I want to add ifconfig in override block xml

我试图用来自的phtml文件覆盖block供应商\magento\module-checkout\view\frontend\success.phtml到我的文件app\code\Custom\Module\view\frontend\checkout\success.phtmlxml文件是checkout_onepage_success.xmlCustom_Module::checkout/success.phtml当我从配置中启用模块时,然后使用我的block和phtml文件执行。当禁用模块时,然后执行默认文件并阻止。但是当我从配置中禁用模块时,默认文件和block不会执行。请帮我

php - 为什么 child 可以覆盖并访问其父私有(private)方法?

我习惯于将方法作为protected放在我的PHP类中。但是玩private我开始怀疑了。我知道它可能是重复的,但我无法从我读过的SO-answers中找到清晰的答案。检查了documentation和SOanswers但我的测试仍然与那里所说的不一致(见下文)。尤其是在PHP上下文中扩展相同类型类时,public和private方法之间的那种“纠结”并不经常被解释。例如:ab();}publicfunctionaccessprivate($obj){$obj->ab();}}classBextendsA{publicfunctionab(){echo'overridden-publi

php - 重写的方法被调用两次

我有一个代码片段tester();}}classTestextendsTesting{publicfunctiontester(){echo'test';}}$t=newTest();$t->testing();我应该有一个输出test但我得到的输出是testtest?为什么tester()被调用了两次?引用linktoideone 最佳答案 PHP脚本语言不区分大小写。(但不适用于变量)由于您的child类没有任何构造函数,父类构造函数被触发。当你这样做时..$t=newTest();父类构造函数被触发,也就是publicfunc

php - 为什么 override_function 作为未定义的函数返回

我跑:override_function('test_func','$a,$b','print_r("new");');我得到这个错误:PHPFatalerror:Calltoundefinedfunctionoverride_function()我正在使用php5.3.26 最佳答案 函数override_function是PECL扩展的一部分。配置PECL在这里。 关于php-为什么override_function作为未定义的函数返回,我们在StackOverflow上找到一个类似

php - 覆盖 Magento GetPrice 函数

我有一个自定义SQL数据库,我们在其中存储了每个客户每个产品和每个数量的不同价格。现在我们想建立一个Magento网上商店,但发现我们无法真正将这些价格导入Magento,因为它在数据结构方面不匹配。(而且Magento可能会崩溃,因为我们会向它抛出大量数据。)所以我在想;我可以将数据留在原处,在该数据之上设置服务,然后覆盖Magento中的某些GetPrice()方法以获得正确的价格吗?(这个正确的价格当然应该出现在每个可能显示价格的页面上。更重要的是,这个价格也应该用在购物篮和订单中。)我的问题是A:它会那样工作吗?只是覆盖一种方法,我们有自定义定价?还是我们必须改变更多的方法?然

PHP > 5.4 : overriding constructor with different signature

我们知道PHP不接受带有differentsignaturethantheparent的子方法.我认为构造函数也是如此:PHP文档states那个ThisalsoappliestoconstructorsasofPHP5.4.Before5.4constructorsignaturescoulddiffer.但是,似乎继承的构造函数仍然在PHP版本>5.4中可能有所不同。例如,以下代码不会触发任何警告或通知:classSomething{}classSomeOtherThing{}classFoo{publicfunction__construct(Something$foo){}pu

php - 在扩展类(class)中调用私有(private)电话?

我有一个包含函数funcB()的父类,我想通过在此函数中做一些更改来用更好的函数覆盖它。父类中的这个函数调用同一个类中的另一个私有(private)函数。示例代码:classclassA{privatefunctionfuncA(){return"funcAcalled";}publicfunctionfuncB(){$result=$this->funcA();return$result;}}classClassBextendsClassA{publicfunctionfuncB($a){//dosomemorestuff$result=$this->funcA();return$r

php - 无法覆盖 magento 核心配置模型

无法覆盖magento核心配置模型Mage_Core_Model_Config。我有magento1.9.2.1。这里是config.xmlPeexl_CustomFlatrate_HelperPeexl_CustomFlatrate_ModelPeexl_CustomFlatrate_Core_Config和类Peexl/CustomFlatrate/Model/Core/Config.phpclassPeexl_CustomFlatrate_Model_Core_ConfigextendsMage_Core_Model_Config{}没有任何反应:(

php - 拉维尔 : Overriding a Bundle's Service Providers

我有一个项目使用Laravel的Sentinel包。前一段时间,我问了一个关于extendingamodelprovidedinthebundle的问题.我接受的答案有效,但它需要在供应商文件夹中编辑bundle的代码。从那时起,我运行了一个composerupdate命令,我应用的更改被覆盖了(这并不奇怪)。我现在对laravel的工作原理有了更多的了解,所以我能够追溯到我的应用程序引用bundle服务的终点。在我的config/app.php文件中,我有服务提供商引用:'Sentinel\SentinelServiceProvider',SentinelServiceProvide

php - 警告 : ssh2_connect(): Failed overriding server to client COMP method

我在为PHP中的SSHsession启用压缩时遇到问题。部分代码:$methods=array('server_to_client'=>array('comp'=>'zlib'));if(!($con=ssh2_connect("10.214.201.31",22,$methods))){...执行期间的警告(通过httpd或phpcli):Warning:ssh2_connect():FailedoverridingservertoclientCOMPmethod压缩不起作用(通过ssh2_scp_recv下载测试文件的时间没有改变)。设置客户端到服务器压缩后出现类似警告。PHPVe