Php поиск дубликатов в массиве

Discussion in 'PHP' started by ZaripovEldar, 2 May 2012.

  1. ZaripovEldar

    ZaripovEldar New Member

    Joined:
    2 Mar 2012
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    Имееться 2 файла:
    1) содержит сслки на фото для публикации
    2) содержит ссыли на уже опудикованные фото

    и сам скрипт который должен брать 1 картинку с файла №1 и проверять на наличие в файле №2, если такого нет опубликовывать на стене...

    ТАк вот в чем проблем, скрипт публикует все подрят как будто и
    не проверяет выкладываю код:
    Code:
    <?
    $token='some_token';
    $group_id='-34295759';
    $message='Hello World';
    $ftp_login="some_login";
    $ftp_pass="some_password";
    $img=0;
    
    // Подключаемся к FTP
    $connect= ftp_connect("176.9.149.9") or die("Не удалось подключиться к FTP серверу");
    $login_result=ftp_login($connect,$ftp_login,$ftp_pass) or die("Не удалось авторизоваться на FTP сервере");
    
    // Считываем названия файлов в масив $filelist
    $file_array2 =  file ("http://post4life.socgu.ru/publicfoto.txt");
    $result2 = sizeof($file_array2);
    
    // Считываем лог файл
    $file_array =  file ("http://post4life.socgu.ru/publiclog.txt");
    $result = sizeof($file_array);
    
    // Сравниваем файлы с папки с лог файлом, если нет в логе постим и записываем в лог
    for($img;$img<=$result2;$img++)
    {
    
    $elements=$file_array2[$img];
    $search=array_search($elements,$file_array,true);
    		if ($search="FALSE")
    		{
    					$fp = fopen("publiclog.txt", "a");
    		fwrite($fp,$elements);
    		fclose($fp);
    		$img=$result2+1;
    		$link=str_replace("\n", '',"Location: https://api.vkontakte.ru/method/wall.post?owner_id=".$group_id."&message=".$message."&attachments=".$elements."&access_token=".$token);
    		header($link);
    			}else{
               $img++;
    		}
    
    }
    ftp_close($connect);
    ?>
     
    #1 ZaripovEldar, 2 May 2012
    Last edited by a moderator: 2 May 2012
  2. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Присвоение переменной search строкового значения, следовательно условие всегда будет возвращать истину. Правильно так:

    PHP:
            if ($search===FALSE)
    А вообще http://php.net/array_diff
     
    _________________________