Vector logo of the PHP programming language wi...

Dziś mamy zapalił światło, czytanie dla php pamięci podręcznej The HTML. Tutaj mówimy o buforowanie danych wyjściowych nasz kod a nie jak napisałem do wypłaty na skritpovete opcode poziom z eAccelerator. Tak rzeczy – Daj nam przypomnieć sobie szybkie pracy php-IT. Złożyć wniosek serwer sieci Web-On przyjmuje nas parametry, które możemy przesłać go, a następnie przesyła je do skryptu php on kompiluje i wypluć wyniki w wersji html. To jest dość ogólne linie. Co to jest nasz pomysł tutaj nad żądania, na dużych bloków lub nie tak duże bloki jak bezpośrednie rysowanie raz skompilowany produkcji słomki. Zalety są oczywiste – namalâna razy, mniejsze obciążenia i zużycie zasobów. Jako całość nie jest otwarcie ciepłej wody lub coś, kto wie, jak skomplikowane. Istnieje wiele klas w tym celu, takich jak pzp Gruszka Cache_Lite który ma dużą funkcjonalność, ale myślę, że w przyszłości napisać kopalni z bardziej efektywna struktura i moje wymagania buforowania zapisu. Teraz bierzemy spojrzeć opcji aborigenskiâ z Funkcje kontroli danych wyjściowych. Warto więc wypłacić coś –

//start cache all output after that will be saved

ob_start();

//generate output

echo 'Some dynamic output';

echo 'Some other dynamic output ...';

//assign output into variable

$var=ob_get_contents();

//close cache output

ob_end_flush();

Powyższy kod jest banalna, ale pozwól mi wyjaśnić, co się stało. Najpierw deklarujemy, jaka część kodu rozpoczyna buforowanie. Następnie można wygenerować bardziej standardowy sposób kod wyjścia. Następnie wygenerowanych danych wyjściowych łączy zmienną, która będzie dostępna później, czy w pliku lub podczas sesji, to Twoja decyzja. Wreszcie Usuń i Wyłącz buforowanie. Dość prosta operacja, jeśli Let's powiedzieć geenriraneto pamięci podręcznej przechodzi przez ogromne bloki kodu, dzięki czemu możemy zaoszczędzić dużo czasu procesora, jak wypłata na chwilę lub na sesję. Teraz to wszystko, o co chcesz czy pamięci podręcznej został udostępniony do publicznej wiadomości lub jest dostępne dla różnych użytkowników.

Wzmocnione przez Zemanta

Następny artykuł może być szczytem głupoty, ale jak zawsze mówię, że jestem lepszy, niż koder administratora. Wczoraj aż дращех te AJAX skrypt i musiałem wysłać jakieś dane, które nigdy ich używam skrótu, bo skrypt nie podziela tablica $_SESSION i wszystko staje się trochę niepewnie. Dlatego robię następną свинщина wszystkie памери które są prezentowane w POST lub GET, aby zrobić je sam hash md5 конкатерираните ustawień, a następnie porównać go z. W sumie nie jest zły schemat, myślę. Хеширащи algorytmy do tego celu bole MD5 , SHA, DESC.. Aż tutaj wszystko jest jasne powiedzmy, co będzie używać MD5 do mieszania ustawienia (jak i w дейтвителност robić). Mamy 3 parametr, który serwuje w GET, i=1, n=2 m=3 i mówią wiersze хешриане jest 123 co czyni nas następny MD5 hash 202cb962ac59075b964b07152d234b70. Nic tu wiele ciekawych rzeczy. Ten hash będzie spadać w ciągu kilku sekund przy każdym ataku. Teraz idzie sól i pieprz według mojego prostego pomysłu. Powiedzmy, że biorę pierwszy i ostatni znak łańcucha, a także ich udostępnianie miejsca, tak więc okazuje się, 002cb962ac59075b964b07152d234b72 hash, który już jest, jeśli ktoś chyba nie czyta kod idiotyzmu, to sprawia, że rzeczy загрубяват podczas próby włamania. Prawdziwa hash inny, i nawet izsnifen bardzo bezużyteczne. Ale po co się zatrzymywać na tym możemy podzielić mieszania kilku bloków, MD5 w tym przypadku ma długość 32 symbol, jeśli podzielić na 4 bloku na 8 symbole i ich usytuowanie zmiana staje się jeszcze bardziej niezręcznej sytuacji. Zdecydowanie najbardziej przyjemny efekt jest, Visual jest standard md5 siekać i zła hahor mogą się złamać, podczas gdy istnieje pragnienie. Nie jestem dobry w szyfrowania i nie może powoływać się na coś, który wie jak zasadniczo i wszystko, ale lubię jak po prostu mieć pomysł i realizacja i zaawansowanych niezawodność jest niezwykle wysoka nie jako normalne MD5, który z karty wideo bardziej wykształconych łamie norm.

Oto przykładowy kod dla pierwszego ideę wymiany pierwszy i ostatni znak kod podstawowej 3 zamówienia 🙂

<?php

$hash = '202cb962ac59075b964b07152d234b70';

$first = substr($hash,0,1);
$last = substr($hash,-1);
$rest = substr($hash,1,30);
$hash = $last.$rest.$first;
echo "The real hash is : $str <br> inverted hash is : $hash";

?>

http://www.youtube. com / zegarek?v = Fvje9dzBHPM

Aby przenieść jakiś projekt, który jest zaprogramowany bez aktywnej kontroli wersji obecnie to kompletne szaleństwo. W ogóle jest wiele opcji bazar , bystry , git , svn . Tak więc, jeśli można oczekiwać, aby wyjaśnić, że kontroli wersji jest lepszy i dlaczego nie będzie. U nas używamy git. Powodów jest wiele – łatwo dostosować, bardzo elastyczny, napisany Linus Torvalds aby obsługiwać Linux Kernel w wersji, ostatnie, co najmniej 2 przyczyny 😉 . Dzisiaj musiałem utworzyć nowe repozytorium, że nowy projekt. Naprawdę będę zakładał trochę repozytoriów i to bardzo dawno temu, kiedy wydał i zapomniałem cienkiej momento w to. Utworzenie magazynu do czynienia kilka plików do przechowywania najpierw wszystko szło dokładnie. Sam udał się do sklepu, była standardem:

git init
echo "Short project's description" > .git/description
git config --global user.name "Your Name"
git config --global user.email "[email protected]"
git commit -a
touch .git/git-daemon-export-ok

W ogólnych zarysach nic, że nie ma racji. Wtedy postanowiłem sprawdzić na zdalnej maszynie, aby съхраня treści i próbują wcisnąć-na mnie się zatrzasnęły się z brzydkimi komunikat:

Popychając do git://gitHost / projekt
zdalny: błąd: odmowy zaktualizować wyrejestrowany oddział: bibl / heads / master
zdalny: błąd: Domyślnie, aktualizacja bieżącej gałęzi w nie "goły" repozytorium
zdalny: błąd: odmowa, bo to sprawi, że indeks i praca drewna nie są kompatybilne
zdalny: błąd: z czego ty pchnął, i wymaga &#8216;pip reset –dysk’ w meczu
zdalny: błąd: praca drzewo w głowie.
zdalny: błąd:
zdalny: błąd: Można ustawić &#8216;pobierz.denyCurrentBranch’ zmiennej konfiguracji
zdalny: błąd: &#8216;ignorować’ lub w &#8216;ostrzec’ w zdalnym repozytorium, aby umożliwić pchają w
zdalny: błąd: jego bieżącej gałęzi; jednak, nie jest to zalecane, jeśli
zdalny: błąd: zorganizować dla aktualizacji swojej pracy, drzewo, aby pasowały do tego, że popchnęli w niektórych
zdalny: błąd: innym sposobem.
zdalny: błąd:
zdalny: błąd: By opanować tę wiadomość i nadal zachować domyślne zachowanie, zestaw
zdalny: błąd: &#8216;receive.denyCurrentBranch’ configuration variable to &#8216;refuse&#8217;.
do git://gitHost / projekt
! [zdalny odrzucone] mistrz> mistrz (oddział jest aktualnie wyrejestrowany)
błąd: failed to push some refs to &#8216;git://gitHost / projekt’

Tak, oczywiście, próbuje комитвам w drzewie projektu i oprogramowania przerwał mi. W sumie, nie mam zamiaru robić dodatkowe oddziału, bo ludzie, którzy uczestniczą w projektach są jasne i szereg innych przyczyn. Nadchodzi moment, aby powiedzieć, że zdefiniowano bardzo niekompetentny tytuł, ale to kolejny punkt. Ogólnie rozwiązanie jest trywialne w projekcie .git / config trzeba dodać następującą dyrektywę:

[receive]
denyCurrentBranch = false

Potem wszystko wraca na swoje miejsce.

http://www.youtube. com / zegarek?V = 16bRiH5zfOY

Packet Tracer

Obraz przez Wikipedia

Днес ми се наложи да демонстрирам една симулация през Cisco Packet Tracer на машина на която не беше инсталиран. В общи линии малоумщината е, че стимулатора на Cisco е за x86 машини а при мен машината беше x64. При опит за инсталация умира с грозното съобщение

Attempting to install package now
dpkg: error processing PacketTracer-5.3_3.i386.deb (–zainstalować):
package architecture (i386) does not match system (amd64)
Errors were encountered while processing:
PacketTracer-5.3_3.i386.deb

Общо взето всичко е очевидно Debian-ския пакет не иска да се инсталира защото е за друга архитектура. От тук нататък проблема е ясен dpkg + форсирано инсталиране за да байпаснем грешката за различна платформа. Bin-ския файл на инсталатора реално е само разархивиращ се архив който се разархивира в /tmp/selfextract.XXXXX папка където XXXXX е произволен низ. В тази директория се намира .deb файлът на Packet Tracer-a. Инсталацията се извършва с командата

dpkg -i --force-all /tmp/selfextract.XXXXX/PacketTracer-5.3_3.i386.deb

Естествено с root права.

Wzmocnione przez Zemanta