takafumi blog

日々の勉強メモ

php

【PHP】 正規表現のエスケープ

php

環境 CentOS 7.0 PHP 7.0.1 phpで正規表現(preg系)のエスケープシーケンスの書き方について調べた。 以下のような正規表現がある。 $text = 'abc/def'; preg_match('/abc\\/def/', $text); # (a) preg_match('/abc\/def/', $text); # (b) さて(a)と(b)、どっ…

【PHP】 PHPBrewでPHP7をインストール

環境 CentOS 7.0 phpbrew 1.20.5 PHP 7.0.1 PHPBrewを使って、PHP7を試してみる。 事前準備 PHPBrewを使うには、php-cliの5.3以上が必要になる。 $ sudo yum install -y php-cli そして、他に必要になるモジュールを追加。 Apacheと連携するので、httpdも追…

PHPで日付フォーマットのチェック。

php

環境 CentOS 7.0 PHP 5.6 以外とよく聞かれる、日付形式「yyyy-mm-dd hh:ii:ss」が正しいかチェックする方法。

正規表現の名前付きグループ

環境 CentOS 7.0 Perl 5.16 PHP 5.6 Java 1.8.0nbsp;scala 2.11.6 恥ずかしながら、正規表現のグループに名前を付けれる事を今まで知らなかった。 ・・・という事で幾つかの言語の書き方を調べてみた。 結果は全部 abc, 123, def abc, 123, def で上が、通常…

php ReflectionClass::invoke()で参照渡しの関数を使う

php

環境 CentOS 7.0 PHP 5.6 久しぶりにphpでハマっていたのでメモ。 phpunitでテストを書くときに、privateやprotectedをテストするときに、ReflectionMethodクラスを使う。 このときに実行する関数の引数が、参照渡しになっているときにエラーがでてハマった…

phpDocumentorをインストールして使ってみる

環境 CentOS 7.0 PHP 5.6 phpDocumentor 2.8.2簡単にphpDocumentorを使ってみた。 phpDocumentorComposerを使ってインストールもできるが、もっと簡単にpharを使う。pharをダウンロード $ cd /path/to/bin $ wget http://phpdoc.org/phpDocumentor.phar . $ …

PHP5.3~5.6の新機能を確認

php

環境 PHP 5.3 PHP 5.4 PHP 5.5 PHP 5.6 PHP5.3~5.6の新機能をざっと確認。【PHP5.3~】名前空間 【PHP5.3~】遅延静的束縛 【PHP5.3~】goto文 【PHP5.3~】【PHP5.4~】クロージャ(無名関数) 【PHP5.3~】class外でのconst定義 【PHP5.6~】定数式 【PHP5.3~】三…

ソースインストールしたPHPをapacheで使えるようにする。

環境 CentOS 7.0 apache2.4.6 PHP 5.6PHPのソースインストールは以下の通り。CentOS7にPHP5.6をソースからインストール - takafumi blogapacheで使えるようにするには、httpd.confに AddType application/x-httpd-php .phpLoadModule php5_module /usr/lib64…

PHPUnitでprotected、privateのテスト

php

環境 PHP5.2 PHP5.3.2PHPUnitでprotectedやprivateのメソッドをテストする方法についてまとめる。php5.3.2以降ならReflectionを使うことができるので、意外と簡単にできる。 PHP: リフレクション - Manual問題はそれ以前のバージョン。 普通の手法では対応で…

PHPのpthreadsでマルチスレッド

環境 CentOS 7.0 PHP 5.6pthreadsを使ってみます。 PHP: pthreads - Manual PHPを--enable-maintainer-ztsつきでインストールする必要ある。 CentOS7にPHP5.6をソースからインストール - takafumi blogさてpthreadsをインストール $ pecl install pthread $ …

CentOS7.0にyumでPHP5.6をインストール

環境 CentOS 7.0 PHP 5.6ソースインストールに比べると、グッと簡単。 CentOS7にPHP5.6をソースからインストール - takafumi blogepelとremiのリポジトリを登録しておく。 # epel # CeontOS7は標準リポジトリにepelリポジトリがある。 $ yum install epel-re…

CentOS7にPHP5.6をソースからインストール

環境 CentOS 7.0 PHP 5.6ちょっとpthreadsを使ってみたかったので、phpをソースからインストールする。php最新版インストール 2015/03/10では5.6 $ yum install libxml2 libxml2-devel $ wget "http://jp1.php.net/get/php-5.6.6.tar.bz2/from/this/mirror" …

hhvm Hack その4/CakePHPを動かしてみる①

環境 CentOS6.5 hhvm3.2.0 CakePHP 2.5.4hhvm 上でcakephpを動かしてみます。以下を参照しています。 hphpとかは今は hhvm -hphp になってます。 Running CakePHP using the Facebook's HipHop compiler :: The Bakery: Everything CakePHP CakePHPの設定 ま…

hhvm Hack その2/とりあえず動かしてみる

CentOS6.5 hhvm3.2.0 hhvmを動かしてみるちなみにhhvmのオプションはこんな感じ $ hhvm --help Usage: hhvm [-m <mode>] [<options>] [<arg1>] [<arg2>] ... Options: --help display this message --version display version number --php emulate the standard php command line --com</arg2></arg1></options></mode>…

PHP5.6インストール

CentOS6.5 完全新規のCentOS6.5に入れる手順。remiリポジトリを使用。 remiリポジトリの追加 - takafumi-sのブログ古いバージョンあるときは先に $ rpm -qa | grep php で確認して、 $ yum remove php-* しておく。 インストール とりあえず使いそうな物をざ…