タグ

*ProgrammingとPHPに関するescape_artistのブックマーク (37)

  • 画像自体をBase64エンコードしてHTML内に埋め込んで高速化するPHPコード例:phpspot開発日誌

    Base64 Encoding for Images. 画像自体をBase64エンコードしてHTML内に埋め込んで高速化するPHPコード例。 Googleがインスタントプレビューや画像検索で導入してその読み込み速度に驚いた方も多いかもしれません。 その手法をPHPで実現するコードが掲載されていましたのでご紹介。 PHPでやるにはそんなに難しいわけではなさそう。 <?php $img_src = "image/sample.png";  // 画像ファイルの指定 $imgbinary = fread(fopen($img_src, "r"), filesize($img_src)); // バイナリデータを読み込み $img_str = base64_encode($imgbinary); // base64エンコード echo '<img src="data:image/png;base6

    escape_artist
    escape_artist 2010/11/29
    ブラウザキャッシュとコネクション数とどっちを取るか。使いどころは考えねばなるまい
  • Zend Frameworkチュートリアル – Getting Started with Zend Framework | WEB RHODIA

    このチュートリアルは www.akrabat.com の Rob Allen氏による “Getting Started with Zend Framework”このチュートリアルは www.akrabat.com の Rob Allen氏による “Getting Started with Zend Framework” を翻訳したものです。もし、誤りなどがあれば、この投稿のコメント欄に記入をお願いします。 Document Revision:1.6.3 翻訳リビジョン:1.0.0 翻訳・コピーライト: cassiopeia 目次 Zend Framework チュートリアル その1 - 要件,チュートリアルの条件,フレームワークの取得,Zend_Tool Zend Framework チュートリアル その2 - アプリケーションの作成開始 Zend Framework チュートリアル

  • PHPをC++に変換して高速化する「HipHop for PHP」をFacebookが公開 : candycane development blog

    アメリカ時間の昼ごろにTwitter上が一つのニュースで埋め尽くされました。 PHPC++に変換して高速化する技術をFacebookが公開したというものです。世界中のPHPハッカーが注目する興味深いリリースという事でちょっと長いですが、リリースノートの和訳を行いました。 原文 http://developers.facebook.com/news.php?blog=1&story=358 Facebookにおいて重要なことのひとつが動作の速さです。過去6年間にわたって、PHPが提供する高速な開発ペースによって多くを成し遂げてきました。プログラミング言語としてみると、PHPはシンプルです。簡単に習得し、簡単に書き、簡単に読み、簡単にデバッグする事ができます。我々は他の言語よりも早くエンジニアを獲得し、それによってより早いイノベーションをすることができます。 今日、私は2年に渡って作業して

  • PHPで失敗するかもしれない処理の返り値を配列で表現すると都合がいいという話 - id:anatooのブログ

    値を返すのに失敗するかもしれない処理を扱う場面というのは多い。 例えばあるファイルの中身を取得する処理について考えると、ファイルが存在する場合はその中身を取得して返すことができるが、そうでない場合は中身を取得するのに当然失敗する。 PHPに予め用意されているfile_get_contentsはまさにそれだが、この関数は処理に失敗するとfalseを返す。 ここでは別にもう一つ似た関数を作ってみる。 <?php function my_file_get_contents($path) { $buf = file_get_contents($path); return $buf === false ? array() : array($buf); } このmy_file_get_contents関数は、ファイルの中身を成功した場合は結果を持った配列を返し、そうでなければ空の配列を返す。 これから

    PHPで失敗するかもしれない処理の返り値を配列で表現すると都合がいいという話 - id:anatooのブログ
    escape_artist
    escape_artist 2010/02/01
    考えたことも無かった。面白い発想
  • PHP基礎文法最速マスター

    PerlRubyの文法一覧がとても良くまとまっていたので、便乗してPHPでもやってみました。 Perl基礎文法最速マスター – Perl入門〜サンプルコードによるPerl入門〜 Route 477 – Ruby基礎文法最速マスター 他の言語をある程度知っている人はこれを読めばPHPの文法を何となく理解できると思います。 間違い、不足等々あれば教えて下さいm(_ _)m バージョン PHP5.3系がリリースされていますが、ここではPHP5.2系を対象としています。 1.基礎 コードブロック PHPコードは「<?php」という開始タグから始まります。終了タグは「?>」です。HTMLPHPコードを埋める際は終了タグを使いますが、ライブラリのようにPHPコードのみを記述する際は終了タグを省くことが慣例となっています。 終了タグを省く理由について id:Kiske さんに解説頂いています。ありが

    escape_artist
    escape_artist 2010/01/28
    一行コメントで終了タグはコメントアウトできないよ!「// ?>が無い」だと「が無い」が表示されてしまう//* ?> */なら可。/あとintval()使うよりは(int)もしくは(integer)で型キャストした方が速い。好みの問題ではあるけど
  • PHP: highlight_file - Manual

    Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su

    PHP: highlight_file - Manual
    escape_artist
    escape_artist 2010/01/21
    試してみたらマジでハイライトされた。面白いなー
  • 株式会社 社会式株 PHPコーディング規約

    escape_artist
    escape_artist 2009/12/05
    久しぶりに読んだ「オブジェクト指向禁止」
  • PHPで$a{N}表現

    PHP_CodeSnifferのソースを見てたときに気づいたのですが、PHPで$a{N}という表現ができることを初めて知りました。 < ?php $a = "abc"; echo $a{0} . "\n"; echo $a{1} . "\n"; echo $a{2} . "\n"; ?> $ php -f test.php a b c substr($a, N, 1)と同じですね。(マニュアル見たら載ってました。。。) ちなみに日語はばっちり化けます。 < ?php $a = "あいう"; echo $a{0} . "\n"; echo $a{1} . "\n"; echo $a{2} . "\n"; ?> $ php -f test.php 、 「 、

    escape_artist
    escape_artist 2009/11/19
    うおおお、知らなかった。。。恥ずかしい
  • ワンライナーのためのPHPコマンドラインオプション - hnwの日記

    ワンライナー(1行スクリプト)の代名詞と言えばPerlでしょう*1。Perlにはワンライナー向けのコマンドラインオプションが多数用意されています。中でも-neオプションや-peオプションは強力で、入力行ごとの処理をループを使わずに簡潔に記述できます。Perlのワンライナー向けコマンドラインオプションの一部はRubyにも輸入されており、Rubyプログラマもワンライナーを書くことが多いように見えます。 それに比べるとPHPはワンライナーが書きにくい印象があるのではないでしょうか。僕もそう思っていましたが、実はPHP5.0.0からワンライナー向けのコマンドラインオプションが追加されています。それが今回紹介する-R、-F、-B、-Eです。 -Rオプション、-Fオプション -Rというのは、標準入力を1行ごとに順に処理するオプションです。例を見てみましょう。 $ ls bin/php-* bin/ph

    ワンライナーのためのPHPコマンドラインオプション - hnwの日記
  • 業務用iOSアプリのfeedtailor社長ブログ

    前回の投稿で超久しぶりに新作アプリを作っているという話を書きました。 (TestFlightを使って開発中アプリを関係者に配信している。バージョンを重ねて総ビルド数は100近く) カテゴリ的にはブラウザで、B2Bも一応意識したB2Cなアプリです。ブラウザやアプリ全般に色々思うところがあって、あーでもないこーでもないと作り続けていたら、ブラウザらしくないブラウザになってきた…ってのは前の投稿で書いた通りです。 まだまだ時間がかかりそうなので(POである僕のせいです😓)、何で作ろうと思ったのかを発信してみることにしました。ソフトウェアは動くもので語るべし…という考え方もあるのですけどね。開発中の画面キャプチャを入れながら、作るきっかけとなっていることを不定期に「考察」として投稿していきます。 今回はその初回で Screen Ownership について。余り聞きなれない言葉ですが…っていうか

  • なぜPHPのautoload()が早いのか | Apelog

    __autoload()が早いというよりも、class_exists()に比べてrequre_once()、include_once()が遅いからというもの(クラスの読み込み判定の場合)。 通常__autoload()内でクラスの有無を調べて無ければ読み込みを行う。一度しか呼ばれないものならその場で読み込んだほうが早いが、複数回読み込み判定がおこなわれるものがある場合(Superクラスなど)一度autoload経由でclass_exists()の篩いにかけた方が良い。 PHP5のフレームワークではほとんどautoload系の読み込み実装がなされている事からも、その差は結構大きいので不特定回数読み込まれるファイルが多数ある場合は注意。 以下の動作環境で最も単純なクラス( class Sample{} )を1000回読み込んでインスタンス生成した場合、class_exists()で見つからなけ

    escape_artist
    escape_artist 2009/08/19
    常にrequire_onceしてた。。。class_existsも検討してみます。
  • PHP で引数をそのまま返す関数を作っておくと便利 - IT戦記

    PHP では以下のように new してすぐメソッドを呼べない <?php new DateTime()->getOffset(); なので、引数をそのまま返す関数を作ってやると <?php function expr($a) { return $a; } expr(new DateTime())->getOffset(); // OK! 便利だなー おまけ 配列アクセス用のも作っておくと便利 <?php function expr($a) { return $a; } function idx($array, $i) { return $array[$i]; } echo idx(idx(expr(new DateTimeZone('Asia/Tokyo'))->getTransitions(), 0), 'abbr') . "\n"; おまけ2 無名関数をそのまま呼ぶときにも使える。 <

    PHP で引数をそのまま返す関数を作っておくと便利 - IT戦記
    escape_artist
    escape_artist 2009/08/04
    メソッドチェーンしたいときはいいかも。
  • PHP: 配列演算子 - Manual

    <?php $a = array("a" => "apple", "b" => "banana"); $b = array("a" => "pear", "b" => "strawberry", "c" => "cherry"); $c = $a + $b; // Union of $a and $b echo "Union of \$a and \$b: \n"; var_dump($c); $c = $b + $a; // Union of $b and $a echo "Union of \$b and \$a: \n"; var_dump($c); $a += $b; // Union of $a += $b is $a and $b echo "Union of \$a += \$b: \n"; var_dump($a); ?> Union of $a and $b: array

    PHP: 配列演算子 - Manual
    escape_artist
    escape_artist 2009/07/14
    配列Unionの高度な例
  • [php]「PHPで配列の(プラス)演算子」の解説 | うえちょこ@ぼろぐ

    PHPで配列の(プラス)演算子:phpspot開発日誌 http://phpspot.org/blog/archives/2007/10/post_162.html 何かと話題になったphpspotさんですが、今日の記事は配列でもプラス演算子でマージができると言う話でした。参照元のITProの記事にも書いてありますが、array_merge()関数による配列のマージと、+演算子による配列のマージは結果が異なることがあります。これを知らないと不可解なバグに悩まされるので注意が必要です。また、array_merge_recursive()関数でのマージ結果も違います。ここらへんはプログラマ泣かせな感じですが、しっかりと違いを把握しておきたいですね。 ということで、検証用にページを作りました。 各種配列マージの結果の違いと考察 – うえちょこ@ぼろぐ 分室 http://labs.uechoco

    [php]「PHPで配列の(プラス)演算子」の解説 | うえちょこ@ぼろぐ
    escape_artist
    escape_artist 2009/07/14
    再帰的に配列を継承したければ、自分で関数を定義するしかなさそうね
  • Runtime error - PHP Commons

    Error message : Directory is not found or not writable (DATA_DIR) Directory is not found or not writable (DIFF_DIR) Directory is not found or not writable (BACKUP_DIR) Directory is not found or not writable (CACHE_DIR) Site admin: whitestar Copyright © 2007-2023 whitestar. All Rights Reserved. Icons powered by famfamfam. PukiWiki 1.5.0 Copyright © 2001-2006 PukiWiki Developers Team. License is GPL

  • JavaScript var_dump (Mark 2) [javascript] [variable] [debug] [var_dump]

    Never been to DZone Snippets before? Snippets is a public source code repository. Easily build up your personal collection of code snippets, categorize them with tags / keywords, and share them with the world Same as var_dump for PHP, but for JavaScript. Useful if you do not have Firebug. A typical useage: document.write(var_dump(ANY-JS-VAR,'html')); 1 2 function var_dump(data,addwhitespace,safe

  • PHPer向けJavaScript入門

    操作方法 → キー: 次のページへ ← キー: 前のページへ ↑ キー: 目次ページへ ↓ キー: 目次ページから戻る 目次ページでは ← → キーで一覧を移動し、クリックで選択します

  • [PHP] 配列の+(プラス)演算子は便利 / LiosK-free Blog

    2008-06-24 カテゴリ: Server Side タグ: PHP トラックバック 久しぶりにPHPの話題。 確かにPHPの配列の加算演算子はとても醜い仕様だと思う。 問. 配列を+(プラス)演算子で加算すると? : アシアルブログ <?php $fruit1 = array('apple', 'banana', 'cherry'); $fruit2 = array('kiwi', 'lemon', 'melon'); $fruit = $fruit1 + $fruit2; ?> $fruitの値は次のA~Cのどれになるでしょうか? A. array('apple', 'banana', 'cherry') B. array('apple', 'banana', 'cherry', 'kiwi', 'lemon', 'melon') C. array('kiwi', 'lemon',

    escape_artist
    escape_artist 2009/02/19
    何じゃこりゃって感じ
  • http://www.ryo.com/2007/08/11/342/

    escape_artist
    escape_artist 2009/02/06
    デフォで投げてくれればいいのに。
  • テンプレートエンジンを作ってみる - CODE NAME: TUNE34

    Webアプリケーション開発において、HTMLデザイン部分とプログラム部分を分離できるテンプレートエンジン(方式)の導入は、生産性向上の面においても重要なものに挙げられます。 PHPのテンプレートエンジンには、ざっと調べただけでも拡張性が高いものや、PHP Extensionとして動作するものなど、様々な特色を持ったプロダクトがありますし(下記リスト)、MVCフレームワークではビュー部分がページのテンプレートとなっていますので、何らかのテンプレートエンジン(方式)は多くの方が利用されているものと思います。(ベタにファイル一つにデザインとロジックを埋め込む事ができるのがPHPの特徴という向きはあるかとは思いますが。) PHP Template Engine | Smarty HTML_Template_Flexy http://phptal.motion-twin.com/ http://qw

    テンプレートエンジンを作ってみる - CODE NAME: TUNE34