1. daijiro_maeyama

    Posted

    daijiro_maeyama
Changes in title
+PHPアルゴリズム問題
Changes in tags
Changes in body
Source | HTML | Preview
@@ -0,0 +1,97 @@
+## PHPアルゴリズム問題
+
+以下の雛形を参考にしながら、次の簡易投稿アプリを作成しなさい。
+アプリケーションは以下のような仕様で実装する。
+
+1. 実行すると ```[0]投稿する```,```[1]一覧表示```,```[2]削除する```,```[3] : アプリケーションの終了```という選択肢を表示し、ユーザーに入力を求め、その入力に従い以下のような処理を行う。
+
+ 1. ```[0]```の処理
+  1. ユーザーに投稿情報(名前, 投稿内容)の入力を求める。
+  2. 入力値を元に```Tweet```クラスのインスタンスを作る。
+  3. 作成されたインスタンスを保存する
+ 2. ```[1]```の処理
+  1. 保存した投稿内容を投稿者の名前とともに表示させる。
+ 3. ```[2]```の処理
+  1. 投稿情報の一覧を表示する。
+  2. 選択した投稿を削除させる。
+ 4. ```[3]```の処理
+  1. アプリケーションを処理を終了する
+ 
+なお、Tweetクラスは以下のような仕様で実装するものとする。
+
+- 添字配列である静的プロパティ$booksを持つ
+
+なお、全体を通して、無効な値が入力された場合や、投稿情報が登録されていない時に投稿情報を表示しようとした場合の例外処理を実装すること。
+
+```○○.php
+<?php
+
+class Tweet {
+ # 静的プロパティを定義
+
+ static function input_tweet() {
+ echo "名前を入力してください\n";
+
+ echo "投稿内容を入力してください\n";
+
+ # 入力された投稿者の名前と投稿内容を保存。
+
+ echo "入力が完了しました\n";
+ }
+
+ static function read_tweet() {
+
+ echo "投稿者名: 投稿内容\n";
+ # 保存した投稿内容を投稿者の名前とともに表示させる。
+ }
+
+ static function destroy_tweet() {
+
+ $num = 1;
+ echo "削除したいツイートを選択してください\n";
+
+ echo "削除が完了しました。\n";
+ # 投稿情報の一覧を表示し、選択した投稿を削除。
+
+ }
+
+ static function end_program() {
+ echo "ご利用ありがとうございました。\n";
+ exit;
+ }
+
+ static function exeption() {
+ echo "入力値が無効です。\n";
+ echo "もう一度入力してください。\n";
+ }
+}
+
+echo "処理を選択してください\n";
+
+echo "[0] : 投稿情報の投稿\n";
+echo "[1] : 投稿された情報の閲覧\n";
+echo "[2] : 投稿情報の削除\n";
+echo "[3] : アプリケーションの終了\n";
+
+# ユーザーに入力を求め、処理
+
+?>
+
+```
+
+**ヒント**
+配列を指定して、unsetで削除するやり方
+
+```
+$target = array('a', 'b', 'c');
+
+//削除実行
+unset($target[1]);
+
+//実行結果
+'b'が削除される
+```
+
+参考URL
+[PHPで配列から特定の要素を削除する](http://qiita.com/Quantum/items/767dba44af81d1825248)
+