Архив ‘Последняя тема’ категория

PHP Ошибка уровень вложенности Too Deep рекурсивных зависимостей

12 марта, 2010

Я установил PHP 5.2 на одном из моих компьютеров, тестирование сегодня и пара битов кода, который ранее работал штрафа в версии 5.1.6 бросил фатальных ошибок в новой версии. Сообщение об ошибке было "уровня вложенности слишком глубоко - рекурсивная зависимость?", И она занимает немного времени

выследить корень проблемы. Вот что я сделал неправильно.

В PHP Есть две операции сравнения, == И ===. Это общеизвестно, что первое не является строгим, но о типе второй. Так, например

эхо ( ложных == 0 ); // истинный

эхо ( ложных === 0 ); // фальшивый

- 0 целое и ложных булевой

Моя проблема связана с использованием нестрогих набрав с объектами.

$MyObj = новый();
$Ъ = новые MyObj();
если( $== $ Ь )

Я не рассмотрел, что я делаю с этим кодом. Если сравнивать два объектов с использованием нестрогих оператор сравнения (==) PHP сравнивает все свойства объектов, и если они соответствуют объекты считаются равными. Если они не совпадают они не равны. В сущности, У нас есть рекурсивное сравнение всех свойств каждого объекта, и все их свойства, и т.д.. пока мы не достигнем основные типы данных, такие как строки и целые числа.

Если, однако, мы используем строгое сравнение (===), PHP проверит двух объектов в точности тот же объект, не только объекты с одинаковыми свойствами.

класса MyObj
{
общественного $ р;
}

$MyObj = новый();
$Ъ = новые MyObj();
$с = новый MyObj();
$->р = 1;
$б->р = 1;
$С->р = 2;
эхо ( $== $ с ); // фальшивый
эхо ( $== $ Ь ); // истинный
эхо ( $=== $ B ); // фальшивый

Проблема возникает, если у вас есть циклические ссылки в свойствах объектов. Так, например

класса MyObj
{
общественного $ р;
}
класса OtherObj
{
общественного $ Q;
}

$MyObj = новый();
$Ъ = новые OtherObj();
$->р = $ B;
$б->д = $; // циклической ссылки: $->р->=== Q $

$с = новый MyObj();
$D = новый OtherObj();
$С->р = $ г;
$г->д = $ C;// еще одно циркулярное ссылки: $С->р->д $ C ===

эхо ( $== $ с ); // Фатальная ошибка:
Уровень вложенности слишком глубоко – рекурсивная зависимость?

Для сравнения $ до $ с, PHP должен сравнить их свойства. Поэтому логика в PHP выходит что-то подобное: $== $ в случае $->p == $c->р, если $->p->д == $ с->p->д, если $р == $ с-gt;q->p р- $c->p->д->р и т.д.. на неопределенное время.

PHP 5.1 Казалось сгладить проблемы каким-то образом (вероятно, после определенного уровня PHPкурсии он просто вернулся ложной) – и обычно это сработало хорошо. PHP 5.2 правильно производит фатальная ошибка выше.

После того как вы знаете, проблема, Решение легко – использовать строгое сравнение.

эхо ( $=== $ с ); // фальшивый (и не ошибка)

Строгое сравнение просто проверить два объекта в том же месте в памяти и даже не смотреть на значения свойств.

Н.Б.. Та же проблема может возникнуть при использовании отрицается операторы сравнения (использовать !== А !=) и при использовании in_array (Третий параметр использовать in_array на указывают строгое сравнение).

Делите и наслаждайтесь

  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency
  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency
  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency
  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency
  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency
  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency
  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency
  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency
  • wp socializer sprite mask 16px PHP Error Nesting Level Too Deep Recursive Dependency

Как получать и анализировать сообщения, используя POP3 и PHP

1 марта, 2010

Я хотел бы описать некоторые методы, как писать процессор для входящей почты. Мне пришлось использовать такие манипуляции разбор электронной почты , полученные из различных источников. Это может быть полезно для написания собственной системы фильтрации спама, автоответчик или системы обработки заявок на получение заявки по электронной почте.

Для реализации электронной почты анализатор алгоритма мы должны

  1. подключения и лог-на сервер электронной почты
  2. подсчитать количество входящего письма
  3. Получать по электронной почте с сервера по протоколу POP3
  4. Процесс заголовков сообщений электронной почты и тело и сделать анализ
  5. … осуществлять любые дополнительные меры,

Ok, есть очень конкретные задачи по PHP кодирования, поэтому мы должны хостинг, который поддерживает внешние связи. Я не собираюсь писать решение полностью, поскольку большая часть была осуществлена талантливые программисты уже. Например, Вы можете взять готовый модуль, который позволит принимать электронную почту с удаленного сервера.

Спасибо к Мануэль Лемос и его модуль (PHP-класс) , которого называли pop3.php.

Для подключения этого класса в коде, Вы просто должны использовать включать или требовать команду: требовать(“pop3.php”);


имя хоста = $;
$Результат = $ pop3_connection-> Открыть();

// Мы пытаемся, чтобы открыть соединение и вывести результат
;
// Попытка входа в систему и отображать ошибку, если какой-либо появиться
($пользователь,$accesscode,$APOP);
если ($ошибка<>"Пароль ошибке: Вход в систему не: неизвестное имя пользователя или пароль не опознаны.) {echo $error; выход;}
// Теперь получить статистику, сколько электронных писем хранятся и их размер $ результат = $ pop3_connection-> Статистика($messages, $size);
эхо "$содержит имсообщенията  $mразмерges из $size байт.";

//..... ТаЭхо $ ошибкежем получать электронную почту в цикле и проанализировать их .... //

// Если ничего не делать - мы можем закрыть соединение
(); //
echo $error;
?>

Теперь мы знаем, как подключить и лог-на POP3 сервере и как просить число Входящие сообщения электронной почты и их размеры. Рядом, мы должны получить каждого сообщения электронной почты и проанализировать заголовки и тело массива.

ПРОДОЛЖЕНИЕ СЛЕДУЕТ

Делите и наслаждайтесь

  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP
  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP
  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP
  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP
  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP
  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP
  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP
  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP
  • wp socializer sprite mask 16px How to receive and parse emails using POP3 and PHP

Бесплатный MBOX в EML Converter

14 февраля, 2010

Это хорошо, что сегодня Есть еще программистов, которые пишут прекрасное программное обеспечение на безвозмездной основе. То, что я имею в виду? Хочу сказать тебе, как я нашел другую программу для моей коллекции обязательно есть коммунальные услуги.

Apple MAC компьютеры широко используются в нашем офисе. Это политика компании. Несмотря на политику компании, наш хозяин предпочитает Windows и использует его признакам ноутбук. Кто должен нарушать правила? Конечно, хозяин, Остальное не допускается icon smile Free MBOX to EML Converter Я должен сказать, что я разделяю, что предпочтение, поэтому у меня установлена Windows 7 на мой домашний ноутбук.

Наши юристы должны пройти некоторые исследования время от времени, и они должны пересмотреть корреспонденции наших сотрудников, но они принимают только те файлы, в Outlook PST формат.

В предыдущая статья Я писала о невероятно нужную программу Outlook мастера импорта, которая спасла меня много времени, когда EML импорта файлов в Outlook. Задача, которую я должен был закончить просто повергло меня в шок. Это необходимо конвертировать электронные письма своих сотрудников в Outlook .PST файл. Как можно совместить несовместимые вещи? Как совместить MAC OS с Windows?

Для начала я должен был провести проверку и обнаружили, что наши сотрудники с помощью различных почтовых клиентов. Есть только некоторые из них: Застава, Mac Mail, Окружение, MailCopa, Thunderbird, Eudora, Беркли Mail. Преобразования задача не представляется выполнимой. Я решил, что, если поисковик не сразу принести мне решение, тогда я скажу, на мой босс, что миссия невозможна. Так что я сделал поиск по фразе “окружение, Thunderbird, Mac Mail, EML, чтобы к тихоокеанскому свободной Mbox” и поиск был успешным, оказалось то, что я никогда не ожидал. Кроме того, слово БЕСПЛАТНО не вяжется со мною задачи, которые должны делать. Каково же было мое удивление, когда на странице описания другой EML к тихоокеанскому конвертер, Я нашел бесплатный Mbox к EML конвертер.

Программное обеспечение обзор показал, что, несмотря на то, что программа является свободным, он имеет невероятный потенциал. Тем не менее почта форматов различных программ меняются, программа смогла точно определить все мета подписей и правильно распознать формат файла. Я не шучу, Все файлы почтовых ящиков Застава, Mac Mail, Окружение, MailCopa, Thunderbird, Eudora и Беркли Mail были преобразованы в массивы по электронной почте файлы EML формате. После Outlook мастера импорта мои руки, я хотел бы импортировать все EML файлы в Outlook PST.

Бесплатный MBOX в EML Converter работает как пакетного процессора. Сначала Вы должны выбрать все необходимые Mbox файлы , из которого вы хотите получить EML сообщения. Легко выбрать все файлы с Сдвиг ключ. После этого, Вам нужно нажмите Обработка кнопка, указывают на пустую папку на жестком диске и ждать результата. Программа обработки всех файлов последовательно, создает каталог для каждого файла и залейте его извлеченные файлы EML. В моем случае мне пришлось много файлы почтовых ящиков, которые были названы в соответствии с пользовательскими именами наших сотрудников. В конце концов я получил много папок, каждый из них имеет имя пользователя и содержит все соответствующие EML файлы , полученных из почтовый ящик.

Делите и наслаждайтесь

  • wp socializer sprite mask 16px Free MBOX to EML Converter
  • wp socializer sprite mask 16px Free MBOX to EML Converter
  • wp socializer sprite mask 16px Free MBOX to EML Converter
  • wp socializer sprite mask 16px Free MBOX to EML Converter
  • wp socializer sprite mask 16px Free MBOX to EML Converter
  • wp socializer sprite mask 16px Free MBOX to EML Converter
  • wp socializer sprite mask 16px Free MBOX to EML Converter
  • wp socializer sprite mask 16px Free MBOX to EML Converter
  • wp socializer sprite mask 16px Free MBOX to EML Converter

Шаттл видео от начала до конца

25 января, 2010

НАСА! Я нашел это видео совершенно удивительные. Двенадцать минут действия Шаттл части. Начать с Земли и до моря. Пространство камеры на каждой части трансфер, смотрится очень интересно. Очень красивая Шаттл видео.

STS-129 видео подчеркивается, составленная SE&Я изображений команды здесь, в ОАО "из всех земле, воздух, ET и SRB активов.

Делите и наслаждайтесь

  • wp socializer sprite mask 16px Space Shuttle video from start to end
  • wp socializer sprite mask 16px Space Shuttle video from start to end
  • wp socializer sprite mask 16px Space Shuttle video from start to end
  • wp socializer sprite mask 16px Space Shuttle video from start to end
  • wp socializer sprite mask 16px Space Shuttle video from start to end
  • wp socializer sprite mask 16px Space Shuttle video from start to end
  • wp socializer sprite mask 16px Space Shuttle video from start to end
  • wp socializer sprite mask 16px Space Shuttle video from start to end
  • wp socializer sprite mask 16px Space Shuttle video from start to end