タグ

phpに関するarrow0626のブックマーク (46)

  • 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の日記
  • PHPのsort関数は相当おかしい - hnwの日記

    追記(2009/02/28 15:35):ソートする配列の要素が数値または数値形式の文字列のみの場合は、<、==、>が推移律を満たすので、この記事のような矛盾は起こりません。念のため。 オヤジギャグがこらえられなくなったら立派なオヤジだと思います。それはさておき、今日はPHPのsort関数が不思議な挙動をする例を紹介します。 sort関数の紹介 sort ― 配列をソートする 説明 bool sort ( array &$array [, int $sort_flags= SORT_REGULAR ] ) この関数は配列をソートします。この関数が正常に終了すると、 各要素は低位から高位へ並べ替えられます。 PHP: sort - Manual マニュアルをみる限り普通のソート関数です。省略可能な2番目の引数の意味は次の通りです。 sort_flags オプションの 2 番目のパラメータ s

    PHPのsort関数は相当おかしい - hnwの日記
  • ブラウザで正規表現のチェックなどができるサイトまとめ | IDEA*IDEA

    ドットインストール代表のライフハックブログ

    ブラウザで正規表現のチェックなどができるサイトまとめ | IDEA*IDEA
  • 三項演算子の正しい書き方

    C・C++JavaPerl などのプログラミング言語では、条件演算子として三項演算子?:が用意されている。条件演算子の書き方として、以下のような説明がされることが多い。 condition ? true-expression : false-expression この説明は、以下のプログラムと同じ程度、間違っている。 #include <stdio.h> main( ){printf ("hel" "lo, world\n" );} 条件演算子は、正しくは以下のように書く。 condition ? true-expression : false-expression 使い方の例を示す。 compare = obj1 == null ? obj2 == null ? 0 : -1 : obj2 == null ? 1 : obj1.toString().compareTo(obj2.to

  • [J] JavaScript のコーディング規約 (コーディングスタイル) - Jamz (Tech)

    今回は JavaScript のコーディング規約の情報収集をしたかったのだが、別の言語のものもいくつか見つかったのでメモしておく。 Java Script Coding Standard JavaScript style guide - MDC (Mozilla) フレームワーク / ライブラリ系の開発者向けガイド UI Developer Guide - jQuery JavaScript Library (シンプル) Dojo Style Guide | The Dojo Toolkit (Java を参考に) StyleGuide - MochiKit - Trac (Python の PEP8, PEP7 を参考に)[翻訳]MochiKit - スタイルガイド ライブラリ系の規約について、それぞれ解説しているページがあった。 JavaScriptのコーディングスタイル -- ありえ

  • Ruby で UTF-8 の文字化け部分を取り除く - てっく煮ブログ

    rubyRSS を拾ってきてパースしようとしたら、不正な文字列が入っていて REXML が ParseException を投げてしまった。文字コードが UTF-8 前提だったので、UTF-8 として valid な文字のみが含まれるように置換して対処した。 str = str.scan(/([\x00-\x7f]|[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3})/).join Ruby じゃなくても同じようなコードで対処できそう。関連:UTF-8 の正規表現は 404 Blog Not Found:UTF-8 vs. ISO-10646 から拝借したPHP なら $xmlStr = mb_convert_encoding($xmlStr, "UTF-8", "UTF-8"); でいけるら

  • PHPでのセキュリティ対策についてのメモ - Liner Note

  • Xdebug: Documentation - Settings

    一般設定 xdebug.auto_trace [boolean] (初期値: Off) on に設定すると、スクリプトが実行される前に、関数コールのトレースが有効になります。 auto_prepend_file でコードをトレース可能にします。 xdebug.collect_includes [boolean] (初期値: On) (Xdebug 2) この設定は、Xdebug がトレースファイルに include(), include_once(), require(), require_once()で使用されるファイル名を 書き出すかどうかを制御します。 xdebug.collect_params [boolean] (初期値: Off) この設定は、Xdebug が関数トレースあるいはスタックトレースで関数コールが 記録される際に、関数に渡されたパラメータを収集するかどうかを制御し

  • 眠るシーラカンスと水底のプログラマー(旧):テストケース作成最初の一歩 - livedoor Blog(ブログ)

    前回の「cakePHP:テスト駆動開発をするには?」は、cakePHP内でテスト駆動開発を行うためのTest Suiteを動作させる環境構築で終わったので今回は、 さわりだけテストケースを記述して、レッド→グリーンの流れを紹介します。 search_dir_file_name.test.php というテストケースを記述するファイルの中身は <?php ?> だけだったので、当たり前にテスト失敗(レッド)が表示されていました。 今回はコードを修正して、 require_once 'controllers/components/search_dir_file_name.php'; class SearcDirFileNameTest extends UnitTestCase { var $Obj; function setUp() { $this->Obj = new SearcDirFile

  • Overview and feature list for the SimpleTest PHP unit tester and web tester

    このページは PHP用のSimpleTestツールの 要約 現在のものと計画されている 特徴のリスト, ウェブ上にはたくさんの ユニットテストリソース があります SimpleTest とは? SimpleTestの中心は、テストケースクラスで構成されるテスティングフレームワークです。 これらは、基テストケースクラスの継承クラスとして書かれ、各々は実際にテストコードを 含むメソッドで拡張されています。 最上位のテストスクリプトは、このテストケースを一つずつ順番に run() を起動します。 各テストメソッドは、様々なアサーションを起動するように記述されていて、 開発者は、例えば assertEqual() であれば、trueである ことを期待します。 期待した値がが正しい場合、成功した結果は監視しているテストリポーターに送られます。 しかし、どんな失敗も警告や間違いの記述を引き起こします

  • はてなブログ | 無料ブログを作成しよう

    来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…

    はてなブログ | 無料ブログを作成しよう
  • PHP コード最適化 Best Practices 63+ - カタコト日記

    みたいなタイトルの記事を Digg 経由で発見。チートシート代わりにと思い超訳。*1 A Software Architect PHP 最適化 ベストプラクティス! 01. static にできるメソッドは static として宣言しよう。(4倍速い) 02. echo の方が print より速い。 03. echo '文','字'; (カンマ区切り)の方が、'文'.'字' (ドット連結)より速い。 04. ループの最大値は、ループ「内」ではなく「前」にセットしておこう。 05. 大きい配列のような変数は unset() してメモリを解放しよう。 06. マジックメソッド(例: __get, __set, __autoload)は使用を避けよう。 07. require_once はハイコストなのです。 08. include や require でファイルはフルパスで指定しよう。 09

    PHP コード最適化 Best Practices 63+ - カタコト日記
  • サクラエディタで PHP ファイルを編集するための設定まとめ - miau's blog?

    サクラエディタで PHP を使うときに、ちゃんと設定ができてなくて効率が悪い人をよく見かけます。 PHPにおすすめのエディタ(個人的に) : アシアルブログ あたりで紹介されているように、結構いろいろな機能があるのに。 上記のページについて「機能を知るにはいいけど、設定方法が載ってないのが残念だなー」と思ってたんですけど、Vista 機にサクラエディタをインストールする機会があったので、設定方法をまとめてみました。 (2008-03-27 追記) 元々のタイトルは「サクラエディタ+PHP 設定方法まとめ」だったんですが、サクラエディタと PHP を連携する(PHP のマクロ登録したりする)方法と紛らわしいので変更しました。 PHP のマクロ登録はまだ成功していないんですが、うまくいったらどこかでまた報告します。 ■事前準備1 サクラエディタを使いこなすためには、サクラエディタ体以外のファ

  • PHP-users.jp - 日本のPHPユーザのためのハブサイト

    まずは連載記事で PHP を理解しよう! [Think IT] 一気に覚えるPHP! まずは PHP の基礎を概念から学びます。関連する連載記事も豊富なので一気に読み込んでしまいましょう。 PHPプログラミングの基礎を学ぼう(1/2) - @IT Apache + MySQL + PHP でウェブサービス開発の勘所を学びます。 PHPのコミュニティ ポータルサイト「PHPプロ!」 PHPに関する最新ニュース、開発に使えるちょっとした Tips などを公開。Q&A掲示板も充実しています。 もっと便利に PHP を使うには? 【一気に覚えるPHP!】使えるスクリプト! PHPのライブラリーであるPEARや、フレームワークが紹介されています。 連載:CakePHPで高速Webアプリ開発|gihyo.jp … 技術評論社 CakePHP というフレームワークを使った爆速サイト開発の手法いろいろ。

  • PHP Unit Test documentation

    Unit test cases The core system is a regression testing framework built around test cases. A sample test case looks like this... class FileTestCase extends UnitTestCase { } Actual tests are added as methods in the test case whose names by default start with the string "test" and when the test case is invoked all such methods are run in the order that PHP introspection finds them. As many test meth

  • さくらでpearインストール覚書

    PHPで使えるpearというものがある。これは、簡単に言うとPHPで使えるライブラリである。 pearについての詳細は、PEAR マニュアルオンラインドキュメント(日語)を読んでほしい。ここでは、さくらインターネットのレンタルサーバに、pearをインストールし、さらに追加モジュールをインストールする手順のみに絞って覚書してみたい。 ■なぜpearをインストールする必要があるの? 実は、さくらインターネットには、すでにpearがインストールされている。しかし、バージョンが古すぎて使えないものになってしまっているのだ。例えば、XML_Parserというモジュールを使おうとして、 pear install XML_Parser を実行すると、「PEARをバージョンアップしろ」と出てくる。バージョンアップしようとすると、「バージョンアップできない」と出てくる。訳のわからない警告がごちゃごちゃ出て

  • PhpUnit - 最強のユニットテスト自動化ツール - Do You PHP?

    zip形式 tgz形式 gihyo.jpにPHPUnit3で始めるユニットテストというタイトルで記事を書きました。PHP5をお使いの方は、そちらを参照してください。 ここにある情報はかなり古くなっており、正しくなくなっている可能性があります。掲載しているサンプルコードiなどは、最新のPHPでは動作しない、もしくは、別途設定・調整が必要になるかも知れません。情報を鵜呑みにせず、あなたの手を動かして、あなたの目で確認してください。 PhpUnitは一時期PEARに登録されていましたが、現在は別プロジェクトとして活動しています。新しいURLはhttp://phpunit.de/です。 テスト。。。ああ、なんてイヤな響きでしょう。。。(^-^; 「テストすること」はプログラムの品質を保証するということで非常に重要な作業だ、ということは百も承知と思いますが、コーディングと比べてやはり「イヤ」なもの

  • アイビースター » PHP 標準コーディング規約

    PHPでプログラムを作っていくと 「変数名はどうしよう?」 などと、たいしたことではないのに凄く悩むときがあります。:sad: PearとZend Frameworkには標準コーティング規約というものがあります。プログラムを書く上でのルール決めです。いずれも内容的には一致しているところも多く大変勉強になります。 ただ、かなり細かく書いてあるので全てを網羅するには結構大変です。下記にそれぞれのコーティング規約を1つにまとめてみました。 ファイル 一行の長さは80文字以内とする。最高でも120文字いないとする 改行はラインフィールド( LF )を使用する ファイル名は英数字、アンダーバー( _ )、ダッシュ( - )以外は使用しない インデット インデントはタブを使用しないで半角空白4文字とする 制御構造 if, for, while, switch等で制御キーワード(if等)と括弧の

  • PEAR 標準コーディング規約

    注意 PEAR 標準コーディング規約は、 PEAR の公式ディストリビューションに含まれるコードに適用されます。 コーディング規約 (Coding standards) は、開発者たちの間ではよく CS と略されます。この規約の狙いは、コードの一貫性を保つことと PEAR の開発者たちがコードを保守しやすくすることにあります。 インデント 空白 4 つのインデントを使用します。タブは使いません。 これにより、diff や patch、CVS history や annotations の際に問題が発生するのを避けることができます。 Emacs を使用する場合、indent-tabs-mode を nil に設定する必要があります。 Emacs を設定するモードフックの例を次に示します (PHP ファイルを編集する際に これがコールされるようにする必要があります)。 (defun php-

  • IDEA * IDEA

    ドットインストール代表のライフハックブログ

    IDEA * IDEA