RE: [PHP] unexpected array_diff output
On 30 April 2004 09:47, Frederic Noyer wrote: Hello there ! I am trying to fill and then compare two arrays: one filled by a foreach construct, and the second by a while construct. I check both with a print_r to be sure that both are correctly filled (which seems to be the case). But then, when I try to compare them with a array_diff , the result is incoherent (at least to me...). I have tried several variant, but I don't understand what's wrong. Sure you guys can tell me where is my mistake. Here is the code: ? // creates first array (from a _POST[''] ) foreach ($_POST['input_auteur'] AS $aut_ligne) { $part_ligne = explode(,,$aut_ligne); $arr1[] = (string) $part_ligne['2']; } echo Array from POST :; print_r ($arr1); I don't have any great insight into what appear to be your odd array_diff() results, but try using var_dump() instead of print_r() -- it will give you more information about *exactly* what values are stored in the arrays, and it may just be that you'll spot an odd discrepancy. Cheers! Mike - Mike Ford, Electronic Information Services Adviser, Learning Support Services, Learning Information Services, JG125, James Graham Building, Leeds Metropolitan University, Beckett Park, LEEDS, LS6 3QS, United Kingdom Email: [EMAIL PROTECTED] Tel: +44 113 283 2600 extn 4730 Fax: +44 113 283 3211 -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] unexpected array_diff output
On 30 avr. 04, at 12:11, Ford, Mike [LSS] wrote: On 30 April 2004 09:47, Frederic Noyer wrote: Hello there ! I am trying to fill and then compare two arrays: one filled by a foreach construct, and the second by a while construct. I check both with a print_r to be sure that both are correctly filled (which seems to be the case). But then, when I try to compare them with a array_diff , the result is incoherent (at least to me...). I have tried several variant, but I don't understand what's wrong. Sure you guys can tell me where is my mistake. Here is the code: ? // creates first array (from a _POST[''] ) foreach ($_POST['input_auteur'] AS $aut_ligne) { $part_ligne = explode(,,$aut_ligne); $arr1[] = (string) $part_ligne['2']; } echo Array from POST :; print_r ($arr1); I don't have any great insight into what appear to be your odd array_diff() results, but try using var_dump() instead of print_r() -- it will give you more information about *exactly* what values are stored in the arrays, and it may just be that you'll spot an odd discrepancy. Cheers! Mike Thanks, Mike ! That was the correct answer. In one of the array there was always a space in front of the digit (ex: 2). The comparison was then corrupted because of this. I never used var_dump() before, but it is far more precise. Thanks for the hint! Thanks to you too, Thorsten for your kind help. Best regards, Fred -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php