Vector logo of the PHP programming language wi...

今日我々 は php のための読書ライトが点灯 キャッシュhtml. ここで我々 は我々 のコードの出力をキャッシュについて話すと、私は、skritpovete にキャッシュ アウトする書かれているではなく オペコード レベルで eAccelerator. そんなもの – お知らせ php it の迅速な作業の自分自身を思い出させる. 要求を送信します。 web サーバー-彼はそれは、送信パラメーターを受け入れるし、php スクリプトをコンパイルし、html バージョンで結果を吐き出す彼に送信します。. これは、かなり一般的なライン. 要求を私たちのアイデアをここでは何です。, 大きなブロックまたは直接描画のようにそう大きくないブロックをストローで一度コンパイルされた出力. 利点は明白です。 – namalâna 回, 少ない負荷とリソースの消費. お湯か何かを知っている全体が開いていない、どのように複雑な. このため、複数のクラスなどあります。 PHPCache_Lite 素晴らしい機能を持っているより合理化された構造と書き込みキャッシュは私の要件を私を記述すると、将来的に思う. Aborigenskiâ オプションを見て今いきます 出力制御関数. それでは何かを現金します。 –

//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();

上記のコードは簡単ですが、私は何が起こったかを説明しましょう. まず最初に、コード内のどの部分では、キャッシュが開始される宣言します。. 次に、終了コードのより標準的な方法を生成します。. 生成された出力がファイルであるかどうか後で、利用可能となる変数を結合する、またはセッション中にそれはあなたの決定. 最後に、削除し、キャッシュを無効にします。. かなり単純な操作で通過する場合みましょうと言う geenriraneto キャッシュ コードの巨大なブロックの間、またはセッションのキャッシュ アウトとして多くの CPU 時間を節約することが我々. それはすべてあなたが望むについて今キャッシュするかどうか国民が使用できるまたは別のユーザーがアクセスできます。.

Zemantaの強化されたことにより、

次の記事は、愚かさのトップかもしれないが、私はいつも言うように私は、エンコーダの管理者よりも良いですよ. 昨日、私はいくつかのAJAXスクリプトを傷つけ、スクリプトが$ _SESSION配列を共有しないと物事がやや不確実になっているため、それらの使用ハッシュことが少ないデータの検証を送信するために持っていました. だから、POSTを提出しているすべてのpameriを以下の最悪の場所をするか、またはそれらにMD5ハッシュkonkateriraniteパラメータのいずれかを行うために取得し、私はそれを比較. 全体的に悪くないスキームI. この目的のためにボールのためのハッシュアルゴリズム MD5 , SHA, DESCおよびその他. これまでの事は言うまでも明確です, それは、MD5ハッシュパラメータを使用します (そして、deytvitelnost行う際に). 我々が持っています 3 GET I = 1からn = 2メートル= 3を介して供給し、heshrianeの文字列があると言うれるパラメータ 123 私たちの次のMD5ハッシュ202cb962ac59075b964b07152d234b70なります. これまでのところ何も面白いくらい. このハッシュは、任意の攻撃で数秒間落ちます. ここに私のシンプルなアイデアに塩とコショウが来ます. のは、私は文字列の最初と最後の文字を取り、あなたが私たちのコード白痴を読んでいない場合は、誰かがハッキングしようとしたときに物事が荒れるにするものである場合ので、それらの場所を交換することは、すでに002cb962ac59075b964b07152d234b72ハッシュを取得しましょう. 本当のハッシュは別であってもizsnifenことが全く役に立ちません. しかし、なぜ私たちはハッシュ数ブロックを分割することができ、ここで止めます, MD5長の場合には 32 シンボルに分割されている場合 4 ブロックで 8 文字、さらに不快な位置になる場所としてのシフト. Далеч най приятния ефект е, че визуално си е стандартен md5 хеш и злия хахор може да си чупи докато има желание. Не съм добър по криптиране и не мога да пледирам за нещо кой знае колко фундаментално и прочие но ми допада колко е семпло като идея и реализация и съвременно надеждността е критично висока не като на нормалния MD5 които с една по грамотна видео карта се чупи за норматив.

Ето и примерен код за първата идея с размяната на първия и последния символ елементарен код от 3 реда 🙂


<?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/watch?v=Fvje9dzBHPM

積極的に今日では、バージョン管理せずにプログラムされたプロジェクトを移動するには、完全な狂気であります. 一般的には多数のオプションのバザーがあります , 水銀の , gitの , SVN . あなたはどのバージョン管理を説明するために期待するのであれば、ここで良いですし、なぜそれができなくなります. 我々は、使用します gitの. 多くの理由 – 調節しやすいです, 非常に柔軟, Linus Torvalds氏によって書かれたLinuxカーネルのバージョンを提供することです, 後者は、少なくともあります 2 理由😉 . 今日、私は新しいリポジトリを作成する必要がありました, これは、新しいプロジェクトを開始しました. 私たちが持っていたとき、私は実際には長い時間前に少しのリポジトリを作成したと私は小さな瞬間を忘れてしまったこと. リポジトリを作成し、いくつかのファイルが最初にすべてがうまくいった保存ぶつかっ. リポジトリの非常に設定が標準でした:


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

大丈夫ではありません基本的には何も. それから私は、コンテンツを保存するために、リモートマシンをテストすることを決めたとプッシュ私は非難醜いメッセージでシャットダウンを実行しようと:

gitのにプッシュ://gitHost /プロジェクト
リモート: エラー: チェックアウトしたブランチを更新することを拒否: レフリー/ヘッド/マスター
リモート: エラー: デフォルト設定で, 非裸のリポジトリに現在のブランチを更新
リモート: エラー: 拒否されました, それは、インデックスと作業ツリーの不一致が生じることになりますので、
リモート: エラー: あなたが押されたものと, そして、 'gitのリセットが必要になります –ハード’ 合わせる
リモート: エラー: HEADの作業ツリー.
リモート: エラー:
リモート: エラー: あなたは 'を設定することができますreceive.denyCurrentBranch’ 構成変数へ
リモート: エラー: 「無視’ または '警告’ プッシュできるようにするリモートリポジトリで
リモート: エラー: その現在のブランチ; しかしながら, これは、あなたがない限りお勧めしません
リモート: エラー: あなたには、いくつかの中に押し込むものと一致するために、その作業ツリーを更新するように配置され
リモート: エラー: 他の方法.
リモート: エラー:
リモート: エラー: このメッセージをスケルチしても、デフォルトの動作を維持するために、, セット
リモート: エラー: 「receive.denyCurrentBranch’ 「ごみ」に設定変数.
gitのへ://gitHost /プロジェクト
! [リモート拒否] マスター -> マスター (ブランチは、現在チェックアウトされています)
エラー: gitの 'にいくつかの参考文献をプッシュすることができませんでした://gitHost /プロジェクト’

だから、明らかに丁寧に私をカットし、プロジェクトのメインツリーに反乱軍にしようとソフトウェア. 全体的に私は、プロジェクトに関わる人々がはっきりと他の理由を持っているので、余分な枝を実行するつもりはありません. Тука идва момента да отбележа че съм дефинирал много некадърно заглавието но това е друг момент. Като цяло решението на проблема е тривиално в .git/config на проекта ви трябва да добавите следната директива:


[receive]
denyCurrentBranch = false

След това всичко си идва на мястото.

HTTP://www.youtube.com/watch?v=16bRiH5zfOY

Packet Tracer

Image via Wikipedia

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

Attempting to install package now
dpkg: error processing PacketTracer-5.3_3.i386.deb (–設置):
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 права.

Zemantaの強化されたことにより、