Archive for the ‘Последни Теми’ category

Грешка PHP Разполагане ниво Твърде Deep Recursive Зависимост

12 март, 2010

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

да проследим корените на проблема. Ето какво бих сгрешил.

В PHP има два Оператори за сравнение, == И ===. Това е общоизвестно, че първият не е строго за тип, но втората е. Така, например

ехо ( фалшиви == 0 ); // вярно

ехо ( фалшиви === 0 ); // лъжлив

- 0 е цяло число и фалшивите е булева

Моят проблем произтича от използването на не-строги пишете с обекти.

$a = new MyObj();
$b = new MyObj();
ако( $a == $b )

Аз не смятам това, което правя с този код. При сравняване на два обекта да използвам строг сравнение оператор (==) PHP сравнява всички свойства на обекти и ако те отговарят на обекти, се считат за равни. Ако те не съвпадат те не са равни. В сила, В момента има рекурсивен сравнението на всички свойства на всеки обект, и всичките им свойства, др. докато не достигнем основните типове данни, като низове и числа.

If, обаче, използва строги сравнение (===), PHP ще проверява дали два обекта са едни и същи обект, не само обекти със същите свойства.

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

$a = new MyObj();
$b = new MyObj();
$c = new MyObj();
$a->P = 1;
$b->P = 1;
$c->P = 2;
ехо ( $a == $c ); // лъжлив
ехо ( $a == $b ); // вярно
ехо ( $a === $b ); // лъжлив

Проблемът възниква, ако имате кръгови препратки в обекти имоти. Така, например

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

$a = new MyObj();
$b = new OtherObj();
$a->P = $ б;
$b->Q = $ едно; // на кръгова препратка: $a->p->=== Р $ милион

$c = new MyObj();
$d = new OtherObj();
$c->P = $ г;
$d->Q = $ в;// друга кръгова препратка: $c->p->р $ в ===

ехо ( $a == $c ); // Фатална грешка:
Nesting level too deep – рекурсивна зависимост?

За да се сравни $ милион долара в, PHP трябва да сравнят своите свойства. Така че логиката в PHP е нещо подобно: $a == $c if $a->p == $c->p if $a->p->q == $c->p->q if $a->p->q->p == $c->p->q->п и т.н.. за неопределено време.

PHP 5.1 изглежда гладко над проблема по някакъв начин (Вероятно след определено ниво на рекурсия тя просто връща фалшиви) – и обикновено то работник се оправи. PHP 5.2 правилно произвежда фатална грешка по-горе.

След като разберете на проблема, решението е лесно – използване строго сравнение.

ехо ( $a === $c ); // лъжлив (и не е допуснал грешка)

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

NB. Същият проблем може да възникне при използване на обект на отрицание оператори сравнение (употреба !== Вместо !=) и при използване на 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

01 март, 2010

Бих искал да опиша някои методи за това как да пиша на преработвателя за входяща поща. Аз трябваше да се използва като манипулация на анализира електронна поща , получени от различни източници. Това може да бъде полезна за написването на вашите собствени системи за спам филтър, телефонния секретар или билет система, за да бъде сезиран с жалба по пощата.

За прилагането на електронна поща анализатор алгоритъм имаме нужда

  1. свърже и влезте за да сървър за електронна поща
  2. Преброяване на броя на входящите писма
  3. recive електронна поща от сървъра чрез POP3 протокол
  4. процес на електронната поща заглавки и тяло и да направи разбор
  5. … прилагат никакви допълнителни действия

Добре, има много конкретна задача за PHP кодиране, така че ние трябва хостинг, който поддържа външната връзка. Аз не предлагам да напише решението изцяло, защото много се реализира от талантливи програмисти вече. Например, можете да вземете един готов модул, който ще позволи на приема електронна поща от отдалечен сървър.

Благодаря за Мануел Lemos и неговия модул (PHP клас) което име pop3.php.

За да се свържете с този вид на вашия код, просто трябва да се използват включва или да изискват от командата: изискват(“pop3.php”);


hostname=$hostname;
$result=$pop3_connection->Open();

// We are trying to open connection and display the result
echo $result;
// Trying to logon and display the error if any appear
$error=$pop3_connection->Login($user,$accesscode,$apop);
ако ($грешка<>"Парола грешка: Logon недостатъчност: неизвестен потребителско име или парола лошо. ") {echo $error; излизане;}
// Now get the statistic how many emails are stored and the size of them $result=$pop3_connection->Statistics($messages, $size);
ехо "$hostname contains  $messages от $size bytes.";

//..... Там могат да получават електронни писма в цикъл и да ги анализира .... //

// Ако нищо общо - we can close the connection
$error=$pop3_connection->Close(); //
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 конвертор

Февруари 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, Буревестник, Eudora, Бъркли Mail. Задачата за преобразуване не изглежда изпълним. Реших, че ако търсачката не ми донесе веднага на решение, тогава аз ще кажа на шефа ми, че мисията е невъзможна. Така че направих търсене за фразата “антураж, буревестник, Mac поща, EML да pst безплатно mbox” и търсенето бе успешна, се оказа нещо, което никога не се очаква. Освен това, думата FREE не съвпадат с мен, със задача, която трябваше да направя. Представете си изненадата ми, когато в описанието на страницата на друг EML да pst конвертор, Намерих свободен mbox EML конвертор.

Софтуерът преглед показа, че въпреки факта, че програмата е безплатна, тя има невероятен потенциал. Независимо от това формат на файловете на пощенските кутии на различни програми варират, Програмата е в състояние точно да се идентифицират всички мета подписи и правилно да признае файловия формат. Аз не съм се шегувам, всички пощенска кутия файлове Магистрала, Mac Mail, Антураж, MailCopa, Буревестник, Eudora и Бъркли Mail бяха трансформирани в масиви на електронна поща файлове в EML формат. Като на Outlook Съветник за импортиране в ръцете ми позволете ми да внасят всички EML файлове в Outlook PST.

Свободен MBOX да EML конвертор работи като партида процесор. Първо трябва да изберете всички необходими 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