タグ

phpとPHPに関するngyukiのブックマーク (328)

  • PHPカンファレンス福岡が開催!? #fukuokaphp

    まぁ、きっかけは単なる独り言だったと思うんです。 直後のツイートから分かる通り、ホントにふとした発言。 しかし、「釣り針がデカすぎた」といったところでしょうか。 この後の展開なんてまだ知る由もない訳です。

    PHPカンファレンス福岡が開催!? #fukuokaphp
    ngyuki
    ngyuki 2014/09/05
  • PHPカンファレンス2014で聞きたい話|sasezaki

    PHPカンファレンス 2014の講演募集が行われています。 私自身は、PHPには詳しくなくてもPHPの開発に関しての領域に一過言ある方ならば、講演という場を通じて発表していただければなぁと思っています。しかしながら、何が需要があるかどうか分からなく躊躇ってる方もいるのではと思っています。そこで、私が聞きたいトピックについて、最近のPHP界隈での動向も交え、挙げてみたいと思います。 ** SSLSSLの概要 or 最近のPHPでのSSL周りでのbug fixについての解説 理由 OpenSSL周りについては、Daniel Lowrey氏の尽力もありここ一年でもっともインパクトのある改善の一つです。 ref. ・PHP 5.6.x における OpenSSL 関連の変更 ・History for ext/openssl - php/php-src ・PHP: rfc:tls-peer-verif

    PHPカンファレンス2014で聞きたい話|sasezaki
    ngyuki
    ngyuki 2014/09/04
  • PHPUnit 並列実行に挑戦中 - jwata blog

    仕事PHPUnitを使うようになって1年くらいが経ち、チーム内にテスト書く文化が定着してきました。 テストの質と量が向上して、有効性も高まってきていい感じだなーと思う反面 「時間かかり過ぎ 」 という、面倒くさい問題が浮上してきました><。 現状のテスト実行ログ % ./vendor/bin/phpunit PHPUnit 3.7.28 by Sebastian Bergmann. ............................................................... 63 / 612 ( 10%) ............................................................... 126 / 612 ( 20%) .............................................

    PHPUnit 並列実行に挑戦中 - jwata blog
  • PHP 5.6.0で増えたopcodeについて調べてみる - Qiita

    PHPのZend VMのopcodeの定義はZend/zend_vm_opcodes.hにあり、このファイルのバージョン間の差分を見れば増えたopcodeがわかります。PHP 5.6.0で増えたopcodeは下記の4つです。 ZEND_RECV_VARIADIC ZEND_SEND_UNPACK ZEND_POW ZEND_ASSIGN_POW これらがPHPのどんな言語構造に対応するものか、PHP 5.6.0でvldを使って調べてみました。ただし、vldに自前で5.6対応パッチを当てる必要があるので注意してください。そのうち家にパッチを送っておきます。 ZEND_RECV_VARIADIC 「...」を使った可変長引数の定義に対応します。たとえば次のようなコードで使われます。 <?php function f(...$list) { foreach ($list as $elem) {

    PHP 5.6.0で増えたopcodeについて調べてみる - Qiita
    ngyuki
    ngyuki 2014/09/03
  • Windows環境のPHPで日本語ファイルパスを扱う場合の注意点 - k-holyのPHPとか諸々メモ

    まず手元の Windows7 + PHP 5.6.0 で検証した上での結論を書くと 「Windows で日語ファイルパスを扱う場合 SplFileInfo は使うな」 です。 ロケール設定を適切に行うことで basename() や pathinfo() に関しては、Shift_JISのコード表に起因するいわゆる「5C問題」も回避できました。 しかし、SplFileInfo::getBasename() や SplFileInfo::isFile() に関しては、適切にロケールを設定したとしても、残念ながら「5C問題」を回避できなかったのです。 ロケール設定の影響を受ける関数について 文字列関数は基的にマルチバイト非対応のものが多いのですが、中には対応はしているがロケール設定に依存する、というものもあります。というか結構多いです。 ファイルパスを扱う際によく使われる basename(

    Windows環境のPHPで日本語ファイルパスを扱う場合の注意点 - k-holyのPHPとか諸々メモ
    ngyuki
    ngyuki 2014/09/03
    バグっぽい
  • PhpStormでVagrant仮想マシンのPHPUnitをSSH経由で実行する

    この間正式にリリースされた PhpStorm8。個人的に心待ちにしていた リモートマシンの PHPUnit を SSH 経由で実行する機能(Remote PHP interpreters) が追加されたので、早速試してみました。 ホスト PCPhpStorm から Vagrant 仮想マシンの PHPUnit を実行するには、以前このブログで紹介した 「PHPUnit on Server」 という機能を使えばできますが、テストの実行が HTTP 経由のため制約が多く、設定も複雑で、アプリケーションによっては動作させるのが難しいこともありました。 新しく追加された SSH 経由の PHPUnit 実行は SSH でつながれば OK なので、様々なプロジェクトで利用できそうです。Vagrant のsynced_folder を使ってホスト PC で開発を行っている方や、Windows

    PhpStormでVagrant仮想マシンのPHPUnitをSSH経由で実行する
    ngyuki
    ngyuki 2014/09/02
    これは期待
  • PHPカンファレンスでの"フレームワークアップデート"についてのメール|sasezaki

    以下は、2013年8月にPHPカンファレンスの実行委員の方向けに送ったメールの転載です。 ** メールありがとうございます。させざきです。 ここ数年思ってますが、 フレームワークアップデートはツールの品評会の場のようなものに なっているので個人的にはプログラム自体なくなって欲しいと思っています。 フレームワークなりライブラリが解決しようとしてる問題 を主題に置くべきだと思います(去年ので言うと後藤さんのDIとか)。 去年までの発表スタイルだと煽りに煽って結局聴衆には実際にはなにも ”学び”がないと思います。 各フレームワークでどのような問題を解決しようとしたかをフォーカスできる形式であれば考えます。 ZF関連で言うと ・エスケープに関して(Zend\Escaperがなぜあるかと、似たようなライブラリPhalcon\Escaperなど) ・数年に渡るプロジェクトとそのコミュニティ体制における

    PHPカンファレンスでの"フレームワークアップデート"についてのメール|sasezaki
    ngyuki
    ngyuki 2014/08/31
  • POH Lite 天才火消しエンジニア霧島 0.01秒の解答 - Qiita

    3.33秒 / 0.01秒 https://paiza.jp/poh/kirishima 締切りになったので0.01秒の解答を公開。 枝刈り?深さ優先探索? 何のことだかさっぱりわかりませんねえ。 とりあえずPHPで最短0.01秒を取ったソースです。 <?php // 1行目 $ninzuu = trim(fgets(STDIN)); // 事前テスト if($ninzuu === '60'){ print("6600\n");die(); } // テスト1 if($ninzuu === '10'){ print("1038\n");die(); } // テスト2 if($ninzuu === '1'){ print("1\n");die(); } // テスト3 if($ninzuu === '2000'){ print("5000000\n");die(); } // テスト4 i

    POH Lite 天才火消しエンジニア霧島 0.01秒の解答 - Qiita
    ngyuki
    ngyuki 2014/08/28
  • PHP開発でCIするならScrutinizer使ってみよう - Qiita

    Scrutinizerが凄い!! ScrutinizerというサービスがPHPの静的解析出来て凄いというスライドを読んで試しに使ってみたら思いの外すごかった。 公式サイトURL https://scrutinizer-ci.com/ スライドの記事 http://www.slideshare.net/hinakano/scrutinizer-ciphp オープンソースのリポジトリ(publicリポジトリ?)なら無料で利用出来るようです。 静的解析が優秀! Scrutinizerでは初期設定の段階で、php-sim、pdepend、php-analyzerツールが有効になっています。 これらツールの他に設定で、 PHP Code Sniffer PHP Change Tracking Analyzer PHP CS Fixer PHP Mess Detector Security Advis

    PHP開発でCIするならScrutinizer使ってみよう - Qiita
    ngyuki
    ngyuki 2014/08/26
  • PHP 5.6リリースは8月28日 - 最後の準備リリース公開

    PHPデベロップメントチームは、「PHP: Hypertext Preprocessor - PHP 5.6.0RC4 is available」において、次期メジャーアップグレードリリースとなるPHP 5.6.0へ向けた最後の準備リリース版「PHP 5.6.0RC4」を公開したと発表した。今回のリリースではバグ修正のみが実施されている。すべてのPHPユーザへバージョンのテストとバグ報告の実施が呼びかけられている。 ダウンロードや新機能の解説ドキュメントなどは次のページにまとまっている。 ソースコードダウンロード PHP: Quality Assurance Windowsバイナリダウンロード PHP For Windows: Binaries and sources QA Releases 新機能解説ドキュメント PHP: New features - Manual PHP 5.6.0

    ngyuki
    ngyuki 2014/08/19
  • PHP: phpng-upgrading

    Many of the frequently used API functions have changed, such as the HashTable API; this page intends to document as many as possible of those changes that actually affect the way extension and core code is written. It's highly recommended to read the general information about PHPNG implementation at phpng-int, before reading this guide. This is not a complete guide that covers every possible situa

    ngyuki
    ngyuki 2014/08/14
  • よりよいPHPを作る — パート1:HHVMとHack [和訳] - Engine Yard Blog

    記事は英語版ブログで公開された記事の翻訳版です。 Facebookは2014年3月20日、HHVM用のプログラミング言語「Hack」をリリースしました。この記事ではHHVMとは何かを紹介しつつ、Hackについて詳しく見ていこうと思います。 Facebookは(おそらく)世界最大級のPHPインスタレーションですが、近年はPHP5を離れ独自開発によるソリューションに向かっています。 ここまできても、まだPHP環境と呼べるのでしょうか?答えは「もちろん」と「とんでもない」の中間ぐらいといえます。 HHVM(HipHop Virtual Machine)の簡単な歴史 Facebookは初めに「HPHPc」というPHPからC++へのコンパイラを作りました。 これはFacebookの膨大なコードベースをC++コードに変換し、そこからコンパイルするというものでした――このプロセスには時間が(何時間も)

    よりよいPHPを作る — パート1:HHVMとHack [和訳] - Engine Yard Blog
  • 没有找到站点

    您的请求在Web服务器中没有找到对应的站点! 可能原因: 您没有将此域名或IP绑定到对应站点! 配置文件未生效! 如何解决: 检查是否已经绑定到对应站点,若确认已绑定,请尝试重载Web服务; 检查端口是否正确; 若您使用了CDN产品,请尝试清除CDN缓存; 普通网站访客,请联系网站管理员;

    ngyuki
    ngyuki 2014/08/12
  • PHP 5.4.4から==の挙動が一段と難しくなりました - hnwの日記

    PHPの==は両辺を適当に型キャストしてから比較するような演算子です。この型キャストの規則は難解すぎる上にドキュメントも不十分なため、PHPプログラマでも完璧に理解している人はほとんど居ないくらいの印象です。バグの原因になりかねないため、なるべく==を使わないようにしているPHPプログラマも多いはずです。 ところで、この==演算子の挙動がPHP 5.4.4から変更されていることはあまり知られていません。稿ではこの内容を紹介します。 Bug #54547 の騒動 まずはこの仕様変更の経緯を紹介します。 2年ほど昔、Hacker Newsで2^63付近の整数に対応する文字列をPHPで比較したときの挙動がおかしいというスレッドが盛り上がったことがありました。具体的には、PHPでは「'9223372036854775807' == '9223372036854775808'」がtrueになるとい

    PHP 5.4.4から==の挙動が一段と難しくなりました - hnwの日記
    ngyuki
    ngyuki 2014/08/10
  • PHP 製デプロイツール「Rocketeer」を使ってみた | 株式会社メイプルシステムズ

    こんにちは。西山です。 毎日続く炎天と夕方に来襲する豪雨で夏らしさが一気に全開になりましたね。 今回はデプロイツール「Rocketeer」についてご紹介したいと思います。 これは GitHub上で公開されているオープンソースソフトウェア (OSS) です。リポジトリは https://github.com/Anahkiasen/rocketeer にあります。ライセンスは MIT です。 デプロイツールというと、以前の現場で Capistrano を使っていたのですが、これは Ruby 製ですね。 Rocketeer は Capistrano に似た構成を持つ PHP 製のソフトウェアです。普段、PHP の案件に関わることが多いのですが、デプロイツールも同じ PHP で書かれていたほうが安心感(?)がありますよね。 また、Composer や PHPUnit の実行にもデフォルトで対応

    PHP 製デプロイツール「Rocketeer」を使ってみた | 株式会社メイプルシステムズ
  • Announcing a specification for PHP

    Joel Marcey Announcing a specification for PHP Posted July 30, 2014 The PHP language has been around for over 20 years and is clearly one of the most popular programming languages in the world. PHP is definitely the lingua-franca of the internet for server-side web programming. While there is extensive user-documentation, the PHP language has always been missing a language specification. That is n

    Announcing a specification for PHP
    ngyuki
    ngyuki 2014/07/31
  • 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

    ngyuki
    ngyuki 2014/07/30
    zf2 のモジュールを検索
  • http://zend-form-generator.123easywebsites.com/

    ngyuki
    ngyuki 2014/07/30
    ZF2 のフォームのコードのジェネレータ
  • Toran Proxy

    Built to work with Composer Toran is built by Jordi Boggiano, lead developer of Composer. As such he can make sure they work well together. No surprises. Reliable and fast Composer deployments Toran acts as a proxy for Packagist, GitHub and other repositories. It is meant to be set up on your own server or even inside your office. This offers a few benefits: Redundant infrastructure to ensure your

  • @mtdowling

    A Case for Higher Level PHP Streams in PSR-7 July 03, 2014 Tweet There’s been a lot of talk lately about the PSR HTTP message proposal, PSR-7. The purpose of the proposal is to create a shared interface that can be used by projects to interact with HTTP messages for both clients and servers. When I created the proposal, I envisioned the purpose is not to say projects that utilize HTTP messages nee

    ngyuki
    ngyuki 2014/07/15
    body が StreamInterface をインプリしたオブジェクトであるメリットっぽいこと