thegrede
thegrede

Reputation: 494

If array equal array PHP

Is possible to make if($array1[0]=>somevalue == $array2[0]=>somevalue){echo true;}else{echo false;}? because I cant make it work, can you help me please,

Example: $array1([0] => 'Joe', [2] => 'Pairs'); $array2([0] => 'info' => array([0] => 'joe'));

foreach($array2->info as $info){
    foreach($array1 as $name){
        if($name == $info[0]){
             echo 'true';
           }
           else{
             echo 'false';
           }
      }
  }

And this is the real code,

The arrays:

 Array
(
[0] => SimpleXMLElement Object
    (
        [companyLocationInfo] => Array
            (
                [0] => SimpleXMLElement Object
                    (
                        [companyName] => AVIS
                        [name] => NYCC07
                        [line1] => 420 EAST 90TH STREET
                    )
                [2] => SimpleXMLElement Object
                    (
                        [companyName] => AVIS
                        [name] => NYCC06
                        [line1] => 310 EAST 64TH STREET
                    )
                [3] => SimpleXMLElement Object
                    (
                        [companyName] => AVIS
                        [name] => NYCC01
                        [line1] => 68 EAST 11TH STREET
                    )

            )

        [rates] => Array
            (
                [0] => SimpleXMLElement Object
                    (
                        [pickupDropoffLocations] => Array
                            (
                                [0] => SimpleXMLElement Object
                                    (
                                        [companyName] => AVIS
                                        [name] => NYCC07
                                    )
                            )
                        [vehicleRentalPrefType] => CCAR
                        [rateAmount] => 83.99
                        [rateCurrency] => USD
                    )
                [2] => SimpleXMLElement Object
                    (
                        [pickupDropoffLocations] => Array
                            (
                                [0] => SimpleXMLElement Object
                                    (
                                        [companyName] => AVIS
                                        [name] => NYCC06
                                    )
                            )
                        [vehicleRentalPrefType] => CCAR
                        [rateAmount] => 110.54
                        [rateCurrency] => USD
                    )
                [3] => SimpleXMLElement Object
                    (
                        [pickupDropoffLocations] => Array
                            (
                                [0] => SimpleXMLElement Object
                                    (
                                        [companyName] => AVIS
                                        [name] => NYCC01
                                    )
                            )
                        [vehicleRentalPrefType] => CCAR
                        [rateAmount] => 210.65
                        [rateCurrency] => USD
                    )

            )

    )

)

and this is the code:

$results_array = array();

foreach($result[0]->rates as $rate) {
    foreach($result[0]->companyLocationInfo as $info) {
        if($info->name == $rate->pickupDropoffLocations[0]->name) {
            $results_array[] = array(
                'line1' => $info->line1,
                'name' => $info->locationDetails->name,
                'companyName' => $info->companyName,
                'vehicleRentalPrefType' => $rate->vehicleRentalPrefType
            );
        }
    }
}
print_r($results_array);

Thank you.

Upvotes: 0

Views: 235

Answers (1)

octern
octern

Reputation: 4868

What you're trying to do should be possible. If the code above is what you're actually trying to run, then your first problem is that you're comparing the values "Joe" and "joe" and those are not the same.

If you want a case-insensitive comparison, use if (strcasecmp($var1, $var2) == 0) (it returns zero if the two strings are the same, without considering case).

Upvotes: 2

Related Questions