douju1852 2018-12-03 12:26
浏览 37

如何获取函数中的值,该函数被检索并存储在同一类中的另一个函数的变量中 Magento 2

Edit: I want to use $orderId value in other functions.

Here is class

<?php
namespace vendor\module\Observer;

use Magento\Framework\Event\ObserverInterface;

class Observer implements ObserverInterface
{
public function __construct(
    \Magento\Framework\Registry $registry
) { 
        $objectManager = \Magento\Framework\App\ObjectManager::getInstance(); 
    }

public function execute(\Magento\Framework\Event\Observer $observer) { 
        $order = $observer->getEvent()->getOrder();
        $orderId = $order->getId();
        $customerId = $order->getCustomerId();
   }
public function getOrderId(){

    $Id = $orderId;
    return $Id;
}

}

I tried this:

class Observer implements ObserverInterface
{
public $orderId;
public function __construct(
    \Magento\Framework\Registry $registry
) { 
        $objectManager = \Magento\Framework\App\ObjectManager::getInstance(); 
    }

public function execute(\Magento\Framework\Event\Observer $observer) { 
        $order = $observer->getEvent()->getOrder();
        this->$orderId = $order->getId();
        $customerId = $order->getCustomerId();
   }
public function getOrderId(){

    $Id = this->$orderId;
    return $Id;
}
}

I am Calling getOrderId(); in same class.. but not working

Gone through links like Making a global variable accessible for every function inside a class Need a solution in this particular scenario.

  • 写回答

1条回答 默认 最新

  • duanke9540 2018-12-04 03:32
    关注

    You should learn more about Object Oriented Concepts to understand what is Class, Object, Member variables, Member functions etc

    Magento2 has a function to get last order id here:

    $orderId = $this->checkout->getLastOrderId();
    

    with $this->checkout is an instantiation of CheckoutSession

    Regards

    评论

报告相同问题?

悬赏问题

  • ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
  • ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
  • ¥15 帮我写一个c++工程
  • ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
  • ¥15 关于smbclient 库的使用
  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启