Home > Program -プログラム言語- > PHP ブログ記事 一覧

PHP ブログ記事 一覧
ショッピングカートシステム - EC-CUBEとPHP -
- 2011年8月 5日 15:15
- PHP
【こちらの記事は、約5分程でお読みいただけます。】
こんにちは!いつもITブログをご覧いただき、
ありがとうございます^^
早速ですが、皆さんはネット上でショッピングをした事がありますか?
多くの方が、経験された事があるのではないかと思います。
「Amazon」や「楽天」では、おなじみのショッピングカートシステムで、
スムーズな買い物をする事ができるようになっていますね。
実は、このショッピングカート、1から作るのは結構大変です。
(特にセキュリティーの強化を図るのが大変です。)
そこで、最近では『EC-CUBE』という、
ショッピングカート・オープンソースが公開されています!
ショッピングカート・オープンソースとは、
既に出来上がっているショッピングカートシステムのことを指します。
つまり、全くプログラムが分からなくても、そのシステムの使い方に則って
簡単にショッピングカートを作成する事ができるのです。
ここで皆さんは、
「それじゃ~、プログラムなんて分からなくても良いのね」と
思ってしまうかもしれません。
しかし、大体のショッピングカートでは、
レイアウトや実装したい事が違ってきます。
例えば、商品一覧を3列に並べて表示したいとか、
値段順に切り替える機能も付けたいとか…。
そういった細かいカスタマイズをしなければならない場合、
結局プログラムを自分でカスタムしなければならなくなります。
ユーザの細やかな要望を叶えるためには、
やはり完全に自動化するのは難しい、という事ですね。
今回ご紹介する『EC-CUBE』は、実はPHPで出来ています。
つまりPHPが理解できる状態であれば、
ある程度出来上がっているシステムをさらにカスタマイズして、
自身の望んだ機能を追加し、理想のサイトを実現していく事ができるのです。
皆さんもPHPをマスターして、
『EC-CUBE』などのオープンソースを自由にカスタマイズしてみませんか?
KENスクールのPHP講座は、プログラムが初めてな方からでも
安心して学習していただける、講座内容になっています。
気になった方は、是非KENスクールにお越しください!^^
--------------------------------------------------------------------------------
Webアプリケーション構築に向けて、KENスクールで一から
学習してみませんか??
⇒【PHP講座】
ショッピングサイトなど、主に中小規模Web開発においてニーズの高い
「PHP」プログラミング技術を学習する講座です。
個別授業で学習するので、プログラム初心者からでも安心して取り組む
ことができます。基礎からはじめ、MySQLを使用しデータベースとの
連携まで、しっかりと身に付く実習形式で学習します。
本日の更新者:
パソコンスクール KENスクール Programコース
インストラクター 清遠
- Comments (Close): 0
- TrackBack (Close): 0
PHPテンプレートエンジン - Smarty(スマーティー) -
- 2011年6月27日 16:33
- PHP
【こちらの記事は、約5分程でお読みいただけます。】
ITブログを読んでくださっている皆さん、こんにちは!^^
本ブログでは、ITの最新技術をご紹介する事がテーマとなっていますが、
今回は趣向を変えて、既存技術のフィードバッグをしてみようと思います。
PHPテンプレートエンジンの『Smarty(スマーティー)』をご存じですか?
何を今更…と感じた方も多いかもしれません。
使えるかはともかく、知らない!! という方は
情報をキャッチする力を磨きましょう。
テンプレートと言うと、一般には文書の雛型を指す事が多いのですが、
SmartyはPHPの文書を雛型として用意してくれるものになります。
ちなみにこのテンプレート、Smartyを利用せずとも頑張れば1から自作出来ます。
ではなぜ流行っているのでしょう?
【理由その1】
PHPで作るWebシステムには、
例えば、ログインの実装など、お約束とも言える機能が必ずあります。
つまり、どうせ実装するなら1から作るより
テンプレートを利用した方が速い訳です。
【理由その2】
不景気なのが幸か不幸か、WebデザイナーがPHPの実装も兼任する事は、
今や常識となりつつあります。
テンプレートは、プログラムに抵抗がある人でもお手軽に利用できる為、
Webデザイナーにも重宝されています。
速く作れてお手軽に利用でき、尚且つ、手を加える事まで可能です!
カップラーメンの人気を想像すると分かりやすいかもしれません。
「速い・安い・使いやすい」がシステム作成の指標である以上、
テンプレートが一定の支持を得る理由は明確でしょう。
と、ここまでの内容に同調していただいた皆様!
WordPressを触ったことはありますか?
PHPのスキルアップを目指している方は、
是非利用していただく事をおススメします!!
--------------------------------------------------------------------------------
この記事に書かれている内容は、KENスクールで学習することができます!
⇒【PHP関連講座一覧】
ショッピングサイトなど、主に中小規模Web開発においてニーズの高い
「PHP」プログラミング技術を学習する講座です。
個別授業で学習するので、プログラム初心者からでも安心して取り組む
ことができます。基礎からはじめ、MySQLを使用しデータベースとの
連携まで、しっかりと身に付く実習形式で学習します。
本日の更新者:
パソコンスクール KENスクール Programコース
インストラクター 宇佐美
- Comments (Close): 0
- TrackBack (Close): 0
PHPで作られたソーシャルアプリ「CityVille」
- 2011年5月 2日 00:11
- PHP
【こちらの記事は、約3分程でお読みいただけます。】
皆さん、こんにちは!
ソーシャルアプリという言葉を聞いた事がありますか?
世界で5億人が参加する「Facebook(フェイスブック)」や、
日本国内で最大の参加数(それでも2000万人・・・)を誇る「mixi(ミクシィ)」
などのサービスを「SNS(ソーシャル・ネットワーク・サービス」と言います。
ソーシャルアプリは、このSNSを土台として利用する、形態のアプリケーションです。
例えば、そのSNSを利用している人達同士で
会話しながら遊べるゲームなどがあります。
具体的に、「CityVille」という町を作っていくゲームを紹介します。

家やショップを作って街を作り、ショップの売り上げによって、
さらに自分の街を拡大させていくというもので
全世界で1億人がこのゲームで遊んでいるそうです!
とんでもないユーザー数ですね!
気になる開発言語ですが、主に「PHP」が使われているようです!
何やらFacebook用のライブラリ等もかなり用意されているようです。
世界的に見ても、PHPの勢いは、まだまだ止まりそうにないですね!
また最近、SNSを通じた人の繋がりや情報の伝搬が
顕著に現われてきていると感じます。
エジプトやリビアの内乱が急激に加速していったのも、
Facebook利用者同士による情報の共有があったからとも言われています。
片や今回の大地震では、電話が全く通じない中、
SNSを利用して安否確認をしたという人も多いでしょう。
改めて「Web」というものが持つ色々な側面に考えさせられました。
個人的にはとにかく、人を幸せにするものが
多く生まれてくれるのを願っています。
※「CityVille」がどんなゲームなのか、詳細をお知りになりたい方は、
こちらの@shumaiさんが書かれた記事が、非常にわかりやすく
世界観が伝わってくるので、ぜひお読みになってみてください^^
「今Facebookで1億人が遊ぶCityVilleが楽しい(攻略情報も!)」
http://shumai.seesaa.net/article/182443824.html
--------------------------------------------------------------------------------
Webアプリケーション構築に向けて、KENスクールで一から
学習してみませんか??
⇒【PHP講座】
ショッピングサイトなど、主に中小規模Web開発においてニーズの高い
「PHP」プログラミング技術を学習する講座です。
個別授業で学習するので、プログラム初心者からでも安心して取り組む
ことができます。基礎からはじめ、MySQLを使用しデータベースとの
連携まで、しっかりと身に付く実習形式で学習します。
本日の更新者:
パソコンスクール KENスクール Programコース
インストラクター 松本
- Comments (Close): 0
- TrackBack (Close): 0
注意が必要なPHPの言語仕様
- 2010年10月23日 18:56
- PHP
PHPには気を付けなければいけない言語仕様があります。
例えば、ショッピングサイトでカートの中身を表示させる
ページをご覧になったことがある方も多いと思います。

このページには、カートの中身の一覧から
商品の削除ができる機能が付いています。
次のコードをご覧ください。
-----------------------------------------------
if(isset($_POST['index'])){
$index = $_POST['index'];
array_splice($item, $index, 1);
$_SESSION['item'] = $item;
}
------------------------------------------------
各削除ボタンには、上から順番に「0」「1」「2」…とhiddenで
パラメータが設定されており(名前が「index」)、
どの商品を削除すれば良いかを識別できるようになっています。
上記のコードは、パラメータがあれば取得して、その番号に
該当する商品を、カートから削除しています。
ところが、上記のコードを以下のように書き換えてみると、
一番上の商品だけ削除できないという事態に!! 
-------------------------------------------------
$index = $_POST['index'];
if(!$index == ""){
array_splice($item, $index, 1);
$_SESSION['item'] = $item;
}
--------------------------------------------------
削除できないということは、
取得した値が「""」と等しいと判定されたからです。
一番上に表示されている商品の削除ボタンが押された場合、
「0」がパラメータとして渡されますので、
「0」と「""」を「==」で比較した結果、trueと判定されたことになります。 
…うーん。
PHPのマニュアルには、次のように定義されています。

赤く丸で囲んだところをご覧下さい。
「==」による「0」と「""」との比較はtrueになるのです。 
ちょっと納得いかない気もしますが、これはPHPの言語仕様として
決められているルールなのです。
ただ「!=」で「0」と「""」を比較した場合はちゃんとfalseが返ります。
先ほどのコードを次のように書き換えると、
一番上の商品も問題なく削除することができます。
-------------------------------------------------
$index = $_POST['index'];
if($index != ""){
array_splice($item, $index, 1);
$_SESSION['item'] = $item;
}
--------------------------------------------------
なんだか紛らわしいですね…。
あくまでも「==」による「穏やかな比較」の場合に、このようなことが起こるのです。
ちなみに「厳密な比較」は「===」を使用します。
ご存知の方も多くいらっしゃると思いますが、
よく記述する内容なだけに、ちょっと注意が必要かもしれません。
PHPマニュアル
http://php.net/manual/ja/types.comparisons.php
--------------------------------------------------------------------------------
パソコンスクール KENスクール船橋校 Programインストラクター
http://www.kenschool.jp/school/funabashi/index.html
KENスクールでPHPを学びたい方は、Program講座へ!
http://www.kenschool.jp/Program/index.html
- Comments (Close): 0
- TrackBacks: 0
プログラマとLinux
- 2010年10月12日 10:14
- Linux -リナックス- | PHP
皆さん「LAMP」という言葉を聞いたことがありますか?![]()
Webシステムを作る時に必要なソフトウェアの組み合わせを表現した言葉で、
- Linux(OS)
- Apache(Webサーバ)
- MySQL(DB)
- PHP(プログラム言語)
の頭文字を取ったものですね。
これらはすべて無償で提供されているオープンソースソフトウェア
と呼ばれているもので、皆さんが現在見ているサイトなどで実際に
稼動していて構築実績も多く、安定していると言われている
組み合わせのことです。![]()
このOS部分であるLinuxですが、通常皆さんが使っているOSは
ほとんどの方がWindowsだと思います。
しかし、実際にWeb上で稼動しているOSはLinuxが多いです。
これには様々な理由があるとは思いますが、
「Linux上で稼動しているWebのシステムが多い」
という事実の中で、プログラマがLinuxの知識を持ち合わせていない
というのはいかがなものでしょう。![]()
例えばJavaを使ったプログラミングではOSをそれほど意識する必要がない
と言われていたり、実際の開発環境を考えた時にLinux上で開発をする
という事はまれで、ほとんどの場合がWindows上で開発をすることになります。
だからと言ってWindows上で開発したWebのシステムが最終的に
Linux上で稼動する事を考えた場合に、
そのシステム上でもし障害が発生したり、何か問題が発生した時に、
Linuxの知識が全く無いというのでは
解決をする上で確実に影響がありますよね。
最近話題のAndroidもベースはLinuxです。
これらを実際に開発する時にはJavaの知識が必要ではありますが、
それに加えてLinuxの知識があるのと無いのとでは
作業効率に大きく影響が出ることでしょう。![]()
今の世の中、知らないより知っている方が良いに決まっていますし、
最初に述べた「LAMP」が再びもてはやされている中で、ただJavaやPHPが書ける
というだけではなく、これらを実際に稼動させるOSの知識を持っているということは
大きな武器となることでしょう。![]()
Linuxにはいくつかのディストリビューションがあります。
主なものを挙げておきますので、
是非こちらを参考にして触ってみるのはいかがでしょうか?
★Red Hat Enterprise Linux
(レッドハット・エンタープライズ・リナックス、RHELとよく省略されます)
レッドハット社によって開発、販売されている
業務向けのLinuxディストリビューション。
★Fedora(フェドラ)
レッドハット社が支援するコミュニティー「Fedora Project」によって
開発されている、RPM系Linuxディストリビューションです。
バージョン6まではFedora Coreと呼ばれていました。
Fedoraは最新の技術を積極的に取り込むディストリビューション
として知られていて、その開発目的として
「rapid progress of Free and Open Source software
(フリー/オープンソースソフトウェアの世界を迅速に発展させること)」
を謳っていて、フリーソフトウェアを厳格に重視した
ディストリビューションという一面も持っています。
★CentOS
Red Hat Enterprise Linuxとの完全互換を目指した
フリーのLinuxディストリビューションで、
CentOSはレッドハット社が無償で公開しているソースコードより、
同社の商標、商用パッケージなどを含まない形でリビルドされています。
一般に「RHELクローン」と呼ばれることもあります。
★KNOPPIX
CD-ROMまたはDVD-ROMから起動することが可能な
Linuxディストリビューションで、元々はドイツのKlaus Knopperが
Debianパッケージを元に開発しており、日本語版は独立行政法人
産業技術総合研究所が日本語化をはじめとする、日本の国情に合わせた
様々な機能を追加して配布を行っています。
あっ、それからKENスクールの「LAMP環境構築講座」がRenewalされました!!
こちらもい・か・が♪![]()
--------------------------------------------------------------------------------
パソコンスクール KENスクール北千住校 Programインストラクター
http://www.kenschool.jp/school/kitasenju/index.html
KENスクールでPHPを学びたい方は、Linux講座へ!
http://www.kenschool.jp/Program/index.html
- Comments (Close): 0
- TrackBacks: 0
PHPの技術者認定資格
- 2010年10月 9日 16:32
- PHP
プログラムの資格は、比較的ニーズの高いものからマイナーなものまで
多岐に渡ります。
PHPに関しても、今までもあるにはありましたが、
なかなか普及しているように見えなかったのが、
今回ご紹介するPHP技術者認定資格です。

今までもZEND社(PHPのバージョン管理を行っている企業)が提供する
世界統一を唄う認定資格があったのです。
Zend PHP5 Certification(PHPスキル認定資格 ゼンド PHP5 サーティフィケーション)
しかし対策本が洋書なので、
プログラムのお堅い解説が英語表記されているのはもちろん、
過去問も無く(海外に資格攻略サイトがあるかもしれませんが)
学習するにも一苦労です。
なお試験中の問題表記は日本語なのでご安心ください。
さて、日本ではなかなか普及が進まなかったPHP資格ですが、
今秋より「日本発のPHP技術者認定資格」が開始されます。![]()
まずはベータ試験が開始されますので、本格的な運用はもう少し後になりますが。
指定カリキュラムとして利用される教本がオライリーの本で、
もちろん日本語訳されています。
少なくとも、文脈を読み取るのに苦労しなくて済みそうですね。
このPHP認定資格、これからどのように展開していくのでしょうか?
個人的には普及はスムーズに進むのではないかと思います。
どちらにしろPHP技術者はたくさんおりますし、
これからPHPスキルを上げたいと考えている人も、1つの指針にするでしょう。
資格が普及すれば、PHPの活用場所がさらに広がるはずです。
最近では、ブログや商用サイトを比較的簡単に作成できる
CMS(コンテンツマネジメントシステム)といったサービスも展開されています。
そのシステムの裏側で利用されているのがPHPスクリプトです。
なので、CMSで作成されたサイトのカスタマイズにはPHPが必須です。
今後も根強く利用されるスクリプト言語のひとつであることは
間違いないでしょう。
--------------------------------------------------------------------------------
パソコンスクール KENスクール横浜校 Programインストラクター
http://www.kenschool.jp/school/yokohama/index.html
KENスクールでPHPを学びたい方は、Program講座へ!
http://www.kenschool.jp/Program/index.html
- Comments (Close): 0
- TrackBacks: 0
PHPフレームワーク『Zend Framework』
- 2010年1月11日 17:49
- PHP
PHPというプログラム言語をご存知でしょうか?
ショッピングサイト・モバイル用サイトなどで使用されている簡易言語で、
シンプルな記述やHTMLコードの中に直接記述できるため、
比較的簡単に習得できるプログラム言語として認知されています。
HTMLには出来ないWEBページを簡単に作成できるので、
最近人気のある言語です。
なのでプログラマーだけではなく、
最近ではWEBデザイナーも習得している方が増えています。
簡単に作成できるとは言っても、大規模なシステムを作成する場合
プログラムをゼロから作成していては効率も悪いし、
開発チームがそれぞれ好きに作成しても修正がし辛いなどの
弊害が発生します。
そういった時にフレームワークが役に立つんですね。![]()
そもそもフレームワークとは?
と思われる方のために簡単にご説明いたします。
フレームワーク・・・直訳すると枠組み。
あらかじめ作成された枠組み(プログラム)だけでなく、
開発をしていく上でのルールも提供してくれます。
こういう風に作成しなさい!というルールがあるため、
開発者がたくさん参加する大規模なシステムでは、
あらかじめルールが決められているほうが作りやすいんですね。
じゃあ、すべてのシステム開発にフレームワークを取り入れたらいいんじゃいの?
と思うかも知れないですが、以下のデメリットもあります。
- 独自の枠組み・ルールをを習得するのに開発者の教育に時間がかかる。
- 決まったルールの中で作成しないといけないため自由度が低い。
しかし、以上の点をふまえても十分に補うメリットの方がたくさんあります。
PHP用フレームワークには代表的な物として、
CakePHP・symfony・Zend Frameworkなどがあります。
今回ご紹介するのはZend Frameworkです。![]()
Zend社が開発したもので、PHPで開発を進めるにあたって
簡単かつ効率よく開発できるように支援するプログラムをまとめた物なのですが、
たくさんのプログラムが用意されている中で、
個人的に気になったものを、いくつかご紹介します。
- Zend_Service_Amazon…自分の作成したサイトでAmazonの商品検索機能や、検索した結果の商品画像を表示できる機能です。
- YouTube Data API …その名前の通りYoutubeの動画の検索や閲覧機能などがそっくりそのまま、自分の作成したサイトから利用できます。
- AutoCompleteヘルパー…Googleで検索しようと何かキーワードを入れたときに、候補一覧が出るのを見たことがありますか?(例えば、KENと入力するとKENWOOD・ケンタッキーなどの一覧が出る)入力したいキーワードの候補一覧が出る機能は、Ajaxという技術を使用しているのですが、AutoCompleteは、Ajaxとの連携が簡単に取れる機能を提供してくれます。
- Zend_Translate…色んな国に対応したサイトを作成したい場合、日本語用サイト・英語用サイト・中国語用サイトなど、各国別に用意していては、すごく手間がかかりますね。このZend_Translateを使用すると、アクセスしてきた国を認識してあらかじめ翻訳しておいたテキストに差し替えて表示してくれます。
- Zend_Db…ショッピングサイトの商品の情報は、データベースという所に保存がされています。このデータベースから商品の情報を検索・挿入・削除・更新などを行うには、SQLというデータベースに命令する専用の言語が必要になるんですね。PHPは解るけどSQLはよく解らないという人でも、Zend_Dbを使用すると、自動でSQLに変換してくれるプログラムが用意されています。便利ですね!
今回ご紹介したもの以外にも、たくさん便利なプログラムが用意されています。
詳しくはZend Frameworkのサイトをご覧になって下さい。
http://framework.zend.com/manual/ja/index.html
この記事をご覧になって興味を持ったあなた!!
KENスクールでもPHPフレームワークを扱った講座を
いつか開講するかも知れませんよ?!
お楽しみに~。
--------------------------------------------------------------------------------
パソコンスクール KENスクール船橋校 Programインストラクター
http://www.kenschool.jp/school/funabashi/index.html
KENスクールでPHPを学びたい方は、Program講座へ!
http://www.kenschool.jp/Program/index.html
- Comments (Close): 0
- TrackBacks: 0
Home > Program -プログラム言語- > PHP ブログ記事 一覧


