タグ

phpに関するnatsuonのブックマーク (54)

  • WordPressコアコントリビューターに聞く「ぼくのかんがえた最強の開発環境」

    WordPressで開発をするなら、いまどきどんなツールを使うのがいい? WordPress専門のデベロッパーであり、コアコントリビューターでもあるMatt Geriさんがおすすめるする、最高の開発環境とは? 近年、WordPressによる開発は大きな進展を遂げています。特に、ツールに関しては。以前は、WordPressでサイトを構築しようものなら、ほぼ確実にMAMP/WAMPのローカルホスティングの設定をしなければならず、それはもう悩みの種でしたよね。ひょっとしたら、番の状態でサイトの開発を進めなければならなかったりしました。 そう、私もその一人でした。 幸い、時代は変わり、いまではそんな頭痛の種や反復作業を取り除くツールが出てきました。 WordPress開発業者としてフルタイムで開発をしていた私は、WordPressから離れて丸3年後の2015年12月、再びフルタイムのWordPr

    WordPressコアコントリビューターに聞く「ぼくのかんがえた最強の開発環境」
  • [PHP] error_reportingで使用するエラーレベルのビットマスクを調べる方法 · DQNEO日記

    では問題です。 Apacheのバーチャルホスト単位でエラーレベルを変更するには? 答え .htaccess または httpd.conf などに記述します。 しかしここでやっかいな問題があります。 .htaccessやhttpd.confでエラーレベルを指定する場合は、整数値で指定しないといけないのです。 php_value error_reporting 30719 この"30719"などの整数値はどうやって調べればいいのでしょうか? 一応マニュアルを見れば整数値の一覧が書いてあります。 E_NOTICEが "8" で、E_STRICTが "2048" といった具合です。 やっかいなのは、E_ALLの値がPHPのバージョンによって異なるということです。 例えば, PHP5.1のE_ALLは "2047" です。 PHP5.2のE_ALLは "6143" です。 つまり、 「"E_ALL

  • [PHP]コンフィグファイルから設定情報を読み込むためのConfigクラス | PHP Archive

    PHPファイルに連想配列の形で保存しておいた設定情報を読み込むことが多かったのでスタティッククラスとして定義してみました。 Config::set_config_directory(ディレクトリパス) でコンフィグファイルのディレクトリを指定しておき、Config::get(‘パス.ファイル名.配列のキー’) で情報を取り出せるようにしてあります。単純に Config::get(‘ファイル名.配列のキー’) と書いても動作します。 【使用例】 <?php require 'Config.php'; Config::set_config_directory(__DIR__ . '/config'); echo Config::get('app.url'); // http://example.com 設定ファイル config/app.php <?php return [ 'url' =>

    natsuon
    natsuon 2016/07/02
  • php-resque を試す - Qiita

    redis を使ったジョブキュー&ワーカーの仕組みとしては github が使っている resque が有名です。PHP で同じようなものが欲しかったので調べていたら php-resque というものを見つけたので試してみました。 インストール redis のインストールは省きます。 php-resque は composer でインストールします。今回は github の HEAD を試しました。

    php-resque を試す - Qiita
  • ExcelをPHPで読み込んで1行目を連想配列のキーにするクラス書いたよ。 - Qiita

    自前テンプレートでメタタグ自動出し分けして、 ウマウマすれば良いじゃない。 以前書いたPHPExcelファイルを読み込んで配列にするまでのサムシングをもっと使いやすくするために、 excelでメタタグ、タイトル周りをSCRIPT_NAMEから現在のページデータを取得するクラスを書いてみました。 使用イメージ 1行目をキーに配列を作成していく。 アクセスしたページによってメタタグのデータを以下のように出し分けるイメージ。 準備するもの ・ excelファイル ・ PHPExcelライブラリ ( http://phpexcel.codeplex.com/releases/view/107442 ) ・ php環境 ソース <?php // Excelシート番号 define('XLS_META', 0); // 今回使うシート define('XLS_SNS', 1); define('XL

    ExcelをPHPで読み込んで1行目を連想配列のキーにするクラス書いたよ。 - Qiita
  • cakephpでGearmanClientを使い、バックグラウンド実行 | まとめーたー

    photoBy: http://mahou-birthdaycake.jp/press/wp-content/upl…gearmandでバックグラウンドで実行重い処理をサーバー側に任せる。 cronで済むのならcronで十分。 サーバーの負荷対策で複数のサーバーに分ける場合は使える。 使いドコロ・掲示板投稿時にユーザー全員に一斉にメールを送信 ・リモート画像を取得してDB画像を置き換える など、重い処理をするのにできるだけユーザーを待たせないようにする。 特徴バックグラウンドでwhileで永久的にphpを動かす(worker) いつものユーザーぼブラウザ画面 (Client) この2つがあって初めて動作。 インストールyum --enablerepo=epel install gearmand yum --enablerepo=epel install libgearman-devel p

  • CentOS6.xのphpにxdebugインストールする - モーグルとカバとパウダーの日記

    素のCentOS6.xでxdebug使おうとして、peclでxdebug入れようとしたら running: phpize sh: phpize: コマンドが見つかりません ERROR: `phpize' failedとか言われてしまいました。 調べてみると「php-devel」のパッケージが入ってないとphpizeが入ってないといけないのだそうです。 ということで未来の自分のために、素のCentOS6.xのphpにxdebug入れるための手順をまとめときます。 # yum groupinstall 'Development tools' # yum install php-devel # pecl install -a xdebug /etc/php.d/xdebug.ini zend_extension=/usr/lib64/php/modules/xdebug.so xdebug.de

    CentOS6.xのphpにxdebugインストールする - モーグルとカバとパウダーの日記
  • Office2007ファイル(docx,xlsx,pptx)のMIME-Typeを正しく判定する方法 | colori

    アップローダーなどを設置してOffice2007系のWord(.docx) やExcel(xlsx), PowerPoint(pptx)かどうかを判断するのは以外と大変です。 理由:全て「zipファイル」と判断されるから Office2007以降からファイルのフォーマットがOffice Open XML(OOXML) に変更されたのですが、これは実際はZIPファイルになっていて、PHPのFileInfoモジュールや mime_content_type() 関数(公式には非推奨)などを利用しても、「application/zip」や「application/x-zip」と判断されてしまいます。 正しく判定するには、ZIP展開して[Content_Types].xml を見る 正しく判定するにはどうするかというと「File Signatures」にはこう書いてあります。 ~Office2003

    natsuon
    natsuon 2015/10/23
  • PHPでMIME-Typeを判定する方法 | colori

    サイト作成時にユーザーからファイルをアップロードしてもらう場合に気をつけることとして「それが正しいフォーマットかどうか」という点があります。 つまり偽装ファイルでないかどうかということですね。 これを判定するにはMIME-Typeを調べるのが良いとされています。 Webブラウザーからの情報は信用しない=基 正しいファイルフォーマットを知るためには、ファイルのMIME-Type情報を取得して判断するのですが、ブラウザーがサーバーに伝えるMIME-Typeはウソの情報を与えることもできます。 Webブラウザは拡張子を変えるだけで騙される!? 突然ですが、適当なテキストファイルを作成して拡張子を「.gif」に変えてみてください。 Windowsだと警告がでますが、無視してOKするとテキストファイルが画像アイコンに変わります。 これだけでWebブラウザーは「画像だ」と認識してしまいます。 MIM

    natsuon
    natsuon 2015/10/23
  • CakePHP セキュリティ対策について考える(SQLインジェクション、XSS、CSRF) | hijiriworld Web

    Posted on: 2011/11/18 CakePHP セキュリティ対策について考える(SQLインジェクション、XSS、CSRF) 概要 SQLを使って不正にデータベースを操作する攻撃 攻撃例 ユーザー名とパスワードを入力してログインする処理があるとする。 username と password の組み合わせが、データベースのものと一致すれば認証するという仕組みだとする。 SELECT * FROM users WHERE username='$username' AND password='$password' ここで、($username: admin, $password: ' OR 'a'='a)と入力すると、SQLは以下のようになる。 SELECT * FROM users WHERE username='admin' AND password='' OR 'a'='a' こ

  • PHP による日付・時刻・時間の計算・演算のまとめ - hoge256ブログ

    最近 PHP 日付関連の関数をいろいろいじっていたので、いろいろな日付の計算関係をまとめてみました。 日付の単位について 基的なことですが、一応まとめておきます。 1秒は1000ミリ秒 1分は60秒 1時間は60分 よって 1時間=60分=3600秒 1日=24時間=1440分=86400秒 現在時刻の取得 まずは、最もよく使う処理です。 //date関数を使う場合 date("Y-m-d H:i:s"); //strftime関数を使う場合 strftime("%Y-%m-%d %H:%M:%S"); 日付/時刻のパース 日付/時刻を表したある書式の文字列から、年、月、日、時、分、秒を取得します。 //strptime関数を使用した場合 $date = strptime("2007-08-12 10:35:20", "%Y-%m-%d %H:%M:%S"); print("yea

  • Using Google Translate API with PHP — SitePoint

    October 30, 2013Using Google Translate API with PHP If your site serves visitors from different countries, you may already have translated all its static content into several languages. But what to do with the content posted daily by the users in comments, opinions and ratings? As this may be as valuable a part of your site as the static content, you should think of finding a way to translate it i

    Using Google Translate API with PHP — SitePoint
  • PHPでJSONのデータを処理する方法

    JavaScript Object Notation「JSONとは何か?」について、簡単に説明します。JSONという文字を見て「13日の金曜日」を思い浮かべてしまう人は、まずはその過ちに気付いて下さい。JSONとはJavaScript Object Notationの頭文字を繋げ合わせたものです。Notationは日語で「表記法」。JavaScriptのオブジェクトの表記法を元にした、データフォーマットです。要はJavaScriptのオブジェクトみたいなデータ形式ですね。 様々なプログラム言語が対応しているJSONの最大の特徴は、例えばJavaScriptPHPRubyというような様々なプログラム言語がその取り扱いに対応していることです。データを用意する側は、JSONという形式のデータ1種類を用意しておくだけで、JavaScriptを使う人、PHPを使う人、Rubyを使う人などに対応

    PHPでJSONのデータを処理する方法
  • エラーメッセージによるXSSにご用心

    以前の記事「PHPのdisplay_errorsが有効だとカジュアルにXSS脆弱性が入り込む」では、php.ini等でdisplay_errorsを有効にしていると、スクリプトに脆弱性がなくてもXSS(クロスサイトスクリプティング)脆弱性が入り込む可能性が高いことを指摘しました。 しかし、display_errorを無効にしていても、エラー処理がまずいと、エラー表示が原因でXSS脆弱性が入り込む場合があります。ネット上のサンプルスクリプトを見ても、潜在的にXSS脆弱性があるものが多くあります。 サンプルスクリプト まずは、典型的な脆弱性の例をスクリプトで紹介します。PHP+PDO+PostgreSQLの組み合わせです。 <?php try { $db = new PDO("pgsql:host=localhost options='--client_encoding=UTF8';dbnam

    エラーメッセージによるXSSにご用心
  • 最近のPHPWebアプリケーション開発環境

    最近のPHPWebアプリケーション開発環境についての(個人的な)まとめ

  • サービス終了のお知らせ - NAVER まとめ

    サービス終了のお知らせ NAVERまとめは2020年9月30日をもちましてサービス終了いたしました。 約11年間、NAVERまとめをご利用・ご愛顧いただき誠にありがとうございました。

  • より高速に、推測困難な一意なIDを生成する方法 - [サンプルコード/PHP] ぺんたん info

    PHPでは、一意なキーを生成を生成するのに、uniqid()があります。 これは現在時間をマイクロ秒単位にしたものを使用しています。 つまりランダムというより、重複のない一意な値となります。 戻り値は、『 4a4f513eb71b1 』のような半角英数字の13文字です。16進数文字なので、「0から9 aからf」です。 第一引数にはプレフィックス、第二引数には追加のエントロピーの使用の有無を渡すことができます。 第二引数はデフォルトは false になっていますが、trueにするとドット『 . 』と数字9文字が追加され、文字数が23文字になります。 『 4a4f5caadd40c2.19903592 』このような値です。 半角英数字のみにするにはsha1ハッシュ変換します。 sha1( uniqid( null , true ) ) sha1の戻り値は、40文字の半角英数字(0から9 aから

    natsuon
    natsuon 2014/11/19
  • gzip圧縮でCSSやJSなどの転送量を減らす方法

    ブラウザに表示するためのデータ転送の際、その内容を圧縮することで転送量を減らし、表示速度を高めるための手法としてgzip圧縮があります。今回はこの方法を解説します。例えば、当ブログの各ページはgzip圧縮に対応していて、来なら25kbほどのファイルサイズが4kbほどにまで軽量化されています。 「gzip」とは、ファイルを「圧縮」する方法の1つです。圧縮というのは、独自のデータ形式でファイルサイズを一時的に小さくすること。つまり、ウェブページのサーバーとユーザーのパソコン間で通信しているデータサイズを少なくするのが、今回設定する「gzip圧縮」の効果なんです。サイズが小さくなることで、ページの表示がより高速になることはもちろん、転送量が減るので利用しているサーバによっては、料金の節約にも繋がります。 技術的・専門的な内容については、下記の、t32kさんのページが分かりやすいので、興味のある

    gzip圧縮でCSSやJSなどの転送量を減らす方法
  • PHPでの画像のリサイズ、切り抜きが自由自在「class.image.php」:phpspot開発日誌

    PHPでの画像のリサイズ、切り抜きが自由自在「class.image.php」 2008年02月21日- Icebeat | class.image PHPでの画像のリサイズ、切り抜きが自由自在「class.image.php」 class.image.php を使えば、分かりやすいコードで、簡単に画像のリサイズ、切抜きが可能です。 例えば、3行で、画像のサムネイルが作れてしまいます。 まずは、画像を幅200pxでリサイズ&保存のコード $thumb = new Image('image.jpg'); $thumb->width(200); $thumb->save(); そして、画像を50%のサイズにリサイズのコード $thumb = new Image('image.jpg'); $thumb->resize(50); $thumb->save(); そして、左0px、上30pxの位置

  • PHP5技術者認定初級試験に合格しました

    先日、PHP5技術者認定初級試験を受験し、合格しました。試験に向けた勉強方法、総勉強時間、試験番中に意識したこと、試験を受ける意味、試験の残念だったところなど、PHPの現場のエンジニアとして思ったことを書いてみました。 PHP歴は4年です。業務でほぼ毎日PHPに触れています。 目次 試験に向けた勉強方法と総勉強時間 試験番中に意識すること 試験を受ける意味 試験の残念だったところ 試験の良かったところ 試験に向けた勉強方法と総勉強時間 私の勉強方法は下記の通りです。 PHP5技術者認定初級試験の参考書を2周、ざっと読んで頭に入れた。収録されている問題も全部解いた。ITトレメの問題を1日1問、約20日間毎日解いた。ITトレメの過去問を40日分、模擬試験風に時間を計って1時間で解いた。 総勉強時間は5〜10時間くらいです。 試験対策としては、PHP5技術者認定初級試験の参考書をよく読み、収

    PHP5技術者認定初級試験に合格しました