表題のママなのですが、SPF設定はしているし何だろう、とあれこれ調べてみました。結局、単純に怪しいメールだったから迷惑メールに振り分けられていた、ということでした...。迷惑メールフォルダーがデフォルトで表示されていないので、てっきり届いていな…
例外をどのような状況に投げるかもしくは投げないか、というのはわりと意見が分かれるところです。もちろん、プログラミング言語によっても異なりますが、同じプログラミング言語ユーザ同士でも様々です。 基本の考え方 ベースとしては、Effective Java の項目 39 にある下記の方針が参考になります。 例外的な状況の時にのみ例外を使う。 Effective Java 禅問答のような定義ですが、これには異論は無いでしょう。例外を正常フローで利用したり、制御構造に用いるべきではありません。 人によって異なるのは「例外的な状況」の解釈です。 例外的な状況 この「例外的な状況」の解釈は人によって異なるようで、これまでも議論になっていました。これまで聞いた解釈を乱暴に分けると以下の 2 パターンに分かれます。 1. アプリケーションから独自の例外を投げる派 ランタイムやミドルウェア連携などプラットフォ
PHPStorm 7からVagrant Support機能が追加されて、PHPStormからvagrant sshを実行できるようになっています。 この機能を利用すればターミナルからvagrantコマンドを打たなくてもGUIから操作することができます。 #実行環境 ■ホストマシン Macbook Pro 15インチ Mac OS X 10.10 Yosemite PHPStorm 10 VirtualBox 5.0.14 r105127 Vagrant 1.7.4 + Landrush + vagrant-vbguest Ruby 2.0.0p481 (2014-05-08 revision 45883) ■ゲストマシン CentOS 7.1 64bit GuestAdditions 5.0.14 ※ Vagrant Support機能を利用するには vagrant設定が整っていることが前
Laravel や Google App Engine for PHP での開発を想定したコンテナイメージを作成しました。 MySQL や memcached は別コンテナにする予定なので、今回は Apache + PHP のみになります。 Dockerfile # # Apache + PHP # # 2015-06-22 # CentOS 6.6 + epel,remi,rpmforge # Apache 2.2.15 # PHP 5.5.26 FROM centos:6 MAINTAINER takaya030 # update yum RUN yum update -y && \ yum clean all # epel repo RUN yum install -y http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-releas
各クラスの基本的な使い方 DateTimeZoneクラス タイムゾーンを定義するクラスです。このクラスは再度外部から能動的に__construct()をコールしない限りはイミュータブルが保証されます。 インスタンスの生成 サポートされるタイムゾーンのリストにある名称または+0900のような時差を表す文字列を第1引数としてコンストラクタに与えます。
PHPの挙動を調べていると、マニュアルにも、ChangeLogにも載っていない変更にしばしば遭遇します。たとえば、PCRE系関数(preg_xxxx)の正規表現指定(第1引数)において、過去のPHPではNULLバイトを許容していましたが、最近のPHPでは、正規表現中のNULLバイトをエラーにしています。この変更は、マニュアルには載っておらず、ChangeLogには記載されているもののNULLバイトとは書いていないので、ちょっと気がつきにくいですね。 Fixed bug #55856 (preg_replace should fail on trailing garbage) このような場合、ソースコードの該当箇所を調べるか、適当にあたりをつけたバージョンのPHPをビルドして試すなどの手法がとられているかと思いますが、@hnwさんが phpall を発表されたことで、この種の調査が一挙に楽に
Prophecyとは phpspec/prophecy PHPUnitと組み合わせて使えるモックライブラリ。 元はphpspecの一部として開発されたもので、phpspecと組み合わせなくても単独で使うことができる。 PHPUnit 4.5からパッケージに同梱されるようになった。PHPUnitの新しいバージョンを使っていれば、composer.jsonに加えなくても使うことができる。 テストダブルとは ユニットテストを書くときに、テスト対象の依存の代替として使うオブジェクトをテストダブルと言う。目的はいくつかある。 依存オブジェクトの準備を手抜きする。100行の準備をしないとテストが書けないとしたらユニットテストが読みにくくなってしまう。 実行しづらいメソッドを差し替える。外部へ通信してしまうもの、I/Oが発生するもの、すごーくたまにしか失敗しないものなどを強制的に変更したいとき。 メソッ
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
Docker公式のPHPイメージとMySQLイメージを使って通信させる方法を紹介します。(あくまで入門用です。) MySQLイメージ https://hub.docker.com/_/mysql/ PHPイメージ https://hub.docker.com/_/php/ docker-toolboxを使ってDocker実行環境を構築する OSXでDockerを使うには、docker toolbooxというものを使います。 Docker Toolboxの説明は割愛します。 (かつてデファクトスタンダートだったboot2dockerは2015年8月より非推奨扱いのようです) MySQLイメージの使い方 MySQLイメージを取得する
なるほど、先ほどのエラーはrootのパスワードを設定するか、空のパスワードでもいいのか、ランダムパスワードでいいのかを指定してくれ、というものだったようです。 # docker run --name app-db -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE=app mysql:latest ということで環境変数を設定してコンテナを起動します。環境変数の設定は-eオプションです。 ついでにDB作成用の環境変数も設定してみました。 Error response from daemon: Conflict. The name "app-db" is already in use by container bd44a80999fb. You have to delete (or rename) that container to be able to
祝 PhpStorm 2016.3 リリース 2016/11/24、な感じのネタです。 PhpStorm 2016.3 is now released! | PhpStorm Blog 先日、株式会社ロックオン 様の社内勉強会に招待されて、PhpStorm のワザをいろいろ共有してきました。EC-CUBE3のソースを開いてインスペクションかけては「あ、ここ型検査効いてませんね...」「依存はmixed型で取ってくるんじゃなくて型を持ったフィールドに注入しないと...」とかひどいことやりました申し訳。 そのとき簡単な PHP のプログラムを通しで作るデモを雑に作っていったんですが、これ実はいい出来なんじゃないかということで、ちゃんと仕上げて公開したいなと思い... というわけで、約40分の PhpStorm 初心者向け (PHP 初心者とは言っていない) ライブコーディングですどうぞ。 Ph
この記事は1年以上前の記事のため、内容が古い可能性があります。 LDAPサーバがようやくできたので、PHPで接続してみました。 以下プログラム例です。 ※「設定」の部分はLDAPサーバの設定に合わせる必要があります。 <?php //設定 $ldap_host = "localhost"; //LDAPサーバのホスト $ldap_port = 389; //ポート $ldap_dc = "dc=ldap-server,dc=com"; $ldap_cn = "Dari"; //cn $ldap_ou = "Unit"; //ou $ldap_pass = "password"; // パスワード //接続開始 $ldap_DN = "cn=".$ldap_cn.",ou=".$ldap_ou.",".$ldap_dc; $ldap_conn = ldap_connect($ldap_hos
OS標準のPHPだとoci8のパッケージが無いので、個別に入れなければならない。 ちと、面倒〜〜 oracle-instantclient12.1-basic-12.1.0.2.0-1.x86_64.rpm oracle-instantclient12.1-devel-12.1.0.2.0-1.x86_64.rpm のインストール後、 # pecl install oci8-2.0.11 # vi /etc/php.d/oci8.ini --- ; Enable oci8 extension module extension=oci8.so --- を書き込んで、 # systemctl restart httpd # php -m | grep oci oci8 # php -i | grep oci8 /etc/php.d/oci8.ini, oci8 oci8.connection_
環境 CentOS6.3 64bit PHP5.3.3 前提 ApacheとPHP(PDOとかも)がインストールされている yum -y install php-develでphpizeを使えるようにしておく いれるもの Instant Client11.2 oci8 pdo_oci 準備 Instant Clientの設置 ファイルの取得 Oracleのサイトから下記zipを落としてくる。 instantclient-basic-linux.x64-11.2.0.3.0.zip instantclient-sdk-linux.x64-11.2.0.3.0.zip CentOS内の適当なディレクトリに配置する(/tmpとか)。 解凍、設置 上記zipを設置したディレクトリに移動して解凍。 unzip instantclient-basic-linux.x64-11.2.0.3.0.zip
PHPからOracleを使うのもMySQL使うのも大差ないだろなんて思っていた時代もありました・・・(´Д`;)ヾ はまりまくったのでまとめます 1.Oracle InstantClientの導入 PHPにphp-oci8を入れたいだけなのにまずはrpmを入れることが必要になります Instant Clientのダウンロード Instant Clientのダウンロードからインストール先の環境にあったファイルを取得します CentOS6 64bitにはInstant Client Downloads for Linux x86-64ですね 必要なファイル oracle-instantclient11.2-basic-11.2.0.3.0-1.x86_64.rpm oracle-instantclient11.2-sqlplus-11.2.0.3.0-1.x86_64.rpm ←SQLPlus
ごあいさつ はじめまして。アライドアーキテクツの石川と申します。 2月に入社してから早くも3ヶ月がたとうとしています。 私は前の職場ではほとんどjavaで開発していたのですが、 アライドに入社してからは主にPHPで開発をしています。 私の回では、その時その時に関心のある技術情報を発信していければ、と思っています。 皆様どうぞよろしくお願いいたします。 今の自分の課題はとにかくUnitテストを書くことなので、 今回はPHPのモッキングフレームワークである「Mockery」について書きたいと思います。 Mockeryって? padraic / mockery こちらで御座います。 static methodのモック化が出来たり、テスト対象のメソッド内部で生成されるインスタンスをモック化したり、 PHPUnitでやろうとすると一手間かかることをサクっと出来てしまいます。 Let’s インストール
2. 徳丸浩の自己紹介 • 経歴 – 1985年 京セラ株式会社入社 – 1995年 京セラコミュニケーションシステム株式会社(KCCS)に出向・転籍 – 2008年 KCCS退職、HASHコンサルティング株式会社設立 • 経験したこと – 京セラ入社当時はCAD、計算幾何学、数値シミュレーションなどを担当 – その後、企業向けパッケージソフトの企画・開発・事業化を担当 – 1999年から、携帯電話向けインフラ、プラットフォームの企画・開発を担当 Webアプリケーションのセキュリティ問題に直面、研究、社内展開、寄稿などを開始 – 2004年にKCCS社内ベンチャーとしてWebアプリケーションセキュリティ事業を立ち上げ • 現在 – HASHコンサルティング株式会社 代表 http://www.hash-c.co.jp/ – 独立行政法人情報処理推進機構 非常勤研究員 http://www.
UUID の Version の見分け方 さきほどのPHPのプログラムは、パラメータにUUID_TYPE_RANDOMを渡しているので、バージョン4と思われます。 uuid_createのソースコードを覗いてみる ちょっと遊びの領域に突入しますが、uuid_createのソースコードを覗いてみます。一部を抜粋します。 /* {{{ proto string uuid_create([int uuid_type]) Generate a new UUID */ PHP_FUNCTION(uuid_create) { // ...(略)... do { uuid_t uuid; char uuid_str[37]; switch(uuid_type) { // ...(略)... case UUID_TYPE_DCE_RANDOM: uuid_generate_random(uuid); br
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く