UNICALE Ver.3.52公開しました。 最新版はDownloadのページから取得して下さい。 更新内容 細かなバグ修正(未定義変数エラー修正) アップデートの際には,unicale.dbとkeiji.txtを一度別なフォルダに置くなどしてバックアップしてから行って下さい。(強くおすすめします。) ユーザーの方からバグ報告をいただき修正しました。ありがとうございます。
さて夏がやってきました。夏と言えばPHPということで、昨年に引き続き、最近のPHP事情をご紹介。 1. PHP5.4リリース PHP5.4が2012年3月にリリースされました。 Traits や Short array syntax(配列の短縮構文)、array dereferencing(foo()[0]) などのPHP言語拡張、PHPコマンドで起動するビルトインサーバ、そしてパフォーマンスの改善など大きな変更が加えられています。 言語自体の機能追加も注目ですが、ビルトインサーバは多くの人にとってメリットになるでしょう。これを使えばPHPアプリケーションの動作確認のためにApacheやnginxなどのhttpdサーバを自分のPCに入れる必要はありません。 下記のようなコマンドを打つだけで、ビルトインサーバが起動します。新しいフレームワークやライブラリ、アプリケーションを試してみたい時に手
レイヤー機能による画像合成機能やサムネイル生成等が超簡単に行えるPHPライブラリ「PHPImageWorkshop」 2012年07月10日- PHPImageWorkshop - PHP class using the GD library for image processing レイヤー機能による画像合成機能やサムネイル生成等が超簡単に行えるPHPライブラリ「PHPImageWorkshop」。 画像生成のサービス等を作る際には押さえておきたいライブラリかも。WEBサービスにおいては画像生成はよく使われるものですから、覚えておいて損はないでしょう。 以下に行える処理の概要をご説明します。 画像合成 複数の画像を組み合わせて簡単に合成する機能。透過pngの画像を合成します。 合成結果。透過PNGによって綺麗に合成されていますね。 実装コードが分かりやすくて、次のように addLayer
こんにちはこんにちは!! Webプログラミングしてますか! よく「PHPはセキュリティがダメ」とか言われてるよね。 でもそれって、べつにPHPが悪いんじゃなくて、 たぶん、セキュリティとかが、まだよくわからない人が多いだけなんじゃないかな。 がんばって勉強しようと思っても、なんだか難しい理屈が並んでいたりするしね…。 なので今日は、セキュリティ対策について、 「これだけやっとけば、わりと安全になるよ」ってことを、初心者むけに、大雑把に書いてみます! 理屈がわからなくても、最初はコピペでも、 なにもやらないより、やったほうがきっとマシになる! 1. XSS対策 動的なものを表示するとき、全部エスケープすればokです! (NG) あなたの名前は <?= $name ?> ですね! ↓ (OK) あなたの名前は <?= htmlspecialchars($name, ENT_QUOTES) ?>
PHPでシンプルなページャーつくってみた すごくつまらなくて申し訳ないですが、PHPでページャー(ページを分割したときのナビゲーション)を作ってみましたので載せておきます。 投稿日2011年11月22日 更新日2011年11月22日 php <?php function pager($c, $t) { $current_page = $c; //現在のページ $total_rec = $t; //総レコード数 $page_rec = 10; //1ページに表示するレコード $total_page = ceil($total_rec / $page_rec); //総ページ数 $show_nav = 5; //表示するナビゲーションの数 $path = '?page='; //パーマリンク //全てのページ数が表示するページ数より小さい場合、総ページを表示する数にする if ($total_
まったくプログラムの下地がない人がPHPの入門書を読むと挫折する。筆者はプログラミングの下地がまったくないノンプログラマーである。数年前から、PHPの勉強をや独学ではじめた。PHPの本は何冊買ったかわからない(洋書も含めて40冊以上は買ってきた)。買っては挫折の繰り返しだった。現在、てもとに残ったのは数冊である。 以下は、今後PHPを完全な独学で勉強したい人のためのメモである。 良本でプログラミングの下地をつくる 最初のコツはいきなりPHPの本に手を出さないことである。とくに初心者の方がネックになるのは条件分岐、ループ、配列あたりである。このあたりはPHP以外の本で定評のある本を読んで基礎を固めておきたい。 『新版Perl言語プログラミングレッスン入門編』か『初めてのプログラミング 第2版』のどちらかを読んでおこう。前者はPerl、後者はRubyの本であるがPHPでも基礎は同じで役に立つ。
手軽にページング処理するサンプル~。 リンク生成の部分とかは思いっきりハードコーディングしているし、ページ数が多い場合の省略処理とかもしていないけれど。 class TekitouPager { private $base_uri = null; //ベースとなるURL private $page = null; //現在のページ番号 private $per_page = null; //1ページに表示する件数 private $max_row = null; //全データ件数 private $max_page = null; //最大ページ数 private $offset = null; //オフセット /* * 引数(全て必須) * $base_uri ベースとなるURL * $page ページ番号(数値) * $max_row 全データ件数(数値) * $per_page 1ペ
WordPressで記事の中に画像を挿入するとき、通常ではhttp://www.example.com/wp-content/uploads/~ などといったように、ドメインを含んだアドレスがimgタグのsrcとして埋め込まれてしまいます。 例えば、ローカル環境や構築環境で作ったサイトを、本番用のドメインで公開する場合、このドメイン部分をいちいち置換しなくてはなりません。 MySQLが分かる方であれば、一括置換すれば済む話ではありますが、データベースってなんじゃらほいという方はどうすればいいのか困りますよね。そこで、挿入される画像のsrcにドメイン部分が入らないようにする方法を紹介します。 利用しているテーマのfunctions.phpに下記コードを追加するだけ。 CODE 1 function delete_host_from_attachment_url( $url ) { $rege
「画面が真っ白になってしまいました。」 WordPressのフォーラムでは、よくこの言葉を目にします。 真っ白な表示になるということは、ほぼ100%なにがしかのエラーが発生していて処理が止まってしまっているということで、解決への最短距離は、エラーメッセージを表示させて何のエラーが発生していて、どこで止まっているかという、エラーの原因を把握し、発生箇所に対して適切な修正を施すことです。 エラーが分からないまま推測による修正を行ったりすると、回り道になったり、さらにおかしくしてしまうことにもなりかねません。 エラーメッセージの表示方法は、.htaccessやphp.ini等のファイルを編集する方法などもありますが、WordPressの場合は、いたって簡単。 wp-config.phpの中に書いてある define('WP_DEBUG', false); を define('WP_DEBUG',
WordPress で主に Twitter の OAuth を使ったり、データベースに会員情報を持っておく方法を紹介します。すべて説明していると返って分かりにくくなりますので、ポイントを押さえて説明していきますので読んでみてください。今回メインで参考にさせて頂いた記事は以下です。 PHPでTwitter APIのOAuthを使う方法まとめ – 頭ん中 WordPress のデータベースにメンバーテーブルを作成 id を WordPress 側で使い、user_id は Twitter の user_id です。user_name は Twitter での screen_name です。access_token_key と access_token_secret を保存しておけばサイト側からツイートなどを行うこともできます。 CREATE TABLE IF NOT EXISTS `wp_me
PHP Magic Function : glob() | PHP Code Base PHPでバッチ処理する際に便利なglob使いこなしテクニック。 globl("*.gif"); 等とすることで、同じディレクトリにある gif 拡張子のファイルを配列で受け取るなんていう便利な関数がありますが、その glob をもっと使いこなすテクニックが紹介されていましたのでご紹介。 階層的なファイルを探索 glob('pear/*/DB/*') のようにして、階層的にファイルを探索することが出来る 第二引数を活用 第二引数は個人的に使ったことなかったのですが、これはかなり便利そう glob("*.gif", 第二引数); GLOB_MARK: 返ってきたディレクトリの最後に / を付ける GLOB_NOSORT: ソートを行わない GLOB_NOCHECK: 検索パターンにマッチするファイルが見つか
List of Most Commonly Used PHP Functions :: search[code] 頻出順で学ぶPHPの関数リスト。 有名な、Wordpress, Mambo, Sphider, Smarty, Drupal, CodeIgniter 等のオープンソースを正規表現にかけて頻出関数について調査したそうです。 Tokenizer を使っていないので関数ではないものも混じっていたりしますが、関数だけを抽出し、マニュアルにリンクしてみました。 PHPをこれから学ぼうという方は参考にさせてもらいましょう。 isset - 変数がセットされていること、そして NULL でないことを検査する define - 名前を指定して定数を定義する empty - 変数が空であるかどうかを検査する assert - assertion が FALSE であるかどうかを調べる file
去年の話ですが、海外でこんな記事が上がっていました。 20 Tips you need to learn to become a better PHP Programmer 記事の内容は、かなりレベルが低いです。 しかし、初心者のうちに知っておけば、より早く成長出来るでしょう。 初心者PHPerのために、この記事の翻訳を載せます。 20 Tips you need to learn to become a better PHP Programmer PHPは、同じオブジェクトの扱い方でも複数の書き方を持っている、とても気まぐれなプログラミング言語だ。 詳しくは、私の書いた”The Art of Programming“を読むと良い。 これから書くTipsは、過去のプロジェクトから私が学んだコードの可読性、メンテナンス性を上げ、あなたを素晴らしい、より進んだPHPプログラマーにするもの
拡張子取得、それは十人十色の関数である 一般的な拡張子を取得する方法は '.'を区切り文字として配列を作り、最後の要素を取り出す 拡張子があるであろう箇所を正規表現で検索、置換して取得する 最後に出る'.'を検索して以降を抜き出す など、他にもたくさんあります。 でも、パフォーマンスにバラつきはあるはずだし、 どうせなら「一番いいのを頼む」って考えるのが人の性ってもんですよね 拡張子を取得する関数たち エントリーNo1 正規表現の関数で配列に分割して最後の要素を取得する <?php $filename = '大きい画像a_1010.jpg'; $exts = split("[/\\.]", $filename); $n = count($exts) - 1; $ext = $exts[$n]; echo $exts[$n]; エントリーNo2 関数で拡張子を正規表現で検索、置換して取得する
WEBサービスで使えるPEAR以外で有名なPHPモジュール総まとめ 「WEBサービスを作るなら最低限覚えておきたいPHPのPEARモジュールまとめ」というエントリで先日PEARの便利ライブラリについてまとめたのですが、今回はPEAR以外でも有名なライブラリをご紹介。 PEAR以外で挙げていくときりがありませんが、とりあえず有名どころや、私の知っている物、過去に当ブログで紹介したものをまとめてみます。 他にも便利な物や定番の物がありましたら、@phpspot_kj までTwitterなんかで教えてください。 グラフ描画 JpGraph ありとあらゆるグラフを描画してくれる有名なグラフライブラリ。 pChart グラフにデザイン性を求める場合に使えるクールなグラフ描画ライブラリ PHP/SWF Charts PHPでグラフをFlashで描画出来るライブラリ。グラフに動きを出してインタラクティブ
ページのデザイン時に悩むのが、2カラムレイアウトなどでサイドバーにどのくらいのコンテンツを配置するのか、というのがあります。 理想的なのは、メインとなるコンテンツと同じくらいの高さになるのが無駄もなくいいかもしれません。しかし、メインのコンテンツ量が決まったものではなく、しかも長い場合はサイドバーに未使用のスペースが多く生じてしまいます。 [ad#ad-2] この無駄になってしまう空きスペースの解決方法の一つとして、スペースの量に合わせてダイナミックにサイドバーのコンテンツを配置する方法を紹介します。
PHPを始めたばかりのころ自分なりにやってた工夫と、それこうした方がいいんじゃないのという提案 2010年12月07日 09:00PHP PHP Advent Calendar jp 2010 に参加しています。 PHP に関する記事を日替わりで書こうというイベントですね。 昨日の slywalker さんに続いて6日目。 さて PHP というかウェブに関することは何もかも独学で 始めたばかりの頃は特に 一般的なやり方というものがさっぱりわかっていなかったので わかることの範囲内で自分なりの工夫をしてました。 そういう経験はとても大切だと思うんだけど、 かなり無駄な手間がかかっていたり やらない方がいいことをやっていたりもしたので 導いてくれる人がいなかったその頃の自分に対して こうやってはどうか、という提案を書いてみようと思います。 「なに、そんな愚かしいことしてたの」 と言いたくなるよ
デフォルトではXML形式の空要素を出力しますが、PHP 5.3.0から第2引数にfalseを指定すると<br>として出力できるようにもなりました。 この関数はもはやPHPerなら常識でしょうか? ■mb_strimwidth 文字を丸める関数です。 <?php $string = "アシアルは今、より多くのお客様にサービスを提供していこうと考えています。業務内容には多くの範囲が含まれますが、自身のアイデアを活かしたい、今までにないWebサービス を作りたい、PHP言語に興味がある、といった方は、アシアルで一緒に頑張ってみませんか?"; echo mb_strimwidth($string, 0, 60, '...', 'UTF-8');
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く