タグ

phpに関するtkmsaoiのブックマーク (55)

  • モダンPHPチュートリアルを開催しました | Engine Yard Blog JP

    2013/8/24に開催された LLまつり にて「モダンPHPチュートリアル」というタイトルのチュートリアルを担当しました。内容としてはPHPをあまり追いかけていないような方にComposerを中心とした現在よく利用されている開発手法と、PHPのバージョンアップに伴い廃止された機能などを紹介しました。 古くなったプラクティス 古くなったプラクティスとしてはレガシー化したコードによく現れる特徴や、最新のPHPでは利用できなくなった、あるいは今後利用できなくなる項目として下記を挙げています。 ファイルの末尾の ?> 拡張子 .inc のファイル CR+LF (PSRにてPHPの改行コードはLFが推奨されました。) register_globals(廃止済み) safe_mode(廃止済み) magic_quote(廃止済み) @(例外処理を使うべき) var(public private st

  • is_callable で true を返す値と呼び出し方法 - Blog, The

    前の記事の流れで、「どんな値で is_callable が true を返すのか」「is_callable で判定した後 $obj() で呼び出しちゃっていいのか」とか、色々気になったので調べてみた。 PHP: is_callable - Manual 調べてみた結果、注意したいのは、 is_callable($obj) が true だからといって $obj() で呼び出せるとは限らない call_user_func($obj) を使う '<クラス名>::<インスタンスメソッド名>' も true になる 呼び出すと E_STRICT が発生する ってところかな。 以下、調べてみた結果。 PHP 5.3.27, 5.4.17, 5.5.1 で確認しました。 前提 <?php $fn = function() {}; function hoge() {} class Foo { publi

    is_callable で true を返す値と呼び出し方法 - Blog, The
    tkmsaoi
    tkmsaoi 2013/07/28
    引き続き調べてみた
  • PHP で無名関数であることを判定する - Blog, The

    メモ。 is_callable ってのがそれかなって思ったんですが、 PHP: is_callable - Manual これだと関数名の文字列とか array($obj, 'method') みたいな配列も true になるっぽい。 どうやら PHP の無名関数は PHP: 無名関数 - Manual 無名関数の実装には Closure クラスを使っています。 ってことらしいので、確実に無名関数を判定したい場合は、こうすればいいみたい。(継承を懸念したけど Closure は final なので大丈夫っぽい) is_object($obj) && $obj instanceof Closure

    PHP で無名関数であることを判定する - Blog, The
    tkmsaoi
    tkmsaoi 2013/07/27
    調べてみた
  • High Performance PHP Framework - Phalcon Framework

    Its innovative architecture makes Phalcon the fastest PHP framework ever built! Developers do not need to know C to use Phalcon. Its functionality is exposed as PHP classes and interfaces under the Phalcon namespace, ready to be used.

  • PHPを愛する試み 〜self:: parent:: static:: および遅延静的束縛〜 - maeharinの日記

    PHPを愛する試みというものを個人的にやっている PHPを愛する試み PHPを愛する試み 〜調教編〜 今回は、self:: parent:: static:: 遅延静的束縛について図で整理してみた。 スコープ定義演算子 (::) まず「::」について。これはスコープ定義演算子という。マニュアルには以下のようにある。 スコープ定義演算子 (::) スコープ定義演算子 (またの名を Paamayim Nekudotayim)、 平たく言うと「ダブルコロン」は、トークンのひとつです。 static, 定数 およびオーバーライドされたクラスのプロパティやメソッドにアクセスすることができます。これらの要素をクラス定義の外から参照する際には、 クラスの名前を使用してください。PHP 5.3.0 以降では、変数を用いてクラスを参照することも可能です。 変数の値に (self や parent、 stat

    PHPを愛する試み 〜self:: parent:: static:: および遅延静的束縛〜 - maeharinの日記
    tkmsaoi
    tkmsaoi 2013/06/03
  • ImageMagickとPECL::ImagickでアニメーションGIFを合成する

    しばらく勉強会だのイベントレポートだの電子工作だのばかりの記事で、ちっともwebプログラミングのエントリをしていなかった。これじゃいかんという一念発起したの(と、諸事情から必要になったの)で、そっち寄りの内容を書いてみることにした。 …と言っても表題どおり、ImageMagick / PECL::Imagickの使い方がメイン。ドキュメントを読めばわかることから、知らないとハマる落とし穴まで、知ってることは大放出で書くことにする。 テーマImageMagickとPECL::Imagickを使い、PHPでアニメーションGIFの合成を行う。サーバサイドでいわゆる「アバター」の画像を合成する、という使い方を想定している。メジャー3キャリアの3G以降の端末に対応する。環境ソフトウェアのバージョンがちょっと古いのはご容赦願いたい。ImageMagickはバージョンによって結構挙動が変わるので、新バー

    tkmsaoi
    tkmsaoi 2013/04/05
  • Packagist

    Packagist is the main Composer repository. It aggregates public PHP packages installable with Composer. Define Your Dependencies Put a file named composer.json at the root of your project, containing your project dependencies: { "require": { "vendor/package": "1.3.2", "vendor/package2": "1.*", "vendor/package3": "^2.0.3" } } For more information about packages versions usage, see the composer docu

    tkmsaoi
    tkmsaoi 2013/03/16
  • PHP-FIG — PHP Framework Interop Group - PHP-FIG

    Moving PHP forward through collaboration and standards. Welcome to the PHP Framework Interop Group! We're a group of established PHP projects whose goal is to talk about commonalities between our projects and find ways we can work better together.

    PHP-FIG — PHP Framework Interop Group - PHP-FIG
    tkmsaoi
    tkmsaoi 2013/03/16
  • ssh上でマウススクロールも使える大規模PHP開発向けvim+tmux環境の構築 - sifue's blog

    全体で数百万行、1ファイル1万行超のPHPファイルも一秒以内で開き、開発していくことのできる大規模開発向けのvim+tmux環境を紹介しようと思います。この設定この環境で半年ぐらい安定して利用できています。(無論そんな1万行あるファイルや数千行で複雑性循環度500超のメソッド作るなよという話もあるんですが、すでに存在する魔獣とは向き合わなければならないのです...) なので数百万行レベルの大規模開発となると重すぎて使えない設定やプラグインもあります。そのようなものはきちんと外してあります(PHPの関数折りたたみ機能、デフォルトのPHPシンタクスハイライト、neocomplcache.vim、ツリーの構成に時間のかかるproject.vimなど)。 基的にはターミナルエミュレーターとして、macならばiTerm2、windowsならばTeraTermまたはPuttyを利用することを想定して

    ssh上でマウススクロールも使える大規模PHP開発向けvim+tmux環境の構築 - sifue's blog
  • PHP 用の LTSV パーサを車輪の再発明した - Blog, The

    LTSV がアツいらしい。 【今北産業】3分で分かるLTSV業界のまとめ【LTSV】 - naoyaのはてなダイアリー PHP の実装は既にいくつかあるみたいだけど、PEAR で入れれるのが無いっぽいのと、単純にこの流れに乗ってみたかったので、車輪の再発明してみました。 tkmsaoi/Text_LTSV · GitHub PEAR からインストールして、 $ pear channel-discover openpear.org $ pear install openpear/Text_LTSV-1.0.0 以下のように使う。LTSV のパースと生成ができます。 <?php require_once 'Text/LTSV.php'; $assoc = Text_LTSV::parseLine("hoge:foo\tfuga:bar\tpiyo:baz"); echo $assoc['hog

    PHP 用の LTSV パーサを車輪の再発明した - Blog, The
    tkmsaoi
    tkmsaoi 2013/02/09
    何番煎じかわかんないけど作ってみた
  • 由利本荘市エリア|大学生セフレ募集掲示板【近く|ヤリマンと会える騙されない出会い系アプリランキング】大学生セフレ早急募

    由利荘市 大学生 セフレ 由利荘市大学生セフレ社会があるように知り合い校も大人には存在するが、なんとなくか男子校の由利荘市大学生セフレ社会率と女子校の大学生率は一致しない。 最近は出会い系世界、マッチングアプリでも素人の女性がとにかく参入しにくくなった。常にした弾力の肌スケジュールを立てやすいまだ若いから反動になられることがくだらない。 少しくらいはご飯に行ったり、責任ではいい部屋を使ったりくらいして欲しいところです。 由利荘市大学生セフレ大学があるように女子校も世の中には作成するが、そうか男子校の童貞率と女子校の処女率はイメージしない。 見知らぬ友達をセフレ化する関係師は、多くの大学が憧れる存在です。 貞操など奮闘の場でセフレ候補に恋愛を意識させれるのが大切です。 バイトの事が幅広い、貴方でも男に決めてもらいたがるJDはセフレ対象ですね。 ワクワクメールは無料手順をたくさん配っ

  • SWFバイナリ編集のススメ第0回 (解析編) | GREE Engineering

    こんにちは、クライアント基盤チームのよやです。 昨今、Flash Player の自作が流行りのようですが、デバッグやテストに苦労されているとも聞き及んでいます。 丁度タイミング良く、SWFバイナリ編集のススメでサンプルとして引用している IO_SWF パッケージが SWF 解析ツールとして充実してきました。折角ですので、この場で紹介させて下さい。 http://openpear.org/package/IO_SWF http://openpear.org/package/IO_SWF/src/trunk/sample 野良 Flash Player の開発者であれば自前で SWF 解析ツールを用意出来ると思いますが、何かあった時に verify check として利用頂けると幸いです。 IO_SWF のインストール php と pear コマンドが入っていれば3つのコマンドでインストール

    SWFバイナリ編集のススメ第0回 (解析編) | GREE Engineering
  • SWFバイナリ編集のススメ第一回 | GREE Engineering

    こんにちは。メディア開発部のよやと申します。バイナリ編集エンジニアです。 はじめに GREE では携帯向けコンテンツに Flash Lite を利用していますが、Lite には様々な制限(*1)があり、SWF(スウィフ) の動的生成技術を活用しています。 ツール(ming, swfmill, swftools, etc...)を用いた SWF 生成の記事は世間に溢れてますので、SWFバイナリの生編集をテーマに記事を何回かに分けて進めようと思います。 ツールを使う場合でも何かしら問題に遭遇した際の一助になるかもしれません。 第一回の当記事は、SWF仕様書の読み方ガイドです。 SWF仕様 Adobe公式の SWF仕様書は一般公開されています。 英語です。 http://www.adobe.com/devnet/swf/ (swf_file_format_spec_v10.pdf) 理解の助けに

    SWFバイナリ編集のススメ第一回 | GREE Engineering
  • php.js - PHP VM with JavaScript

    This library reads PHP code and transforms it into JavaScript code which can be run in the PHP VM in this library, resulting in same results as with PHP. It starts by tokenizing the PHP code into tokens, which it then uses to build an AST tree. Once the tree has been constructed, the script compiles it into JavaScript that can be interpreted by the VM and then executes it. Any additional unconvert

  • PHP: PHP マニュアル - 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: PHP マニュアル - Manual
  • PHP: Manual Quick Reference

    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: Manual Quick Reference
  • PEAR マニュアル

    2008-10-05 製作著作 © 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 : The PEAR Documentation Group 目次はじめにこのマニュアルについてこのマニュアルの構成著者・訳者についてIPEAR について1 章 はじめに2 章 サポート3 章 標準コーディング規約4 章 PEAR2 コーディング規約5 章 PEAR2 Policies6 章 貢献7 章 FAQ - 頻出する質問8 章 Constitution9 章 PEAR グループの管理文書IIユーザーズガイド10 章 インストール11 章 コマンドラインのインストーラIIIメンテナ入門12 章 はじめに13 章 PEAR に貢献するための方法14 章 PEAR コミュニティーへの参加15 章 公式投稿採択プロセス16 章 メンテナンスされていないパッケージ

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

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

  • PHP Sadness

    These are things in PHP which make me sad. They are real, objective issues which I have personally encountered in my normal day-to-day activites. Nothing on this site should be taken to be the view of my employer or is related to my employer in any way. If you'd like to contact me (in a polite and constructive way), I'm @ericwastl on Twitter. Update 2018-07-08: Updated reflection argument inspecti

    tkmsaoi
    tkmsaoi 2011/09/19
  • Custom Software Development Company - PHPFog.com

    We are a leading agency providing premium solutions in the area of design and development of mobile apps, custom websites and custom software. When getting a mobile app developed with us, unlike many other app development companies we provide a comprehensive service. You can expect a team of specialised strategists, graphic designers and developers to work on your web or app development project. W

    Custom Software Development Company - PHPFog.com