PHPプログラムを始めてみたい、難しいと思っている人の為に

  • 2007/04/26
  • このエントリーをはてなブックマークに追加

スポンサーリンク

私をPHPが組める人間に育ててくれたのは1冊の書籍だった


私がPHPプログラムを始めたのが3年前。

実際問題以前からVBやベーシックは出来ました。
でもWEBアプリとなれば、CGI。
触ることは出来ても、1から全て作りこむなんて事は出来なかったんです。
そこでPHPのお話を始めて聞いて、簡単だというのでやってみましたが、やっぱりわからない。

なんせプログラムといえばベーシックやVBの考えを強く持っていた為、ページが変わってデータの受け渡し云々の意味そのものがわからなかったからです。

そんな私がとりあえず3年という月日でSQL、APIまでわかり、自社で提供しているXoopsのようなCMSを開発できるようになった経緯をお話しておきます。

はっきり申し上げてまだまだ『出来る』人からみれば半人前以下ですが、これからPHPを始めようとか、難しくて前に進めないという方の為に参考になればと思います。

あとがきつけたし2007/4/28

PHPでちょっとした学習や遊びをしたいという思いがある人はロリポップがお勧めです。ただ、お金を掛けて覚えるのはいささか問題でもあり、CD-ROMに入っているWindowsでPHPを動かす方法も、わからない人には大きな壁かもしれない。
そこでお勧めなのが
http://land.to/
ここはちょっと重い。でもPHPが使えるし、SQLも使える為勉強するにはもってこいかもしれません。XOOPSも動作確認しています。

IT/Web業界に強い転職サイトGreen

PHPプログラムの基本は3つ


PHPを始める為に、基礎となるものは実は次の3つです。

何が出来るかをまず知る事


何が出来るかというのは、恐らくプログラムを組む人がまず最初に知っておかなければならない大原則だと私は思っています。

『あ、たしかファイルに保存する方法があったな』とか『そういえば小数点を切り捨てる方法があったな』というような記憶があるとないとではその人がPHPを組める範囲が大きく変わるからです。

簡単な掲示板を自分で設計して作ること


とにかく何が何でも一番最初に掲示板を作ることを、新人教育に私は使っています。
掲示板はプログラムの基礎が詰まっています。
データを入力する部分を作成。データを渡す。データを受け取る。データを保存し、保存したデータを引っ張る。そして表示。

全ての関数を覚える必要はないという事


なにが出来るかさえ知っていれば、関数を全て覚えておく必要など今のところ私にはありません。

そんなときは私の横にある書籍が回答してくれるからです。
また、Google検索もその答えを教えてくれます。
『PHP 小数点』などで検索すればいいわけです。

ですから、なにが出来るのかという記憶部分が最も重要な比率をしめています。

なにが出来るのか?に応えてくれた書籍


PHPによるWebアプリケーションスーパーサンプル 第2版 PHPによるWebアプリケーションスーパーサンプル 第2版
 西沢 直木 (2006/03/24)
 ソフトバンククリエイティブ
 この商品の詳細を見る

 この本は本当にすごい。
 この第一版もかなり初心者向けに作られていて非常に
 参考になりましたが、第2版のボリュームには適わない。

書いている内容はほぼ第一版を羅網し、新しい項目が追加されているようなイメージ。最初本屋で立ち読みしたとき、第一版と同じかと思ったほどでしたが、甘かったです。実際はこちらの方がまとめ方のスキルが向上しているように感じました。

このPHPの第一版を買うまで、PHPの本5冊ほど買っていましたが、半分以上がSQLデータベースの説明や、各大型アプリケーションの作り方等が殆ど。
また、アプリケーションのサンプルCDが無いのは100%使えないというのが印象。コピーペーストできないんですから・・・。

大型アプリケーションの作り方サンプルは非常に勉強になりますが、肝心のその関数が何をしているとか、何ができるのかという勉強にはならない。
そういう書籍にばかり出会ってしまうと、出来上がったアプリケーションは触れるけど、1から作れるようにはなれませんでした。

ところがこの書籍、驚くほど各関数の動きを細かくパーツ分けして、恐ろしく簡単なサンプルアプリケーション群がCD-ROMにつまっています。

プログラムを組む前に、何が出来るかを徹底的に記憶できる


例えばフォームという項目をみてもすごい。
フォームは入力部をあらわしていますが、その設置の仕方から始まります。

・テキストボックス
・テキストエリア
・パスワードボックス
・選択リスト
・ラジオボタン
・チェックボックス
・隠し項目
・ボタン

これらの設置の仕方と動きが、サンプルアプリケーション集に入っているところがまたすごい。

さらに受け取るという項目では受け取り方法も細かく分解されている。

・フォームのデータを受け取る
・フォームのデータを配列で受け取る
・POST送信されたデータを受け取る
・GET送信されたデータを受け取る
・リンクからデータを受け取る
・フォームのデータをまとめて処理する。まとめて変数にセット。
・データ入力時のみデータを受け取る
・配列のデータを受け取る

今度はこれをチェックする項目もこれまた細かく分解されている

・データが入力されたかチェックする
・特定の文字列を含むかチェックする
・桁数をチェックする
・数値かどうかチェックする
・半角数字のみかどうかをチェックする
・大文字か小文字かチェックする
・日付かどうかチェックする
・ファイルの拡張子をチェックする

至れり尽くせりです。これだけの目次を一通り見るだけで、PHPを作るときに、このチェックだけしたいなと思ったらそれを開けばよいだけ。恐ろしい。
フォームという項目は、メール送信アプリのサンプルや、注文フォームアプリまで紹介されています。

このフォーム部分は第2章です。
こんな細かいパーツがずらずらと15章まであります。

文字列という章もすごい。

・文字列の一部を取り出す
・文字を置き換える
・文字から空白の削除
・文字を比較する
・文字列から文字を検索する
・大文字と小文字を変換する
・文字を分解する
・文字列を繰り返し表示する
・文字の出現回数を調べる
・文字の長さを求める
・全角と半角の変換
・文字を暗号化する

かなりかゆいところまで手が届いています。
あの暗号化ってどうやるんだろうとか、思ったときもこれで解決。
何度も言うようですが、CD-ROMにはこれら全ての項目が一つのサンプルアプリケーションとして収録されているということも見逃せないです。

このほか数値、日付、配列、クラス、ファイル、PDFファイル、XML、バーコードを出力する方法とか、ディレクトリ(フォルダ)を作るプログラムや、フォルダの存在を確認する方法まであります。
セッション、cookieの使い方からSQLデータベースの使い方まで。

最後に16章で大き目のアプリケーションのサンプルがありますが、実際はおまけ程度に紹介されているだけで、この本の本当にすごいのは、パーツの分散化。
細かいパーツのサンプル集とその説明です。

唯一初心者に厳しい部分は次の3点


・PEAR:という言葉
・初期の章からもSQLを使用したものが含まれている
・Smartyという言葉

PEAR::


PEARはどちらかというと、プログラマーよりもサーバー管理者側が知っているもので、サーバーにあらかじめPEARモジュールを仕込んでおくとそれをPHPプログラマ側で、簡単な構文で呼び出せるもの。PEARは例えばAmazonの商品を簡単に取り出せるアプリとか、画像を圧縮するアプリとか、色々ありすぎてまだ始めたばかりの初心者に使うのは無理かと。

SQL


SQLサーバーはPHPを使っていくのであれば覚えておいて損はないデータベース名。
データベースを使うと、膨大なデータを手軽に保存し、取出しが出来るようになりますが、始めるにあたっては、ちょっと面倒でも『テキストファイル』などにデータを保存して取り出せるようになった方が、覚えやすいと思います。

また、SQLに保存する前に、ある程度データをチェックし、危険なスクリプトが含まれていないか等をチェック出来るようになってからのほうが良いと思います。

Smarty


Smartyに関してはHTMLテンプレートとPHPを分けて開発できるものですが最初に覚える必要はないかと思います。


私はこの書籍に出会い、かなり長時間パソコンから離れ、とにかく各パーツがどんなことをしているかを教わりました。

これからPHPを始めるという人や、まだ1からプログラムを組んでいない人がもしいれば、是非ともお勧めしたい書籍です。

実際今でも、かなりお世話になっている本ですしね。


スポンサーリンク

トップへ戻る

Twitter版のネタ帳では毎週月曜~金曜までWeb屋さんに役立つ色んな情報や単なるネタまでをつぶやいています。

関連するエントリー

コメント

この記事にコメントする人はクリック

コメントポリシーをお読みください
管理者にだけ表示を許可する

石田賢一朗 紹介していただいた参考書

「PHPによるWebアプリケーションスーパーサンプル 第2版」早速購入しました。
私もホームページはある程度作れるのですが、PHPで何かサービス展開できないかな?と思い勉強しています。今参考にしている本はSHOEISHA「独習PHP第2版」という本で何冊か本屋で立ち読みして一番分かり易かったので購入しました。
プログラミングはまったく初めてで、「PHPは初心者でも手軽に学習できる」とありましたが、やはり初心者には難しい!
でもしっかり学び習得し、仕事につなげていきたいと思います。

2012/01/20 Fri 13:18| |

トラックバック

この記事にトラックバックする人はクリック

お勧めphpの本

phpの勉強を始める人にはこの本がお勧めらしい。 簡単な掲示板を自分で設計して作...

マウンテンブック:2007-04-26 15:33

USBメモリにPHP環境構築 XAMPP Light

結婚、新婚旅行と怒涛の日々をくぐりぬけ、私生活も落ち着いてきたので、少しPHPを集中的に学ぼうと思います。これまでも講習会などでかじってはいますが、基礎力が欠けておりゼロからの開発ができません。最終目...

陽のあたらない美術館 -人間再生-:2007-09-11 23:21

PHPで緯度・経度から住所を求める

サンプル・プログラムをPHP5対応にしました。

ぱふぅ家のホームページ:2008-04-28 08:45

PHP の勉強におススメの記事: PHPプログラムを始めてみたい、難しいと思っている人の為に

「PHP に興味はあるけど、難しそうだしできるのかな~?」 と不安に思っている人のために書かれた記事かなぁ、と思ったら ちょっと違いました↓

プログラミングを勉強している人に役立つかもしれないブログ:2012-10-16 15:04

FC2Ad

広告


IT・Web業界の求人なら転職サイトgreen(グリーン) ホームページテンプレート、WordPressテーマ、Facebookページテンプレートならクラウドテンプレート ネットマーケティングとは│ネットマーケティング検定 SEOコンサルティング&SEO対策 無料レスポンシブWebデザインテンプレート 広告主募集

あわせて読みたい
フィードメーター - ホームページを作る人のネタ帳

人気の記事一覧

あなたのブログの再訪問者を増やす50の方法

私の経験から感じた事を書き記します。全てが全てその時々で、正しいとは限りませんが、一つの指針としてお使いください。因みに全部リスト化すると230くらいありましたが、それはきっとセミナーとかでやるかなぁと。

http://e0166.blog89.fc2.com/blog-entry-824.html

あなたの生活を確実に拘束し時間を浪費させる動画50

今回は生産性を向上させる事ばかり考えて記事を書いてきたので、逆に年末にかけて忙しい皆さんの時間を出来るだけ拘束し、忙しさを倍増させるものが無いかを考えました。その結果、動画で行こうと言う事になったのが1ヶ月以上前。動画閲覧本数はおそらく600本以上。その中から、おもしろそうなものを50個ベストチョイスいたしました。

http://e0166.blog89.fc2.com/blog-entry-820.html

webデザインのセンスを磨く○○系のwebデザインまとめ

webデザインを学ぶならwebデザインから。と言うわけで、今回は海外のエントリを中心に、○○系のまとめをまとめます。

http://e0166.blog89.fc2.com/blog-entry-817.html

jQueryプラグインのベストトレンド総まとめ2010

もはやこの業界ではかなり浸透しつつあるjQuery。今回はそんなjQueryにスポットを当て、本年度紹介された中でも、ホットなトレンドプラグインをご紹介します。

http://e0166.blog89.fc2.com/blog-entry-816.html

ツイッターの日常における35の行動パターン

私が良く見かける35の行動パターンに名前をつけてみようと思う。年末の誰も見てない時に公開しようと思っていた、ただのネタだったのですが、結構時間がかかりこの時期に・・・。

http://e0166.blog89.fc2.com/blog-entry-823.html

ウェブデザイナーのためのウェブアプリ15

OSがWindowsであろうと、ubuntuであろうと、共通のサービスを受けることができるのがウェブアプリケーションです。ウェブデザイナーの中には、自宅ですでにubuntuを利用している人も多い。また、Mac、Windowsと、各自それぞれの使いやすい物を利用していると思います。

http://e0166.blog89.fc2.com/blog-entry-784.html

愛用するGoogleChromeエクステンション12個

この2年でノートPC2台購入。自他のPCはクラッシュしてリカバリー。会社のPCは新しいのがあたり、再セットアップ。そんなこんなで、会社はまぁともかくとして、とりあえず全PCが比較的3ヶ月に一度リカバリーしてもいいように、自分用にメモとして残しておきます。

http://e0166.blog89.fc2.com/blog-entry-784.html

文章や会話のプレゼンテーションを向上させる方法

文章力がないためにプレゼンに失敗した、会話がうまくできずにプレゼンに失敗した。こういう経験はなかなか無い。なぜなら多くの場合、失敗したことに気がつかないからです。

http://e0166.blog89.fc2.com/blog-entry-802.html

サイトの裏側の意識を変え売り上げをアップする方法

ネットショップ運営者が、あることをちょっとだけ始めてみただけでわずか5ヶ月で売り上げが3倍になりました。はたして、webサイト運営がどのように変わったのでしょうか。。

http://e0166.blog89.fc2.com/blog-entry-749.html

webサイトのリピーターを増やすさりげない5つのコツ

多くのビジネスサイトのアクセス数を支えている大手検索サイト、Yahoo、Googleのアルゴリズムが変わる事で、突然商売がひっくり返る事態を回避する方法。

http://e0166.blog89.fc2.com/blog-entry-746.html