タグ

ブックマーク / blog.asial.co.jp (36)

  • PHP5.6.0alphaリリース!新機能を試す

    こんにちは、久保田です。PHP5.6.0alpha1が1月23日付けでリリースされました。 この記事では5.6に搭載される以下の新機能や変更を紹介します。 phpdbgデバッガ 可変長引数のための文法の追加 定数定義での計算のサポート その他NEWSファイルに記述されている変更 PHP5.6.0をビルドして試してみる PHP5.6の新機能を紹介する前に、まずはMacOSXやLinux環境にPHP5.6をビルドして試す方法を紹介します。Windows環境の場合にはビルド済みのバイナリが用意されているのでそれをダウンロードして下さい。 まず5.6.0alpha1リリースの記事にあるリンクから、PHP5.6.0alpha1のパッケージをダウンロードして解凍します。次に解凍したパッケージのディレクトリに進んでconfigureスクリプトを叩きます。

    PHP5.6.0alphaリリース!新機能を試す
    youhey
    youhey 2014/02/04
  • PHPで仮想マシンベースの正規表現エンジンを作ってみる 第二回

    こんにちは、久保田です。 PHPで仮想マシンベースの正規表現エンジンを作ってみる 第二回です。 前回の第一回では、PHPで作成する正規表現の仕様の紹介や正規表現のパーサの実装を行いました。今回の記事では、正規表現を実行する仮想マシンをPHPで実装します。 正規表現を実行する仮想マシン まず、実装する仮想マシンの仕様について解説します。Regular Expression Matching: the Virtual Machine Approachでは仮想マシンについては以下のように記述しています。 To start, we'll define a regular expression virtual machine (think Java VM). The VM executes one or more threads, each running a regular expression 

    PHPで仮想マシンベースの正規表現エンジンを作ってみる 第二回
    youhey
    youhey 2013/10/11
  • PHPからChromeにログ出力「Chrome Logger」

    こんにちは、中川です。 PHPでの開発中のちょっとしたデバッグに、echo や var_dumpで画面に値を出力して確認することがありますよね。 このデバッグ方法は簡単でいいのですが、出力した配列の値などはパッと見で確認しやすいとは言えませんし、画面の表示内容が崩れたりします。 画面に出力しない方法としては、 error_log関数を使ってapacheログやファイルに出力する方法もありますが、 この場合は、サーバ側にログインしてtailなどでファイル内容を確認する必要がでてきます。 そんなちょっとした問題を解決してくれるツール 「Chrome Logger」をご紹介したいと思います。 Chrome Loggerを使えば、JavaScriptのconsole.logのように、 表示画面には影響を与えないでブラウザのデベロッパコンソールにPHPから値を出力できます。 ■Chrome Logge

    PHPからChromeにログ出力「Chrome Logger」
    youhey
    youhey 2013/04/26
    これはいいな。さっそく試してみる。
  • Twitter BootstrapでさくさくWeb開発 : アシアルブログ

    <div class="container-fluid"> <div class="row-fluid"> <div class="span4"> Span4の中身 </div> <div class="span8"> Span8の中身 </div> </div> </div> Preタグで囲むコード エンジニアの皆さんなら、ブログにコードを書きたいですよね。 Twitter Bootstrapでも、かっこ良くコードを見せる手法を提供しています。 ・codeタグで囲む 赤くなります。 ・preタグで囲む 囲み枠がつき、灰色になります。 ・Preタグ+Google Prettifyを使う preタグのclassに、prettyprint linenums を入れましょう。 これが超かっこいい!!コードを見せるならこれがよさそうですね! さて、かっこいいGoogle Prettifyですが、こ

    Twitter BootstrapでさくさくWeb開発 : アシアルブログ
  • HPのサーバのハードウェア(RAIDの状態)を監視する

    森川です。 今回はハードウェアRAIDの状態をSNMPを使用して監視する方法の紹介です。 当然といえば当然ですが、ハードウェアRAIDをしている場合に、ハードディスクが壊れたことを検知できないというのは、致命的です。 それを検知する方法の紹介です。サーバは日HPのML115 G5、OSはCentOS 5を使用しています。ハードウェアRAIDはSmartアレイ E200を使用しています。(Debianの場合に同様の方法で検知する方法はよくわかりません。。。) まずは、準備としてSNMP関連のパッケージを入れてしまいましょう。 さっそくですが、SNMPでRAIDの状態監視を行うために、ハードウェア(Smartアレイ E200)のMIBを手に入れる必要があります。 hpacucliのインストール MIBやコマンドラインからRAIDの状態を見るためのツール一式がHPからRPMとして提供されている

    HPのサーバのハードウェア(RAIDの状態)を監視する
  • GlusterFSでファイルシステムクラスタを簡単作成

    wget http://download.gluster.com/pub/gluster/glusterfs/LATEST/Debian/glusterfs_3.2.3-1_amd64.deb dpkg -i glusterfs*.deb インストールすると、GlusterFSのデーモンであるglusterdと、その管理ツールであるglusterコマンド、そしてFUSEを用いてマウントするmount.glusterfsがインストールされます。 GlusterFSのインストールは以上です。非常に簡単ですね。 ○ GlusterFSはNFSサーバー GlusterFSは、共有ストレージをボリュームという単位で管理します。ボリュームはGlusterFSが持つNFSサーバー機能を用いて、各クライアントからマウントすることができます。また、FUSEを用いた専用のglusterfs形式でのマウントも可

    GlusterFSでファイルシステムクラスタを簡単作成
  • PHP5.4 alpha1リリース! PHP5.3からの新機能を見わたす

    こんにちは、久保田です。 先月6月28日、PHP5.4 alpha1がリリースされました。PHP5.3では、名前空間や無名関数の追加など、言語機能に大きな追加が行われました。PHP5.4 alpha1 ではtraitが実装され、オブジェクト指向言語としてのPHPに大きな機能追加が行われました。他にも、<?=記法のデフォルト有効化、array dereferenceの追加、無名関数内の$thisの扱いの変化、JsonSerializableインターフェイスの追加など筆記すべき様々な機能追加、改善が見られます。この記事ではPHP5.4 alpha1で見えてきた新機能をサンプルコードを交えながら概観します。 とりあえずNEWSを訳す PHP5.4 alpha1の変更点を記述した NEWS ファイルを翻訳してみたのが以下です。 <?php trait A { protected $hoge = "

    PHP5.4 alpha1リリース! PHP5.3からの新機能を見わたす
    youhey
    youhey 2011/07/25
    traitは楽しそう。久々にPHPで遊んでみたくなる機能かな、と。でも組み込みサーバが一番うれしいかな。
  • Android開発 C2DMを触ってみよう

    <?php $url = 'https://www.google.com/accounts/ClientLogin'; // signupページで入力したgoogleアカウントのIDとパスワード $google_id = 'メールアドレス'; // 送信者ID $google_pwd = 'パスワード'; $header = array( 'Content-type: application/x-www-form-urlencoded', ); $post_list = array( 'accountType' => 'GOOGLE', 'Email' => $google_id, 'Passwd' => $google_pwd, 'source' => 'sample-sample', 'service' => 'ac2dm', ); $post = http_build_query($

    Android開発 C2DMを触ってみよう
  • jQuery Mobileを試してみました

    <div data-role="page" data-theme="e" id="jqm-home"> <div data-role="header"> <h1>Diary</h1> </div> <div data-role="content"> <ul data-role="listview" data-inset="true" data-theme="c" data-dividertheme="e"> <li data-role="list-divider">新しいエントリ</li> <li><a href="#move-title">タイトル:<span id="title_text"></span></a></li> <li><a href="#move-body">文:<div style="margin-left:20px;" id="body_text"></div></

    jQuery Mobileを試してみました
  • LinuxをDAAPサーバにする

    Music->Connect to DAAP share にサーバ名を入れればアクセス出来ます。 ・iTunesの場合 同一セグメントなら自動で発見するはずです。 見つからない場合は、avahi-daemonが起動しているが確認してください。 ・その他クライアント 説明に従ってください。 繋がれば、音楽を楽しむだけですね。 4・使用感 スムーズに曲一覧をロード、再生出来ます。 回線はemobileくらいの速度があればそんなに苦労しなくても動きます。 以上。 強いて言えば、rhythmbox起動時にいちいちサーバ名を入力する必要があるくらいです。(DAAPの問題ではないですが・・・) 5・その他 著作権とか、不正アクセスなどがあるため、LAN内のみとか、VPN使うなど、直接外部には公開しないようにしてください。 (何があっても自己責任で) 自分の場合も自宅ローカル+VPNからのみアクセス可能

    LinuxをDAAPサーバにする
    youhey
    youhey 2011/04/27
  • PHPでセッション情報が作成されるタイミングを調べてみました

    皆さん、こんにちは。笹亀です。 MacBookAirの発表&発売やiPhone4の白の発売日が再々延期ということでいろいろな出来事がありました。白を待っていた自分にとっては残念なのと黒を買ってしまおうかと悩んでいます。 さて、日は今まで何気なくセッションを使用していましたが、実際にファイルベースのセッションのやりとりでファイルが作成されるタイミングはどこなんだろう?っと疑問に思い、実際にPHPのセッションの作成されるファイルの流れについて調べてみました。 日はその流れについてご紹介をさせていただきます。 PHPでセッションの情報の流れを調べるにはPHP体のソースをみるのもいいですが、手軽に確認するために「session_set_save_handler」関数で調べることにします。 ※所々にデバック確認用に出力しております。 <?php function open($save_path

    PHPでセッション情報が作成されるタイミングを調べてみました
    youhey
    youhey 2010/11/01
    PHPでセッションの情報を作成するタイミング
  • PHPでリフレクション

    <?php // Entity/User.php namespace Entity; class User { private $name; private $gender; public function __construct($name, $gender) { $this->name = $name; $this->gender = $gender; } public function getName() { return $this->name; } private function getGender() { return $this->gender; } } 名前を保持するnameプロパティと、性別を保持するgenderプロパティを定義します。genderプロパティに対するゲッターメソッドはprivateにしてあります。 ■ ReflectionClass まずクラスの情報を抜

    PHPでリフレクション
  • iPhoneアプリ開発開始時に気をつけるべきファイルの取り扱い (1)

    こんにちは、亀です。 今回から何回かに分けて、iPhoneの申請まわりの事に関するファイルの取り扱いノウハウを書いてみたいと思います。 ここでのファイルの取り扱い方の紹介方法は、ファイル一つ一つについて個別に言及するようなまとめ方はしません。 代わりに、そのファイルを作成・利用するタイミングを切り口として紹介し、その際にファイルをどう取り扱うべきかを、その理由とともに説明していきます。 (※なお、あくまでも個人的に感じたノウハウであって、必須事項ではありません。) 1回目は、まず触れるべきファイルの説明と、一番最初のCSR発行時に気をつけておくことを紹介します。 はじめに iPhoneの開発を始めようとすると、最初にCSRやらProvisioning Profileやら、いまいちパッとつかみづらい概念が出てきます。 このあたりのよくわからない事、けっこう悩まされてしまいますよね。 とはい

    iPhoneアプリ開発開始時に気をつけるべきファイルの取り扱い (1)
  • 手軽に出来るApacheモジュール開発

    [実行結果] Creating [DIR]  hello_world Creating [FILE] hello_world/Makefile Creating [FILE] hello_world/modules.mk Creating [FILE] hello_world/mod_hello_world.c Creating [FILE] hello_world/.deps #include "httpd.h"#include "http_config.h"#include "http_protocol.h"#include "ap_config.h" /* The sample content handler */static int hello_world_handler(request_rec *r){ if (strcmp(r->handler, "hello_world"))

    手軽に出来るApacheモジュール開発
  • DateTimeクラスを使ったモダンな日付処理

    <?php $date = date('Y-m-d', strtotime('+3 months')); echo $date . "\n"; // => 2010-09-07

    DateTimeクラスを使ったモダンな日付処理
    youhey
    youhey 2010/06/08
    DateTimeくらす
  • Webアプリケーション向けの自動セキュリティスキャナ「Skipfish」を試してみました

    * GNU C Compiler * GNU Make * GNU C Library (including development headers) * zlib (including development headers) * OpenSSL (including development headers) * libidn (including development headers) KnownIssues – skipfish –参照。 私の環境では、libidnがなかったので、yumで入れました。 さて、skipffish体のインストールを行いましょう。 ※最新のダウンロードはこちらのページを参照ください。 http://code.google.com/p/skipfish/ # wget http://skipfish.googlecode.com/files/skipfi

    Webアプリケーション向けの自動セキュリティスキャナ「Skipfish」を試してみました
    youhey
    youhey 2010/04/15
    あとで遊んでみる
  • 最近頻繁に使用するMySQL関数など

    こんばんは。笹亀です。 先週あたりからめっぽう寒くなってきました。 どうやら大寒波のおかげで心配されていた今年のスキー場の雪の心配はなさそうです。 さて、今回は頻繁に使うことを自分へのメモの意味でも記事にまとめさせていただきました。 みなさんの参考になれば幸いです。 ーーーMySQLシリーズーーー ■mysqldumpのオプション「–skip-extended-insert」 データベースのデータ(INSERT)を1行のINSERT文にするのではなく、複数行のINSERT文として出力する 自分が使った用途:ダンプを取ったデータを特定のキーワードでgrepするため 用途は限られますが、便利です。このオプションを見つけるのに少し苦労しました^^; ■REPLACE関数 MySQLの文字列置換する関数 自分が使った用途:データベース内の文字を一括で置換するため UPDATE hoge_t SET

    最近頻繁に使用するMySQL関数など
    youhey
    youhey 2010/02/08
    登録日から30日ごとに通知メールを送りたいとき→DATEDIFFで現在の日付からの日数を算出して、30で割る
  • 開発用のデータベース構築まとめてきなメモCentOS5.4+PostgreSQL8.3

    8.8.8.8はGoogleが提供しているDNSになります。 セカンダリーは8.8.4.4です。 Google Public DNS http://code.google.com/intl/ja/speed/public-dns/ Google Public DNSの特徴としては速度とDNSキャッシュスプーフィング攻撃に強いことらしいです。 また、接続情報は24時間後に削除されるそうです。 3.VMの設定 IPアドレスを固定にしましたので、次はVMのブリッチ接続を設定します。 右下のアイコンをクリックし、仮想マシン設定を開きます。 仮想マシン設定から、ネットワーク接続「ブリッジ:物理ネットワークに直接接続」のラジオボタンを選択し、OKをクリックします ネットワーク設定はこれで終わりです。 ここから先はターミナルを使用して設定します。 ●centの初期設定 1.yumの設定 fastestm

    開発用のデータベース構築まとめてきなメモCentOS5.4+PostgreSQL8.3
    youhey
    youhey 2010/02/08
    VMware Player+CentOS5.4で開発環境構築
  • lsyncdでファイルを同期してみよう

    こんにちは、熊谷です。 最近、複数のサーバでファイルを同期しなければいけないということがありました。出来るだけ手軽で簡単にそれを行いたいということで、何か良い方法がないものか、聞いたり調べたりしたところ、lsyncdなるものがあるのでそれを使用してみるのも良いのではないかと、アドバイスを受けました。 そんなことで、こちらのサイトを参考に実際に使ってみました。 例として、同期元は192.168.1.10、同期先は192.168.1.20とします。 まずは、同期元(192.168.1.10)にてlsyncdをダウンロードしてきてインストールです。makeするなりパッケージを作るなりしてインストールします。 設定ファイルは/etc/lsyncd.conf.xmlとしてこんな感じで記述しました。 <lsyncd version="1"> <settings> <logfile filename="

    lsyncdでファイルを同期してみよう
    youhey
    youhey 2010/02/08
    lsyncdの設定など概略
  • Flash内で作成した複数画像を同時にアップロードする

    var loader:URLLoader = new URLLoader(); var request:URLRequest = new URLRequest("http://www.flickr.com/tools/uploader_go.gne"); var httpdata:HTTPPostBinary = new HTTPPostBinary(); httpdata.addBinary("photo", jpegDat, "image/jpeg", "snap.jpg"); request.contentType = httpdata.contentType; request.method = httpdata.method; request.data = httpdata.encodeData(); loader.load(request); このように簡単に利用できます。 以下

    Flash内で作成した複数画像を同時にアップロードする
    youhey
    youhey 2009/11/16
    Flashから複数の画像を同時にPOST