Arhīvs ‘Pēdējās tēmas’ kategorijā

PHP Kļūda Ligzdošanas līmeņa Too Deep Rekursīva atkarība

12 marts, 2010

Es uzinstalēju PHP 5.2 ir viens no maniem testēšanas datoru šodien un bitu kodu, kas iepriekš strādāja fine versijā pāris 5.1.6 threw fatālas kļūdas jauno versiju. Kļūdas ziņojums bija "Ligzdošanas līmenis ir pārāk dziļi - rekursīvas atkarība?", Un tas aizņēma nedaudz laika

izsekot saknes par problēmu. Lūk, ko es gribētu darīt nepareizi.

PHP ir divas salīdzinājuma operatoriem, == Un ===. Ir vispārēji zināms, ka pirmais nav stingras par veidu, bet otrais ir. Tā, piemēram,

atbalss ( viltus == 0 ); // patiess

atbalss ( viltus === 0 ); // nepatiess

- 0 ir vesels skaitlis, un viltus ir Būla

Mana problēma radās izmantot bez stingras grupu ar objektiem.

$= jauni MyObj();
$b = jauni MyObj();
ja( $== $ b )

Man bija neuzskatīja to, kas man bija darīt ar šo kodu. Salīdzinot divus priekšmetus izmanto ne-stingru salīdzināšanas operators (==) PHP salīdzina visas īpašības objektiem un ja tie atbilst priekšmeti ir uzskatāmi par vienādu. Ja tie nesakrīt tie nav vienādi. Būtībā, mums ir rekursīvs salīdzinājums visu katra objekta īpašībām, un visas to īpašības, uc. kamēr mēs sasniegt bāzes datu tipi, piemēram, virknes un integers.

Ja, tomēr, mēs izmantojam stingru salīdzinājumu (===), PHP būs jāpārbauda, vai divi objekti ir tieši tāds pats priekšmets, ne tikai objektus ar tādu pašu īpašībām.

klase MyObj
{
valsts $ p;
}

$= jauni MyObj();
$b = jauni MyObj();
$c = jauni MyObj();
$->p = 1;
$b->p = 1;
$c->p = 2;
atbalss ( $== $ c ); // nepatiess
atbalss ( $== $ b ); // patiess
atbalss ( $=== $ b ); // nepatiess

Problēma rodas, ja jums ir riņķveida atsauces jūsu objektu īpašības. Tā, piemēram,

klase MyObj
{
valsts $ p;
}
klase OtherObj
{
valsts $ q;
}

$= jauni MyObj();
$b = jauni OtherObj();
$->p = $ b;
$b->q = $; // riņķveida atsauces: $->p->=== $ Q

$c = jauni MyObj();
$d = jauni OtherObj();
$c->p = $ d;
$d->q = $ c;// citu riņķveida atsauces: $c->p->q $ c ===

atbalss ( $== $ c ); // Fatāla kļūda:
Ligzdošanas līmeņa pārāk dziļi – rekursīvas atkarība?

Lai salīdzinātu $ līdz $ c, PHP ir salīdzināt to īpašības. Tātad PHP loģika iet kaut kas līdzīgs šim: $== $ c, ja $ a->p == $c->p ja $ a->p->q == $ c->p->q ja $ a->p->q-&p == $ c-$c-&gp-p->q->p utt. uz nenoteiktu laiku.

PHP 5.1 šķita vienmērīgu pār problēmu kaut kā (iespējams pēc noteikta līmeņa recursion tā vienkārši atpakaļ nepatiesu) – un parasti tā strPHPja, kas soda. PHP 5.2 pareizi ražo fatāla kļūda iepriekš.

Tiklīdz jūs zināt problēmu, risinājums ir viegli – izmantot stingru salīdzinājumu.

atbalss ( $=== $ c ); // nepatiess (un neviena kļūda)

Stingra salīdzinājums vienkārši pārbaudīt, vai divi objekti ir vienā un tajā pašā vietā atmiņā, un tāpēc nav pat apskatīt īpašumu vērtību.

NB. Tāda pati problēma var rasties, izmantojot noliegt salīdzināšanas operatoru (izmantot !== Nevis !=) un lietojot in_array (izmantot in_array Trešais parametrs norāda stingru salīdzinājumu).

Daļa, un ir

  • 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

Kā saņemt un apstrādāt e-pastu, izmantojot POP3 un PHP

1 marts, 2010

Es vēlos, lai aprakstītu dažas metodes, kā rakstīt procesors ienākošo pastu. Man bija izmantot šādu manipulāciju ar parsēt e-pastu kas saņemti no dažādiem avotiem. Tas var būt noderīgi rakstot savu spam filtru sistēma, automātiskais atbildētājs vai biļešu sistēmu, lai saņemtu pieteikumus pa e-pastu.

Lai īstenotu e-pasta parsētājs algoritms mums

  1. savienojumu un log-on, lai e-pasta serveri
  2. skaitīt ienākošo vēstuļu
  3. recive e-no servera pastu, izmantojot POP3 protokolu
  4. process e-pasta galvenes un ķermeņa, un dara parsēšana
  5. … īstenot papildu pasākumus

Ok, ir ļoti īpašs uzdevums PHP kodēšana, tāpēc mums ir nepieciešams hostings, kas atbalsta ārējo savienojumu. Man nav ierosinu rakstīt lēmumu pilnībā, jo ir daudz gūst talantīgi programmētāji jau. Piemēram, Jūs varat veikt gatavu moduli, kas ļaus pieņemt e-pastus no attālā servera.

Thank's Manuel Lemos un viņa modulis (php klases) kas nosaukts pop3.php.

Lai izveidotu savienojumu šajā klasē ar savu kodu, Jums vienkārši nepieciešams, lai izmantotu iekļaut vai arī pieprasīt komandu: pieprasīt(“pop3.php”);


hostname = $ hostname;
$rezultāts = $ pop3_connection-> Open();

// Mēs cenšamies atvērt savienojumu un parādītu rezultātu
;
// Mēģina pieteikšanās un parādīt kļūdu, ja jebkura parādās
($lietotājs,$accesscode,$APOP);
ja ($kļūda<>"Paroles kļūda: Pieteikšanās mazspēja: nezināms lietotāja vārdu vai slikti paroli. ") {echo $error; izeja;}
// Tagad nokļūt statistika, cik daudz e-pastus tiek uzglabāti, un lielumu tiem $ result = $ pop3_connection-> Statistika($messages, $size);
atbalss "$hostname satur  $ziņas no $izmērs baiti.";

//..... Tur mēs varam saņemt e-pastus ar ciklu un parsēt viņiem .... //

// Ja nav ko darīt - mēs varam aizvērtu savienojumu
(); //
ececho $ kļūda?>

Tagad mēs zinām, kā savienot un log-uz POP3 serveri un kā lūgt skaitu Inbox e-pastu un to izmēri. Nākamais, mums vajadzētu saņemt katru e-pastu un izanalizēt galvenes un ķermeņa masīvs.

Jāturpina

Daļa, un ir

  • 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

Bezmaksas mbox uz EML Converter

14 februāris, 2010

Ir labi, ka šodien vēl ir programmētāji, kas raksta lielisku programmatūru bez maksas. Ko es runāju par? Gribu jums pastāstīt, kā es atklāju vēl programma manā kolekcijā ir must ir komunālo pakalpojumu.

Apple MAC datori tiek plaši izmantoti mūsu birojā. Tas ir šīs sabiedrības politiku. Neskatoties uz šīs sabiedrības politiku, Mūsu boss vēlas Windows un izmanto tās Featured klēpjdators. Kam būtu pārkāpt noteikumus? Protams boss, pārējās nav atļauta icon smile Free MBOX to EML Converter Man jāsaka, ka es piekrītu, ka priekšroka, tāpēc man ir bijis uzstādīts Windows 7 uz manu mājas klēpjdators.

Mūsu advokāti vajadzētu pāriet dažu izmeklēšanu laiku pa laikam, un tās vajadzētu pārskatīt atbilstību mūsu darbinieki, bet viņi pieņēma tikai failus Outlook PST formātā.

In iepriekšējais raksts Es rakstīja par neticami nepieciešama programma Outlook importēšanas vednī, kas saglabātas mani daudz laika, kad importēt eml failus programmā Outlook. Uzdevums, kas man bija pabeigt tikai izvirzīti mani šoks. Ir nepieciešams, lai pārvērstu e-pastus no mūsu darbiniekiem uz Outlook .pst fails. Kā mēs varam savienot nesavienojamas lietas? Kā apvienot MAC OS ar Windows?

Lai sāktu man bija veikt auditu un konstatēja, ka mūsu darbinieki, izmantojot dažādus e-pasta klientiem. Ir tikai daži no viņiem: Apture, Mac Mail, Svīta, MailCopa, Thunderbird, Eudora, Berkeley Pasts. Konversijas uzdevums nelikās veicams. Es nolēmu, ka, ja meklētājprogrammas, nav nekavējoties atnesiet man risinājums, tad es teikšu saviem Boss, ka misija nav iespējams. Tāpēc es darīju meklēt frāzi “svīta, Thunderbird, mac mail, uz eml, lai pst bezmaksas mbox” , un meklēšana bija veiksmīga, tas izrādījās kaut ko es nekad nav paredzams,. Turklāt, vārda FREE nesaskan ar mani ar uzdevumu, kas bija jādara. Iedomājieties, mans pārsteigums, kad uz aprakstu lapā vēl viena eml, lai pst pārveidotāju, Es atklāju bezmaksas mbox uz eml pārveidotājs.

Programmatūras pārskats parādīja, ka neskatoties uz to, ka programma ir bezmaksas, tas ir neticami potenciāls. Tomēr pastkastes failus formātā dažādās programmās atšķiras, programma bija spējīgs precīzi noteikt visus meta parakstu un pareizi atpazīst faila formātu. Es neesmu kidding, visas pastkastes failus Apture, Mac Mail, Svīta, MailCopa, Thunderbird, Eudora un Berkeley Pasts tika pārveidoti bloki no e-pasta faili EML formāts. Ņemot Outlook importēšanas vednī pie manas rokas, ļaujiet man importēt visu eml failus programmā Outlook PST.

Bezmaksas mbox uz EML Converter darbojas kā partijas procesoru. Vispirms jums vajadzētu izvēlēties visus nepieciešamos mbox faili no kuras vēlaties ielādēt eml ziņas. Ir viegli izvēlēties visus failus ar Maiņa taustiņš. Pēc tam, Jums nepieciešams noklikšķināt Processing poga, punktu tukšs direktorijā pie jūsu cietā diska un gaidīt rezultātu. Programma apstrādāt visus failus pēc kārtas, tas rada direktoriju par katru failu un aizpildīt to ar iegūta eml failus. Manā gadījumā man bija daudz pastkastes failus, kas tika nosaukti saskaņā ar lietotāja vārdu no mūsu darbiniekiem. Galu galā es saņēmu daudz mapju, visiem bija lietotāja vārdu un kas ir ietverti visi atbilstošie eml failus kas iegūti no pastkaste.

Daļa, un ir

  • 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

Space Shuttle video no sākuma līdz beigām

Janvāris 25, 2010

NASA! Es atklāju šo video absolūti pārsteidzošu. Divpadsmit minūšu darbības Atspoļkuģis daļas. Sākas no Zemes un uz leju, lai jūras. Kosmosa kameras par katru daļu turp un atpakaļ, izskatās ļoti interesanti. Ļoti skaisti Atspoļkuģis video.

STS-129 video izceļ kā apkopotie SE&Es tēlainība komanda šeit JSC no visām zemes, gaisa, ET un SRB aktīvi.

Daļa, un ir

  • 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