Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.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中比较两个数组值_Php_Arrays_Compare_Array Merge - Fatal编程技术网

如何在PHP中比较两个数组值

如何在PHP中比较两个数组值,php,arrays,compare,array-merge,Php,Arrays,Compare,Array Merge,我有两个功能,第一个是: public function computeGHComponents() { error_reporting (E_ALL^ E_NOTICE); $totals = NULL; foreach ($this->transaction as $t){ $amount = (float) $t['Amount']; if (isset($t

我有两个功能,第一个是:

   public function computeGHComponents()
    {
      error_reporting (E_ALL^ E_NOTICE);          

      $totals = NULL;

      foreach ($this->transaction as $t){

          $amount = (float) $t['Amount'];



            if (isset($totals[ $t['SiteID'] ][ $t['TransactionType'] ])){
                $totals[ $t['SiteID'] ][ $t['TransactionType'] ] += (float) $amount;
            } else {
                $totals[ $t['SiteID'] ][ $t['TransactionType'] ] = (float) $amount;
            }
        }

     foreach($totals as $key => $value)

        {

         $this->result[$key]['Deposit'] = isset($value['D']) ? $value['D'] : 0;
         $this->result[$key]['Reload']  = isset($value['R']) ? $value['R'] : 0; 
         $this->result[$key]['Redemption'] = isset($value['W']) ? $value['W'] : 0;

       }
    echo "<pre>";

  print_r($this->result);

} 
现在,我需要比较这两个SiteID以进行绑定,下面是我的函数:

 2==
 2==
 2==
 3==
 3==
 3==
我过去经常回显SiteID的比较,如下所示:

    public function bindGHComponentsToSites()
    {
   error_reporting (E_ALL^ E_NOTICE);  


     foreach ($this->arrays as $keys => $data) {


       foreach($this->result as $keyss => $value){

         //print_r($keyss );echo '<br/>';

         if($data['SiteID'] == $keyss){

               //statement...
            }
       }
    }
echo($data['SiteID'].='.$value['SiteID'])

但是computegcomponents()函数的$value['SiteID']中没有值,它显示如下:

    public function bindGHComponentsToSites()
    {
   error_reporting (E_ALL^ E_NOTICE);  


     foreach ($this->arrays as $keys => $data) {


       foreach($this->result as $keyss => $value){

         //print_r($keyss );echo '<br/>';

         if($data['SiteID'] == $keyss){

               //statement...
            }
       }
    }

如何从computeGHComponents()获取SiteID的值?请帮我修改代码。提前谢谢。

我曾经打印我的$keys,我发现它是SiteID,所以我修改代码如下:

    public function bindGHComponentsToSites()
    {
   error_reporting (E_ALL^ E_NOTICE);  


     foreach ($this->arrays as $keys => $data) {


       foreach($this->result as $keyss => $value){

         //print_r($keyss );echo '<br/>';

         if($data['SiteID'] == $keyss){

               //statement...
            }
       }
    }
公共函数bindGHComponentsToSites()
{
错误报告(E_全部^E_通知);
foreach($this->arrays as$keys=>$data){
foreach($this->result as$keys=>$value){
//打印($keys);回显“
”; 如果($data['SiteID']==$keys){ //声明。。。 } } }
我曾经打印我的$keys,我发现它是SiteID,所以我修改代码如下:

    public function bindGHComponentsToSites()
    {
   error_reporting (E_ALL^ E_NOTICE);  


     foreach ($this->arrays as $keys => $data) {


       foreach($this->result as $keyss => $value){

         //print_r($keyss );echo '<br/>';

         if($data['SiteID'] == $keyss){

               //statement...
            }
       }
    }
公共函数bindGHComponentsToSites()
{
错误报告(E_全部^E_通知);
foreach($this->arrays as$keys=>$data){
foreach($this->result as$keys=>$value){
//打印($keys);回显“
”; 如果($data['SiteID']==$keys){ //声明。。。 } } }
从外观上看,变量范围问题。@Dagon,我如何使用它修改我的代码?非常感谢。你必须使用
print\u r
var\u dump
向我们显示两个数组的内容,否则我们无法猜测结构…我已经使用print\u r和echo测试了我的数组,但我可以得到va计算组件()的站点ID的值。请帮助我。从外观上看,变量范围问题。@Dagon,我如何使用它修改我的代码?非常感谢。你必须使用
print\u r
var\u dump
向我们显示两个数组的内容,否则我们无法猜测结构…我已经使用print\u r和echo测试了我的数组,但我可以获取ComputegComponents()的SiteID值。请帮助我。