タグ

PHPに関するlets_skepticのブックマーク (49)

  • GitHub - jiska/phpunit-stack at ad852d1b07f02216eda9a94a9217b13376ff5d5c

    lets_skeptic
    lets_skeptic 2011/07/07
    PHPUnitを自動実行
  • PHPで作る面白コラージュ写真

    9月/10月社内Tech勉強会レポート – NodeJS/Privacy Sandbox API/3rdPartyCookie/NodeJS/PromiseAll/cascae/

    PHPで作る面白コラージュ写真
  • This server has been deprecated and will be removed in near feature.

    This server has been deprecated and will be removed in near feature. For further info please contact your system administrator.

  • PHPフレームワークの「codeIgniter」がスゴすぎる | H2O Blog.

    新しいことを勉強して、久々に心底感動しました。 Facebookである方が「もうすぐCodeIgniterカンファレンスが開催される」といったつぶやきをしているのを拝見し、この時初めてその存在を知りました。。 PHPのフレームワークで、習得が早く、動作速度が爆速だということだったので、ちょっと触ってみるかとダウンロードしてドキュメントを読みながら Hello World!を作ってみる。すると・・・ こ・・これはすごい・・ なにがすごいって、これまで私は「CakePHP」を超愛用していました。CakePHPは、もちろんそのほとんどがすごくいいのですが、若干だけ不満があったのです。しかし、codeIgniterではCakePHPの好きなところはそのままに、不満が全部吹っ飛んでいたのです。 では、その全貌をご覧入れましょう。 モデル・ビューが不要 CakePHPもcodeIgniterも、MV

  • 文字コードに起因する脆弱性を防ぐ「やや安全な」php.ini設定

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

  • PHP5.3.0がついにリリース

    $ wget http://jp2.php.net/get/php-5.3.0.tar.gz/from/jp.php.net/mirror $ tar zxvf php-5.3.0.tar.gz $ sudo mv php-5.3.0 /usr/local/lib $ cd /usr/local/lib/php-5.3.0 $ ./configure $ make $ sudo make install Ubuntuにインストールしたのですがconfigureで「configure: error: xml2-config not found. Please check your libxml2 installation.」というエラーが出たので一応対処法も。 $ cd /usr/lib $ sudo ln -s libxml2.so.2 libxml2.so $ sudo aptitude

    PHP5.3.0がついにリリース
  • memcachedのget_multiが使えるようになったPHP拡張「pecl::memcached」:phpspot開発日誌

    memcachedのget_multiが使えるようになったPHP拡張「pecl::memcached」 2009年06月26日- memcachedのget_multiが使えるようになったPHP拡張「pecl::memcached」。 「New Memcached Extension for PHP - techPortal」というエントリにてpecl::memcacheならぬ、pecl::memcached という新しいPHPの拡張が紹介されていました。 調べると、digg.com によって今年1月に公開されているみたいでしたが、知りませんでしたので、知らない人もいるかと思い、ご紹介。 pecl にて検索すると2件ヒットしますが、memcached が新しい方。 pecl::memcache拡張の方では、使えなかった、複数キーを指定してパラメータを取得できる、get_multi の AP

  • 巨大なSJISのCSVファイルをfgetcsv関数で処理する - hnwの日記

    さて、前回記事「PHPでメモリ上に一時ファイルを作る」では、file_get_contents関数でCSVファイル全体を取得して文字エンコーディングの変換を行い、変換結果に対してfgetcsv関数を利用しました。しかし、CSVファイルが巨大な場合にはfile_get_contentsを使うとメモリ上限に引っかかってPHPが停止してしまいます。 もちろん、UTF-8CSVファイルに対してfgetcsvを利用するのであれば、どんな大きなCSVファイルだろうと処理することが可能です。なぜなら、fgetcsvはファイルを1行単位で読み込む関数ですから、1行分のメモリ消費だけでファイル全体を読み込み続けられるからです(正確にはストリーム上のデータはバッファリングされるので、バッファサイズ分のメモリは消費しますが)。 それでは、巨大なSJISのCSVファイルをfgetcsvで処理したい場合はどうすれ

    巨大なSJISのCSVファイルをfgetcsv関数で処理する - hnwの日記
  • PHPでメモリ上に一時ファイルを作る - hnwの日記

    blog.plastik.jp » PHP5 の fgetcsv() で読み込み内容が腐る現象」という記事を読みました。fgetcsv()だとSJISのCSVファイルがうまく読めないので、UTF-8に直してテンポラリファイルに保存してfgetcsvで読み込む、という筋書きのようです。 ちゃんとtmpfile()を使っていたりしてナイスなコードだと思います。でも、すぐ不要になるデータをディスクに書き込むのはイマイチじゃないでしょうか。ここはメモリに書いた方がカッコいいと思うんです。僕なら下記のようにします。 <?php $data = file_get_contents("example.csv"); $data = mb_convert_encoding($data, "UTF-8", "Shift_JIS"); $fp = fopen('php://memory', 'r+'); fw

    PHPでメモリ上に一時ファイルを作る - hnwの日記
  • 121. IPアドレスから所在地探し

    IPアドレスから所在地を調べたいと思ったことはありませんか?今回は,IPアドレスからその場所がどこなのかPHPで調べる方法をご紹介します。 それには,GeoIPライブラリが必要になります。PHPからこのライブラリの機能を使うには, PEARのNet_GeoIPをインストール Peclの拡張モジュールをインストール Apacheのモジュールとしてインストール という3種類の方法があります。 今回はPeclの拡張モジュールを使います。対象はLinux系OSになります。 1.GeoIPライブラリををインストール MaxMind社のホームページから,GeoIPライブラリをダウンロードし,インストールします。 cd /usr/local/src wget http://www.maxmind.com/download/geoip/api/c/GeoIP.tar.gz tar xzvf GeoIP.t

    121. IPアドレスから所在地探し
  • APIとの通信効率をよくする実装例(1) curl_multi

    こんにちは。ライフスタイル事業部のアリタと申します。 Yahoo!のサービスも裏側ではWebAPIが多用されています。1つのページを構成するのに5、6個のAPIを使うこともざらですが、それではさすがにパフォーマンスが問題となってきます。その原因と対策例を紹介していきましょう。 ■モデルケース 例として、3つのAPIから取得したデータをマッシュアップしたページがあるとします。(ここではサンプルコードを簡単にするため、APIの代わりに以下のRSSで説明としました) Yahoo!トピックス エンターテインメントRSS http://dailynews.yahoo.co.jp/fc/entertainment/rss.xml Yahoo!ミュージックマガジン最新情報RSS http://magazine.music.yahoo.co.jp/rss/ALL/rss.xml Yahoo!検索トレンドR

    APIとの通信効率をよくする実装例(1) curl_multi
  • PHPでマルチバイト対応のtrim関数を作る - hnwの日記

    (2009/06/29)追記4:記事のmb_trim関数が動かない環境があったので、詳細を「PCREはUnicode文字プロパティをサポートするとは限らない」にまとめました。よりポータブルなmb_trim関数も紹介していますので、併せてご覧ください。 追記:「mb_ereg_match('^[\0[:space:]]+$', $str);」で、今回pregで作った正規表現'/^[\s\0\x0b\p{Zs}\p{Zl}\p{Zp}]+$/u'と同一になりました。mb_regex_encoding関数が使える分だけmb_ereg版の方が使い勝手も上です。ちょっとショック。 (2009/02/24 17:00)追記2:もっと簡潔に、「mb_ereg_match('^[\0\s]+$', $str);」でいいことがわかりました。POSIX正規表現風の表記がキモいな、と思っていたので、これは素晴

    PHPでマルチバイト対応のtrim関数を作る - hnwの日記
  • コマンドラインの引数解析を簡単に! : アシアルブログ

    皆さんはPHPでコマンドラインスクリプトを作成するとき、引数の解析はどうされてますか? 引数が単純であればargvをそのまま使うだけで十分ですが、オプションが多かったりすると結構面倒ですよね。 たまたまPHPプロ!Weekly PEAR リリース @ 08/08/05号でConsole_CommandLineという引数を解析するライブラリを見つけて使ってみたところ、なかなか便利だったのでご紹介したいと思います。 ちなみに、オプションの解析には、PHP標準のgetopt関数を使えば多少楽はできるのですが、 getopt.php

    コマンドラインの引数解析を簡単に! : アシアルブログ
  • PHP GDプログラミング:Geekなぺーじ

    ここでは、PHP用グラフィックライブラリGDを使ってスクリプトを書く方法を説明したいと思います。 GDを使ったCMSを作ると、画像をサーバにアップロードして自動的にサムネイルを作ったり出来ます。 また、GDを使うと任意の絵を作成できるので、例えばAJAXと組み合わせて色々作ると楽しいかも知れません。 その他、色々と使いどころはありそうです。 基 GDの使い方 GDライブラリの設定情報を確認する 四角く塗りつぶす 画像の読み込み PNGの出力 JPEGの出力 画像の拡大と縮小 画像の回転 TrueType Fontを使った文字列出力 TrueType Fontを使った文字列出力(傾きあり) TrueType Fontで文字列を記述した場合の大きさを測る TrueColor画像(1) TrueColor画像(2) 画像上に文字列を表示 画像上にロゴをオーバーレイ 画像フィルタ 明度 カラーバ

  • PHPでWordのdocファイルやPDFをテキストとして読み取る方法:phpspot開発日誌

    Read PDF and Word DOC Files Using PHP PHPでWordのdocファイルやPDFをテキストとして読み取る方法が紹介されていました。 XPDF package、Antiword というプログラムをshell_execで外部起動するだけなのですが、WordやPDF用の検索のインデックスを作成する時など、なかなかこれは便利そうです。 PDFの場合は、XPDFパッケージをインストールして入るコマンドのpdftotext にファイル名を渡します。最後の - も必要みたい。 $content = shell_exec('/usr/local/bin/pdftotext '.$filename.' -'); //dash at the end to output content これで $content にpdfのテキストが入る Wordの場合も同様に、Antiwor

  • 必見!たった2ファイルからはじまる凄いWebサイト構築·Zimplit MOONGIFT

    正直に言えば、相当なめてかかっていた。ダウンロードして解凍してできたファイルはたったの二つ。これで何ができるのかという思いだった。アップロードして、ファイルにアクセスする。出てきたのはユーザ情報設定画面のみ。そしてログインをする。 利用可能なテンプレート 次に表示されるのはWebサイトのテンプレートが列挙された画面だ。たった二つのファイルでこのような情報が、と思わせる内容だ。そしてテンプレートを選んだ所から凄い衝撃が襲いかかった。 今回紹介するオープンソース・ソフトウェアはZimplit、見たまま編集するWebサイト構築ツールだ。ライセンスはAGPLだが、商用向けには有償でライセンス提供している。 ZimplitはテンプレートになるデザインをどこかのWebサーバからダウンロードして展開する(恐らくZimplitの公式サイトから)。そしてユーザが見るであろう画面の上にウィンドウを表示して、そ

    必見!たった2ファイルからはじまる凄いWebサイト構築·Zimplit MOONGIFT
  • ギャングオブフォー

    final class MyClass { private static final MyClass instance = new MyClass(); private MyClass(){}; public static MyClass getInstance(){ return instance; } public void hogehoge(){ System.out.println("hogehogeメソッド"); } } class Test{ public static void main(String aa[]){ MyClass m = MyClass.getInstance(); m.hogehoge(); } } javaの場合定数の初期化は一度しか行われないのが保障されているので必ず一度しかインスタンス化はおこなわれないです。 しかしコンストラクターが呼び出せてしまう

    ギャングオブフォー
  • PHP開発者が便利に使える10のスニペット集:phpspot開発日誌

    The html blog | 10 code snippets for PHP developers I've compiled a small list of some useful code snippets which might help you when writing your PHP scripts PHP開発者が便利に使える10のスニペット集が紹介されていました。 メールアドレスチェック簡単化 php-email-address-validation クラスを使ったメールアドレスチェック http://code.google.com/p/php-email-address-validation/ include('EmailAddressValidator.php'); $validator = new EmailAddressValidator; if ($valida

  • pChart | a PHP Charting library

    pChart 2.x is born, you can start moving your script to this new version. The new website is at www.pchart.net. pChart is a PHP class oriented framework designed to create aliased charts. Most of todays chart libraries have a cost, our project is intended to be free. Data can be retrieved from SQL queries, CSV files, or manually provided. This project is still under development and new features or

  • PHP/脆弱性リスト/メモ - yohgaki's wiki

    なんだかやけに長い説明ばかり検索に引っかかったので書きました。 Linuxのローカル環境でDockerコンテナ内のXアプリ(GUIアプリ)を利用するには $ xhost localhost + を実行した後に $ docker run --rm --net host -e "DISPLAY" container_image_name x_app_binary_path とすれば良いです。 もっと読む SSHなどよく知られたサービスポートで何も対策せずにいると数えきらないくらいの攻撃リクエストが来ます。不必要なログを増やしてリソースを無駄にし、もし不用意なユーザーやシステムがあると攻撃に成功する場合もあります。 SshguardはC作られており、flex/bisonのパーサールールを足せば拡張できますがカスタム版をメンテナンスするのも面倒です。必要なルールを足してプルリクエストを送ってもマー

    PHP/脆弱性リスト/メモ - yohgaki's wiki