タグ

PHPに関するdiveintounlimitのブックマーク (73)

  • 味のりとこんにゃくゼリーのエンジニアブログ: phpを高速化する60の方法

    2012年3月15日木曜日 phpを高速化する60の方法 01. static にできるメソッドは static として宣言しよう。(4倍速い) 02. echo の方が print より速い。 03. echo ‘文’,'字’; (カンマ区切り)の方が、’文’.'字’ (ドット連結)より速い。 04. ループの最大値は、ループ「内」ではなく「前」にセットしておこう。 05. 大きい配列のような変数は unset() してメモリを解放しよう。 06. マジックメソッド(例: __get, __set, __autoload)は使用を避けよう。 07. require_once はハイコストなのです。 08. include や require でファイルはフルパスで指定しよう。 09. スクリプト開始時間は time() でなく $_SERVER['REQUEST_TIME

    diveintounlimit
    diveintounlimit 2012/03/15
    2008年の記事ですって。現状どうなのかしら。
  • 最近 PHP のセットアップ時にいつもやってる設定 | バシャログ。

    レーザー治療までしたのにくしゃみ出まくってるんですけど、いったい何なんですか。どうもこんにちは nakamura です。 PHP-5.3.x 系もだいぶ浸透してきた今日この頃ですが、今日はここ最近新規にウェブサーバを立てる際にいつもデフォルトでやっている PHP 周りの設定をまとめてみました(よくよく考えたら PHP-5.3.x 系とかあんまり関係ないけど)。環境は CentOS 5 or 6 の PHP-5.3.x です。remi リポジトリを使って最新版の PHP を入れてます。 /etc/php/php.ini 毎回さわっているのは大体この辺ですね。他はサイトの仕様にあわせて適宜。 [PHP] expose_php = Off [Date] date.timezone = Asia/Tokyo セッションの保存先を memcached に セッションの保存先はデフォルトで memca

    最近 PHP のセットアップ時にいつもやってる設定 | バシャログ。
    diveintounlimit
    diveintounlimit 2012/03/13
    memcached、APC(PHPアクセラレータ)
  • 文字コードに起因する脆弱性を防ぐ「やや安全な」php.ini設定

    補足 この記事は旧徳丸浩の日記からの転載です(元URL、アーカイブはてなブックマーク1、はてなブックマーク2)。 備忘のため転載いたしますが、この記事は2010年9月27日に公開されたもので、当時の徳丸の考えを示すものを、基的に内容を変更せずにそのまま転載するものです。 補足終わり PHPカンファレンス2010にて「文字コードに起因する脆弱性とその対策」というタイトルで喋らせていただきました。プレゼンテーション資料をPDF形式とslideshare.netで公開しています。 文字コードのセキュリティというと、ややこしいイメージが強くて、スピーカーの前夜祭でも「聴衆の半分は置いてきぼりになるかもね」みたいな話をしていたのですが、意外にも「分かりやすかった」等の好意的な反応をtwitter等でいただき、驚くと共に喜んでいます。土曜にPHPカンファレンスに来られるような方は意識が高いというの

    diveintounlimit
    diveintounlimit 2010/09/29
    タイトル通り「やや安全な」方法。しかしホスティングサービスでどれだけphp.iniを触れるものがあるやら。.htaccessのphp_valueとかini_set()で御せる部分はありそう。
  • WordPress系ブログシステムでEPUB電子書籍が制作できるオープンソース・プラグイン「Anthologize」公開 | HON.jp News Blog

    WordPress系ブログシステムでEPUB電子書籍が制作できるオープンソース・プラグイン「Anthologize」公開 | HON.jp News Blog
  • SVGGraph - a PHP SVG graph library

    SVGGraph 3.20 - a PHP SVG graph library Skip to: Requirements Getting SVGGraph Using SVGGraph Function reference Colours, gradients and patterns SVG in HTML Structured data General settings Bar graphs 3D bar graphs Horizontal bar graphs Line graphs Bar and line graphs Scatter graphs Radar graphs Pie graphs Gantt charts Other graphs Axis and grid options Axis and grid styles Dual Y-axis graphs Date

    diveintounlimit
    diveintounlimit 2010/06/22
    PHPでSVG。VML対応してくれたら最高なのにね。
  • れぶろぐ - [PHP] mb_convert_encoding 関数の ISO-2022-JP と JIS の違い

    ■ mb_convert_encoding 関数の ISO-2022-JP と JIS の違い mb_convert_encoding() 関数でエンコーディングを指定する際、 ISO-2022-JP と JIS では意味が違うというのはご存知でしょうか? PHP のソースコード (mbfilter_jis.c) を見てみると、 それぞれのエンコーディングが対応する文字種は、次のようになっています。 ISO-2022-JP ASCII JIS X 0201 ラテン文字 JIS X 0208 JIS ASCII JIS X 0201 ラテン文字 JIS X 0201 半角カナ JIS X 0208 JIS X 0212 要するに、JIS は半角カナに対応していますが、ISO-2022-JP は対応していません。 そのため、半角カナのメールを扱うという無茶なことをやりたい時には、 ISO-20

    diveintounlimit
    diveintounlimit 2010/06/14
    なるほど、だから「?」に化けたのか。
  • 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年に渡って作業して

    diveintounlimit
    diveintounlimit 2010/02/17
    PHPのアクセラレータ的なもの。ローカルで変換してコンパイルされたコードを取得できるとしたら、動くホスティングサービスは探せそう。ただ、やはりC++であるが故にセキュリティ上の懸念があるんだけど、その辺りは?
  • Hardened-PHP Project - PHP Security - Suhosin

    Suhosin, the Korean word for “Guardian Angel”, was designed to provide hardening security solutions for PHP, a web technology and programming language used by more than 80% of the worlds websites today. Taking a dual pronged approach to security by providing both a patch as well as a PHP extension, with both parts working independently as well as in combination with one another, the Suhosin PHP ha

    diveintounlimit
    diveintounlimit 2010/02/04
    PHP用セキュリティパッチぽいのだけど、windowsからの適用は面倒くさそ。
  • aimy.jp

    This domain may be for sale!

    diveintounlimit
    diveintounlimit 2010/01/11
    軽量・高速・必要最低限のテンプレートエンジン。PHPの実行ファイルに組み込んでコンパイルして使う。基本ホスティング利用だから使えない。。ぐずっ
  • pHAML

    pHAML is a php centric HAML variant used in production. A single class that allows fast integration into the Zend Framework, Smarty, and just about anything else. Simple, fast, effective--with tools to make development and use a breeze.

    diveintounlimit
    diveintounlimit 2009/12/24
    PHPでHAML実装。キャッシュを効かせてるとかも無くて日本語対応は微妙そう。使うならカスタマイズが必要かも。
  • Services_ShortURL_Googl作った - Do You PHP はてブロ

    先日、GoogleGoogleツールバーなどから利用するURL短縮サービス(Google URL Shortener)をリリースしたわけですが、Perl界隈では早速Yappoさんがモジュールを書かれた模様。 http://goo.gl/ ってのが巷では始まっていますが、まだ勝手に tinyurl を作れないようなので 簡単に http://goo.gl/hoge な tinyurl を作る WWW::Shorten::Google ってモジュールを書きました。 http://github.com/yappo/p5-WWW-Shorten-Google CPAN には、各種 tinyurl を使って url を短くするための統一インタフェイスとして WWW::Shorten ってのがあるので、それの流儀にしたがって作りました。 GitHubのソースを見てみると、何じゃこの演算は。。。で、調

    Services_ShortURL_Googl作った - Do You PHP はてブロ
    diveintounlimit
    diveintounlimit 2009/12/20
    goo.glなPHPのPEARライブラリ。5.2系とは、古いサーバーでは使いづらいな。
  • http://www.ecoop.net/memo/2006-06-20-1.html

    http://www.ecoop.net/memo/2006-06-20-1.html
    diveintounlimit
    diveintounlimit 2009/12/10
    変数にnullを代入するとその変数のメモリを開放できる。
  • Mitsukuni Sato on about.me

    Mitsukuni SatoSoftware Engineer and Web Developer in 東京, 日 I am a software engineer and web developer currently living in Tokyo, Japan. My interests range from cycling to Motorbike. I am also interested in programming, outdoors, and web development. You can click the button above to read my blog. If you’d like to get in touch, feel free to say hello through any of the social links below.

    Mitsukuni Sato on about.me
    diveintounlimit
    diveintounlimit 2009/11/27
    PHPのメモリの計算方法とかその辺。
  • mod_xsend_file で画像配信サーバーの負荷軽減 : 管理人@Yoski

    合宿で青い人に mod_xsendfile を教えてもらって「あわせて読みたい」に入れてみたら結構いい感じなのでメモ。 ■mod_xsendfile とは PHPなどのスクリプトから静的なファイル(画像ファイルなど)を送信するときに使う便利な apache モジュール。 ■仕組み header("X-Sendfile: (画像ファイルパス)"); と出力すれば、X SendFile がローカルから画像ファイルを引っ張ってきて、Last-Modified などのヘッダ情報をつけて後の処理をしてくれる。 つまり、スクリプトを使っていながら簡単に静的なファイルを送信しているように見せることができる。 (※セキュリティ設定に関係なく、任意のパスを指定できるところがミソ) ■「あわせて読みたい」では これまで、Location: ヘッダをつかってリダイレクトして画像を表示させていた。 この方式の欠点

  • [CakePHP] 画像のアップロード&リサイズを簡単にできる ImageBehavior | Sun Limited Mt.

    画像のアップロード&リサイズ処理などは割とよくある処理でかつ面倒なものです。その処理を簡単にやってくれる Imageビヘイビアの紹介です。CakeFest で紹介された Media Plugin が高性能なので、メディアプラグインを使うのがいいのかもしれませんが、以前から Image ビヘイビアに関していつか使い方をまとめようと思っていたので紹介します。 参考サイト:ActAs Image column behavior (Articles) | The Bakery, Everything CakePHP Baker で紹介されていた Image ビヘイビアです。このビヘイビアはアップロードされた画像をサムネイル作成、リサイズ、複数のバリエーションのサイズの画像を作成してくれます。またモデルを find すると画像のパスを返してくれます。 作成される画像は、webroot/img/[Mo

  • PHPを使って3分で作る3キャリア対応ケータイサイト | ke-tai.org

    PHPを使って3分で作る3キャリア対応ケータイサイト Tweet 2009/11/17 火曜日 matsui Posted in ソフト紹介, 全キャリア対応 | 28 Comments » 日は3分で3キャリア対応ケータイサイト作れてしまうというPHPスクリプト、「らくらくケータイ3キャリアコンバーター(仮名)」を作成してみましたので、そのご紹介をさせていただきます。 先日のPHP勉強会で発表させていただきました。 ご参加いただいた皆様、当にありがとうございました。 発表資料をアップしてありますので、まずはこちらをご覧ください。 PHPを使って3分で作る3キャリア対応ケータイサイト View more documents from ketaiorg. ということで、「3分で作る」とは謳っているものの、ドコモ用に作られたHTMLを他キャリア用にコンバートするだけの、実に簡素な作りです。

    diveintounlimit
    diveintounlimit 2009/11/19
    3キャリア対応PHPコンバータ
  • 見直されるべきPHP5の組み込みイテレータ - hnwの日記

    PHPには5.0.0以降SPL (Standard PHP Libray)という枠組みが導入されています。これにより、Iteratorインターフェースを実装したクラスのインスタンスであれば、foreach文で配列と同じように取り扱えます。自分でクラスを作るときもIteratorを実装すれば使うのが楽ですし、コードも読みやすくなると思います。 また、PHPに標準で組み込まれているクラスにはIteratorを実装しているものが多数あります。たとえば僕の手元のPHP5.2.9には24個のイテレータがあり、そのうちいくつかは十分に実用的なクラスです。ただ、日語の資料が少ないせいか、かなり知名度は低いように思います。記事では4つの便利な組み込みイテレータを紹介します。 SPLのクラスにはデザインパターンの考えが多く含まれています。特に、イテレータを元にイテレータを作るような使い方は、保守性の高い

    見直されるべきPHP5の組み込みイテレータ - hnwの日記
    diveintounlimit
    diveintounlimit 2009/11/16
    そもSPL (Standard PHP Libray)の存在を知らんかった・・・一通り見ておきたいけど膨大な量だな。
  • OpenPNE3 PHP 標準コーディング規約|OpenPNE

    概要 このドキュメントはコードの書式に関するガイドラインを、 OpenPNE3 に貢献する個人またはチームに示すためのものです。 OpenPNE3 プラットフォームに含まれるコードは必ずこのコーディング規約に従わなければなりません。 OpenPNE3 プラグインに含まれるコードは必ずしもこの規約に従わなくても構いませんが、他の開発者のために準拠しておくことを推奨します。 謝辞 このドキュメントは Zend Framework PHP 標準コーディング規約 と The Doctrine ORM Framework の Coding Standards をベースに、 symfony の Coding Standards の内容を盛り込んだものです。 有用なドキュメントを公開されている各プロジェクトに厚く御礼申し上げます。

    diveintounlimit
    diveintounlimit 2009/11/15
    コーディング規則、コーディングルールとも呼ばれる何か。
  • Flex + LL連携(Ruby、Python、PHP)

    Flexが登場してから、Webの様相は大きく変わりました。稿では、初めてFlexを触ってみる人や、軽量スクリプト言語の経験があるWeb系エンジニアにもわかりやすいように、Flexとサーバサイドの通信方法について説明したいと思います。 はじめに 必要なソフトウェアとファイル Flex Builder 3(Flex 3 SDK) 体験版  購入 サンプルコード Sample_code.zipzip形式、26KB) この記事で使用する言語 Ruby 1.8.4以降 Python 2.3以降 PHP 5.2以降 事前知識 Flex又はFlashの基礎的な知識。上記の(サーバサイドの)言語の何れかの基礎的な知識。 サーバサイド? Flexが登場してから、Webの様相は大きく変わりました。FlexはFlashの表現力を持ちながら、データベースに代表されるサーバサイドのリソースとの融和性に優れ、まだ

    Flex + LL連携(Ruby、Python、PHP)
    diveintounlimit
    diveintounlimit 2009/11/07
    Flex+Ruby,Python,PHPの連携。間にAMF連携用のライブラリを使う
  • http://www.rider-n.sakura.ne.jp/regexp/regexp.php

    diveintounlimit
    diveintounlimit 2009/11/03
    PHP正規表現チェッカ