- 1 名前:nobodyさん [2009/02/01(日) 18:10:57 ID:PdwQzQch]
- 質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り 次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。 ◆前スレ 【PHP】下らねぇ質問はID出して書き込みやがれ 78 pc11.2ch.net/test/read.cgi/php/1230026935/ ◆質問用テンプレ 【OS名】vine linux 【PHPのバージョン】php5.26 【連携ソフトウェア】mysql 【質問内容】 ◆質問する時の注意 ・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す) ・ 己の行った操作、変更などを詳しく明記すること。 ・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。 ・ 質問者として、態度をわきまえること。 ・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。 (PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。) ◆質問後の注意 ・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。 ・解決しなくても回答をもらった場合はお礼を言うこと。 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。) ◆回答者への注意 ・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
- 282 名前:nobodyさん mailto:sage [2009/02/06(金) 02:00:52 ID:???]
- set_submitButtonNameしたいときもあるかもしんねぇだろwww
- 283 名前:nobodyさん mailto:sage [2009/02/06(金) 02:17:24 ID:???]
- >278
クラス名が具体性を欠く。$obj = new Test; の1行からは、何をしたいのかという意図が全く伝わってこない。 そもそもそのクラスは、「何を」表したクラスなんだ?アプリケーションか?ユーザーからのリクエストか?今から生成するフォームか? クラス内の処理が実質的に全てstatic。こんなクラスはインスタンス化する意味が無い。 ボタン名をconstにして全てstaticメソッドにする、あるいはクラス自体を取っ払って単なるグローバル関数にする。 ボタン名を定数ではなく変数にする意味は? 変数を使うというのは「この値はスクリプトの実行中に変化する可能性がある」という意思の表明でもある。だから「変わる数」なんだよ。 動的に変わるならばそのままでもいいが、もし仮に実行中に変わらないならば定数にすべきだ。 determineSubmitという関数名。回りくどい上に、意味がおかしい。サブミットされたかは、このメソッドが決めるわけじゃない。 百歩譲ってもcheckSubmitted()。 俺ならisSubmitted()もしくはsubmitted()。boolを返す事が自明になるし、どっちの場合にtrueが返るのかも分かりやすい。 それとアプリケーション構造として、処理に必要になる値の存在だけをチェックすべきだ。 textarea0に文字が入ってさえいれば、サブミットボタンが押されてようが爆発してようが別にどうでもいいだろ? サブミットされたかは関数なのに、POSTかどうかの判定は変数を直接見ている。記述のレベルが揃っていない。 「好きな食べ物は辛いものと糖質を75%以上含むものです」なんて言わないだろ?同じレベルの記述では抽象度を揃えろ。 「辛いものと」なら「甘いもの」だし、「糖質を75%含む」ならば「カプサイシンを10mg含む」だ。その時興味のあるレベルに揃えるんだ。 つまりif( isPosted() && isSubmitted() ) か、if( $_SERVER["REQUEST_METHOD"]=="POST" && isset($_POST[[$key]) 。
- 284 名前:283 mailto:sage [2009/02/06(金) 02:34:31 ID:???]
- クラスは、クラスが必要なところでだけ使えばいいんだよ。
クラスを使う事が偉いのではない。クラスを使うことで分かりやすい/保守しやすいコードを書く事が偉いんだ。 「なんでクラス使ってるの?」と聞かれて、答えられるか?説得する必要はないが、自分なりの回答が存在するか? ttp://d.hatena.ne.jp/masayang/20081211/1229033163 その程度の処理にクラスを持ち出すのは、このコードと同じ事をしている。 クラスや関数などの中間層は、増やせば増やすほど何をやっているか分かりにくくなる。 $this->determineSubmit() より isset($_POST['test_submit']) の方が分かりやすい。具体的に何をやってるか、メソッドの定義部を読みに行く手間も省ける。 ま、練習中なら、過剰なまでに抽象化するのもひとつの経験だけどな。
- 285 名前:nobodyさん [2009/02/06(金) 02:38:16 ID:y9gQg+aR]
- PDO の質問です。
$id = 1; $sth = $pdo->prepare('select * from hoge where id = ?'); $sth->execute($id); で、実行したバインド済みのSQL(select * from hoge where id = '1') を取得したいんですが、方法はありますでしょうか。
- 286 名前:nobodyさん mailto:sage [2009/02/06(金) 02:49:11 ID:???]
- >>284
そりゃそうだ 時給制や残業制とは無能であればあるほど金がもらえる仕組みなんだよ
- 287 名前:nobodyさん mailto:sage [2009/02/06(金) 02:50:43 ID:???]
- >>285
なんでマニュアルみーへんの?
- 288 名前:nobodyさん mailto:sage [2009/02/06(金) 03:12:57 ID:???]
- これくらいなら僕でもできるもん!
>>285 間違ってるかも・・・ 詳しくは先輩から聞いてください>< $id = $_GET["id"]; $sth = $pdo->prepare('select * from hoge where id = ?'); $sth->blindParam(1,$_GET["id"]) $sth->execute();
- 289 名前:nobodyさん mailto:sage [2009/02/06(金) 03:27:05 ID:???]
- >>288
まず日本語学んだら? >で、実行したバインド済みのSQL(select * from hoge where id = '1') >を取得したいんですが、方法はありますでしょうか。
- 290 名前:288 mailto:sage [2009/02/06(金) 03:53:28 ID:???]
- すまんね。書き直します。
PDO の質問です。 $id = 1; $sth = $pdo->prepare('select * from hoge where id = ?'); $sth->execute($id); 以上のコードの後に、パラメーターがバインドされた形の 実際に実行されたSQL文を取得したいのですが、方法は ありますでしょうか。 * 上記の例では "select * from hoge where id = '1' " を得たい。 . 簡単にいうと getLastQuery() 的なもの。 >>287, 288, 289 日本語スマソ お分かりの方お願いします。
- 291 名前:nobodyさん mailto:sage [2009/02/06(金) 03:57:16 ID:???]
- はい?285=288なの?
- 292 名前:285 != 288 [2009/02/06(金) 04:01:32 ID:y9gQg+aR]
- まちがえt
- 293 名前:nobodyさん mailto:sage [2009/02/06(金) 04:04:39 ID:???]
- >>292
>>287
- 294 名前:nobodyさん mailto:sage [2009/02/06(金) 04:13:51 ID:???]
- >>289
>>287 >>293 早く教えろよ わからねーのか
- 295 名前:291 mailto:sage [2009/02/06(金) 04:16:12 ID:???]
- わからねーよ
蛸
- 296 名前:285 ◆Oto8cICx9k [2009/02/06(金) 04:23:43 ID:y9gQg+aR]
- めんどくさいから鳥つけた
>>293 結構読んだはずなんだけど分からんかった。 user noteまでは読み切ってないので、どのへん〜だけでも ヒントくれたら助かります。
- 297 名前:nobodyさん mailto:sage [2009/02/06(金) 04:29:33 ID:???]
- 結構ではなく全部読め
- 298 名前:nobodyさん mailto:sage [2009/02/06(金) 04:31:05 ID:???]
- 自作自演ですか?
- 299 名前:298 mailto:sage [2009/02/06(金) 04:33:07 ID:???]
- そうです俺馬鹿なもんで
- 300 名前:nobodyさん mailto:sage [2009/02/06(金) 04:37:15 ID:???]
- >>299
馬鹿なんだ^−^−^−^−^−^
- 301 名前:nobodyさん mailto:sage [2009/02/06(金) 04:38:48 ID:???]
- きもい〜★
- 302 名前:nobodyさん mailto:sage [2009/02/06(金) 04:49:25 ID:???]
- なんかエッチな気分
- 303 名前:nobodyさん mailto:sage [2009/02/06(金) 05:35:37 ID:???]
- 表現が稚拙だな
- 304 名前:nobodyさん [2009/02/06(金) 06:29:21 ID:IlUhJl+1]
- スレ違いかな…
phpと.htaccessの質問なのですが… .htaccess中のRewriteEngineを使用して拡張子の書き換えを行い、 htmlへアクセスした際、phpへリライトするということをしたいです。 [例] www.***.com/cgi/sample.html ↓ www.***.com/cgi/sample.php で、 RewriteRule ^(.*)sample.html(\?.*)?$ $1sample.php$2 と、設定するとうまく動作してくれるのですが、 RewriteRule ^(.*)/cgi/sample.html(\?.*)?$ $1/cgi/sample.php$2 と、設定すると404(not found)となってしまいます。恐らく、リライトのルールに合致しない為 書き換えが行われていないのだと思います。 なんで…なんでなのぉ〜(号泣)
- 305 名前:nobodyさん mailto:sage [2009/02/06(金) 07:06:20 ID:???]
- phpは全く関係ないな。こじつけにもほどがある。
このスレ、そんなに頼りになると思ってんの??ありえん。 # mod_rewriteスレがあるよ
- 306 名前:nobodyさん mailto:sage [2009/02/06(金) 10:01:08 ID:???]
- >>404
スレチ AddTypeでググれ
- 307 名前:nobodyさん mailto:sage [2009/02/06(金) 10:05:50 ID:???]
- >>304
こんな感じじゃない? RewriteRule ^([^\/].*)/cgi/sample.html(\?.*)?$ $1/cgi/sample.php$2
- 308 名前:278 [2009/02/06(金) 11:46:08 ID:3pSilmD2]
- 返信遅くなりました。
私としては、”意味のまとまり”をクラスとする、 というつもりです。 先のTestクラスは意味を表していないので例として間違っていました。 申し訳ありません。 例えば、先日私は「郵便物の配達履歴」のプログラムを組みました。 そこでは、 (1)郵便物を登録するクラス ・登録フォームを出力 ・ユーザの入力が間違っていないか(番地は数字と-のみとか)チェック ・過去の履歴を検索してユーザの入力を助ける ・郵便番号からDB中の住所を検索する etc (2)過去に登録した郵便物を検索するクラス ・フォームを出力する ・ユーザが入力した情報から過去の郵便物を検索する ・検索したものを編集/削除する etc (3)ログイン時の認証をするクラス を用意しました。
- 309 名前:278 [2009/02/06(金) 11:46:44 ID:3pSilmD2]
- 続・308
意味のまとまりをクラス化し、 そのクラスに関係する情報はそのクラスで全て管理する、 という気持ちでやっていたので、 >>278のような感じになりました。 (確かに、>>283さんのいうようにボタン名はconstにしたり、 if( isPosted() && isSubmitted() ) を用いるべきでした。) 私はJava、C++メインなためどうしてもクラスありき、 (といってもJavaもC++も大した力はありませんが・・・) で考えてしまうのですが、 PHPは必ずしもそうではない、ということでしょうか?
- 310 名前:nobodyさん mailto:sage [2009/02/06(金) 11:52:24 ID:???]
- PHPはクラスありきではない。
PHPはスクリプト言語、スクリプトからクラスを使う。 しかし、実質的にクラスベースっ"ぽい"開発もできる。 あとは好みの問題。
- 311 名前:nobodyさん mailto:sage [2009/02/06(金) 11:52:37 ID:???]
- Javaのスキルも程度が知れるな
- 312 名前:nobodyさん mailto:sage [2009/02/06(金) 13:29:37 ID:???]
- クラスってなにかくんですか?
- 313 名前:nobodyさん mailto:sage [2009/02/06(金) 13:30:14 ID:???]
- MVC
- 314 名前:nobodyさん mailto:sage [2009/02/06(金) 13:53:32 ID:???]
- MDD
- 315 名前:nobodyさん mailto:sage [2009/02/06(金) 14:03:37 ID:???]
- TDD
- 316 名前:nobodyさん mailto:sage [2009/02/06(金) 14:06:07 ID:???]
- MVC意識してるのにうまく分離できない
VとCがくっついたりVとMがくっついたり・・・
- 317 名前:nobodyさん mailto:sage [2009/02/06(金) 14:06:11 ID:???]
- やまだくんです
- 318 名前:nobodyさん mailto:sage [2009/02/06(金) 14:09:43 ID:???]
- まだやくんです
- 319 名前:nobodyさん mailto:sage [2009/02/06(金) 14:37:49 ID:???]
- >>308-309
基本的にどの言語だろうとクラスの本質は変わらないはず。 オブジェクト指向で書けるようになると戻りたくないというのも解る。 …が、その設計は果たしてどうだろう? クラスはその名の通り型(intやstring、ひいては構造体等の)であって、 (そのような側面もあるが)名前空間が本領ではない。 クラスの本質は「データとメソッドを結びつける」ことによって、 自身の振る舞いを知っている型として纏まって独立し、 型・コードの再利用は勿論、カプセル化やポリモーフィズムなど様々な恩恵を生み出す…。 そこで話を戻すとその内容はクラス、というよりも デザインパターンの話になってしまうのではないか。 まずはパータンの前に郵便物情報のクラスを作ってから、 それをActiveRecord/MVCのModelとかにして、 そいつに郵便物情報の処理を適切にスタティック/インスタンスメソッドなり追加して その外側からViewやControllerで操作する…というのが私見。 # Javaや.NETのクラスライブラリの中から処理形態として類似したものを真似てみるのもいいかと。
- 320 名前:nobodyさん mailto:sage [2009/02/06(金) 14:45:05 ID:???]
- >>319
そんなクラスの一般論なら、クラスでググればいいだけだろ。 うざいからほどほどにしてくれ。 「デザパタの前に実装してPHPのくせを先に学ぶのを先にした方がいい」 って私見ぐらいは語ってもいいけど、デザインパターンが通じない開発者の方が少数派だろ。
- 321 名前:nobodyさん [2009/02/06(金) 14:46:21 ID:iuyfFTeY]
- いまのPHP三大フレームワークは以下のものと認識してもよろしいでしょうか?
cakePHP シンフォニー zendフレームワーク
- 322 名前:nobodyさん mailto:sage [2009/02/06(金) 14:47:30 ID:???]
- =>フレームワークスレ いけ
- 323 名前:nobodyさん mailto:sage [2009/02/06(金) 14:48:16 ID:???]
- >>320
おいトリップつけるかIDだせ
- 324 名前:nobodyさん mailto:sage [2009/02/06(金) 14:51:16 ID:???]
- CI
yii Framework
- 325 名前:nobodyさん mailto:sage [2009/02/06(金) 14:51:50 ID:???]
- >>323
なんで?
- 326 名前:nobodyさん mailto:sage [2009/02/06(金) 14:53:22 ID:???]
- JavaはPHPより難しい
2日で諦めた 俺低脳だし
- 327 名前:nobodyさん mailto:sage [2009/02/06(金) 14:54:40 ID:???]
- PHPを諦めたの?それとも人生?
- 328 名前:nobodyさん mailto:sage [2009/02/06(金) 14:58:32 ID:???]
- >>327
人生とかお前馬鹿?
- 329 名前:327 mailto:sage [2009/02/06(金) 14:59:27 ID:???]
- はい 馬鹿です^^
- 330 名前:nobodyさん mailto:sage [2009/02/06(金) 15:00:31 ID:???]
- ここにいる人
きもっ〜>_<
- 331 名前:nobodyさん mailto:sage [2009/02/06(金) 15:01:30 ID:???]
- 何むしゃくしゃしてるの?悔しいの?
- 332 名前:nobodyさん mailto:sage [2009/02/06(金) 15:02:39 ID:???]
- くだらんケンカはよそでやれ
- 333 名前:nobodyさん mailto:sage [2009/02/06(金) 15:15:36 ID:???]
- [PHP]IDを出さずにくだらないケンカをするスレ[質問]
- 334 名前:nobodyさん mailto:sage [2009/02/06(金) 15:18:21 ID:???]
- 自演で長文投下してるやつ、キモイな
- 335 名前:nobodyさん mailto:sage [2009/02/06(金) 15:36:20 ID:???]
- キモ
- 336 名前:nobodyさん [2009/02/06(金) 18:02:25 ID:Iyeu5pU3]
- pearでこれは覚えろっていうパッケージを教えてください
- 337 名前:nobodyさん mailto:sage [2009/02/06(金) 18:17:50 ID:???]
- ない
- 338 名前:nobodyさん mailto:sage [2009/02/06(金) 18:31:35 ID:???]
- >質問スレで運悪く、ろくな答えもよこさないくせに態度のでかいヘボ回答者
>にあたってしまったが、他への心象を気にして強く出れなかったお方 ロクな回答者に絡まれると大変ね
- 339 名前:nobodyさん mailto:sage [2009/02/06(金) 21:36:43 ID:???]
- ロクな回答者に絡まれたら良いじゃん
- 340 名前:nobodyさん mailto:sage [2009/02/06(金) 21:41:21 ID:???]
- つうか、ここで質問してまともな回答を期待する方が、頭オカシイだろ
腐った回答でも、それ全部食っていいのをチョイスできる勇者だけが生き残る
- 341 名前:nobodyさん mailto:sage [2009/02/06(金) 21:44:01 ID:???]
- 助けてもらって当然、与えてもらって当然、他人に右往左往してもらって当然、って考えてる子が多い
- 342 名前:nobodyさん mailto:sage [2009/02/06(金) 21:59:23 ID:???]
- そんなこと言っててもエサを投げればすぐ食いついてくるくせに( ´∀`)σ)Д`)
- 343 名前:nobodyさん mailto:sage [2009/02/06(金) 22:31:27 ID:???]
- XREAスレが静かになったと思ったらこっちでファビョってたのかqqq
- 344 名前:nobodyさん mailto:sage [2009/02/06(金) 23:05:54 ID:???]
- このての分野ってキモイ人間多いよな
- 345 名前:nobodyさん mailto:sage [2009/02/06(金) 23:06:38 ID:???]
- お前が一番だから心配すんな
- 346 名前:nobodyさん mailto:sage [2009/02/06(金) 23:13:40 ID:???]
- キモイ人間てすぐ反応するよね
典型的に態度に出るからフイタわ
- 347 名前:nobodyさん mailto:sage [2009/02/06(金) 23:14:08 ID:???]
- お前が一番そうだから心配すんな
- 348 名前:nobodyさん mailto:sage [2009/02/06(金) 23:14:18 ID:???]
- キモイ人間にとって、このスレは快適なのさ
- 349 名前:nobodyさん mailto:sage [2009/02/06(金) 23:14:20 ID:???]
- キモヲタに「キモイ」って言うと
ものすごい反応するよね。
- 350 名前:nobodyさん mailto:sage [2009/02/06(金) 23:14:41 ID:???]
- お前が一番そうだから心配すんな
- 351 名前:nobodyさん mailto:sage [2009/02/06(金) 23:15:06 ID:???]
- 344 :nobodyさん:2009/02/06(金) 23:05:54 ID:???
このての分野ってキモイ人間多いよな 345 :nobodyさん:2009/02/06(金) 23:06:38 ID:??? お前が一番だから心配すんな 346 :nobodyさん:2009/02/06(金) 23:13:40 ID:??? キモイ人間てすぐ反応するよね 典型的に態度に出るからフイタわ 347 :nobodyさん:2009/02/06(金) 23:14:08 ID:??? お前が一番そうだから心配すんな 348 :nobodyさん:2009/02/06(金) 23:14:18 ID:??? キモイ人間にとって、このスレは快適なのさ 349 :nobodyさん:2009/02/06(金) 23:14:20 ID:??? キモヲタに「キモイ」って言うと ものすごい反応するよね。 350 :nobodyさん:2009/02/06(金) 23:14:41 ID:??? お前が一番そうだから心配すんな
- 352 名前:nobodyさん mailto:sage [2009/02/06(金) 23:16:00 ID:???]
- 344の必死さにワロタw
- 353 名前:nobodyさん mailto:sage [2009/02/06(金) 23:16:46 ID:???]
- >>345
>>347 >>350 反応早すぎw
- 354 名前:nobodyさん mailto:sage [2009/02/06(金) 23:17:36 ID:???]
- この流れをみれば必死なのは反応の早い彼だと思うがあえてスルーしとこう
- 355 名前:nobodyさん mailto:sage [2009/02/06(金) 23:17:41 ID:???]
- いつもの基地外君はさっさと潰しとかんと迷惑だからなぁ
- 356 名前:nobodyさん mailto:sage [2009/02/06(金) 23:19:16 ID:???]
- >>354
きめぇw
- 357 名前:nobodyさん mailto:sage [2009/02/06(金) 23:19:16 ID:???]
- >>355
2ちゃんねるは自己紹介をする場所ではないのです。。。
- 358 名前:nobodyさん mailto:sage [2009/02/06(金) 23:20:43 ID:???]
- >>358
キモイ
- 359 名前:nobodyさん mailto:sage [2009/02/06(金) 23:21:43 ID:???]
- お前が一番そうだから心配すんな
- 360 名前:nobodyさん mailto:sage [2009/02/07(土) 01:04:26 ID:???]
- PHP→Javaはベース→ギターに似てるな。逆は割と簡単
- 361 名前:266 [2009/02/07(土) 01:21:58 ID:nwjNO9JF]
- 先日はお世話になりました。性懲りもなく本日もかなりのくだ質ですが、ちょっと
行き詰まり気味なのでお願いします。 00.htmlの内容 <html><head> <script language="JavaScript" type="text/javascript"> <!-- function send (url){ document.form_orz.action=url; document.form_orz.submit();} //--></script></head> <body> <form name="form_orz" action="./01.php" method="GET"><td> <input type="text" name="xxx"> <input type="submit" value="送信x"> <input type="text" name="yyy"> <input type="button" value="送信y" onClick="send('./02.php')"></td> </form></body></html> 01.phpの内容 <?php $xxx=$_REQUEST["xxx"]; echo "値は$xxx です"; ?> 02.phpの内容 <?php $yyy=$_REQUEST["yyy"]; echo "値は$yyy です"; ?>
- 362 名前:266 [2009/02/07(土) 01:22:41 ID:nwjNO9JF]
- つづき
同じform内では複数のsubmitを使うのはちょっとコツが要るっぽいので ぐぐってあちこちを調べた結果、javascriptを使ってこのように書きました。 結果としては普通に動きますけど"送信y"をクリックした時に別窓で結果の値を 表示させたいのです。そこでjavascriptのwindow.openなるものを知りまして 00.htmlの<script>〜に次のように書きました。(>>361で書いたものは//で消して追記しました) window.open(url); document.form_orz.target = "yyy"; document.form_orz.method = "post"; document.form_orz.action = "url"; document.form_orz.submit(); これだと確かに新しく別窓が開くのですが「値は です」という表示でうまく受け渡しが 出来ていない様子です・・・。このように別窓で結果の値を表示させるようにするには どのようにすれば良いでしょう?多分、window.open周りだと思うので本来ならばこのスレ ではなくてjavaのくだ質スレが見つからなかったのでこちらに書かせて頂きました。
- 363 名前:nobodyさん mailto:sage [2009/02/07(土) 01:35:26 ID:???]
- window.open(url, "yyy");
targetの"yyy"とウインドウの識別名を一致させないとダメ
- 364 名前:nobodyさん mailto:sage [2009/02/07(土) 01:40:39 ID:???]
- >>360
www.youtube.com/watch?v=FSqajRdtTMA
- 365 名前:nobodyさん mailto:sage [2009/02/07(土) 01:42:25 ID:???]
- というか、どう考えてもPHPの話題じゃねえだろ。
- 366 名前:nobodyさん mailto:sage [2009/02/07(土) 11:32:12 ID:???]
- 今年中にはPHP覚えまくって稼ぎまくろうかと思う
- 367 名前:nobodyさん mailto:sage [2009/02/07(土) 11:55:18 ID:???]
- 11ヶ月もかけるのか・・・
- 368 名前:nobodyさん mailto:sage [2009/02/07(土) 22:21:56 ID:???]
- PHPで情報サイトを作ろうと思います。
さあ大変だ
- 369 名前:nobodyさん mailto:sage [2009/02/07(土) 22:35:07 ID:???]
- しかし、ある一握りの子達は、大変指導に時間と手間がか
かりました。彼らは「なぜ」という問いを持つことを面倒がり、 早く答えの出せる技術だけにこだわり続ける子供達だったか らです。決まった解き方に当てはめて、早く答えを出すこと。 「じゃあ、なんでこれで答えが出るんだい?。君はどういう考え 方をしてこの式を立てたの」と、正解の並んだ算数の文章題 のプリントを前に聞き返すと、彼らはみんなとても嫌な顔をし たり、あるいは質問の意味が分からないと言うようにきょとん としたものです。
- 370 名前:nobodyさん mailto:sage [2009/02/08(日) 00:48:59 ID:???]
- 営業中
- 371 名前:nobodyさん [2009/02/08(日) 01:17:06 ID:DxNfF4Ma]
- $html = '<strong>{$text}</strong>}';
と言うように変数の中に文字列で変数が入っているとします。 $textの箇所に文字を入れて太字にしたいので $text = "あああ"; echo $html; としたのですが、反映されません。 どのようにして変数内の変数に値を渡すことが出来るのでしょうか?
- 372 名前:nobodyさん mailto:sage [2009/02/08(日) 01:20:16 ID:???]
- $html = "<strong>{$text}</strong>";
- 373 名前:nobodyさん mailto:sage [2009/02/08(日) 01:22:02 ID:???]
- さて、原因はどっちでしょう
@$htmlの宣言の時点で$textの中身が空っぽだから A$html宣言のときに「"」じゃなく「'」で囲ってるから
- 374 名前:371 [2009/02/08(日) 01:24:19 ID:DxNfF4Ma]
- >>372-373
'にしないと文字列として変数が扱われないのではないですか? Smartyの簡易版のようなことがしたくて、 タグやファイルを変数で読み込んで、その中の{$test}と言う箇所に 予め指定していた値を渡したいのです。 str_replaceなどで置換すれば出来ますが、ちょっとやり方が違うような気がして・・・
- 375 名前:nobodyさん mailto:sage [2009/02/08(日) 01:29:23 ID:???]
- >>374
試してから言えカス
- 376 名前:nobodyさん mailto:sage [2009/02/08(日) 01:30:03 ID:???]
- >374
無理。プログラムは上から順に実行されるから、 $html = "<strong>{$text}</strong>}"; と書いたら、その時点での$textの中身が反映されて$htmlに入る。 (シングルクォートはダメでダブルクォートが正解な。これはマニュアル読んで来い) つまり、 $text = 'うんこ'; $html = "<strong>{$text}</strong>"; $text = 'ぬるぽ'; echo $html; だと、<strong>ぬるぽ</strong>が出力されてガッされる。
- 377 名前:371 [2009/02/08(日) 01:30:08 ID:DxNfF4Ma]
- もちろん試しました
が、中身は消えます
- 378 名前:376 mailto:sage [2009/02/08(日) 01:31:08 ID:???]
- 何を大嘘書いてるんだ俺は。
うんこが出力されてガッされない、が正解。
- 379 名前:nobodyさん mailto:sage [2009/02/08(日) 01:36:23 ID:???]
- >>374
自分でテンプレエンジンも作れない雑魚レベルなら素直にsmarty使え
- 380 名前:nobodyさん mailto:sage [2009/02/08(日) 02:43:12 ID:???]
- >>371
eval() や include() を使って評価する function replace($template, array $params = array()) { extract($params); return eval('return "' . preg_replace('/"/', '\\\\"', $template) . '";'); } echo replace('私は{$name}です。', array('name' => '371'));
- 381 名前:nobodyさん [2009/02/08(日) 11:20:52 ID:DarObAIw]
- 定義したhello関数を$testに格納して、呼び出したいところでecho $testを書いたのですが
$test = hello();の時点で出力されてしまいます hello関数を$testに格納して、自分が呼び出したいところで使うにはどうしたらよろしいでしょうか? function hello() { return "<p>こんにちは</p>"; } $test = hello(); #このあたりに別の処理をおいてます echo $test;
- 382 名前:nobodyさん mailto:sage [2009/02/08(日) 11:23:54 ID:???]
- >>381
それはない。 helloでreturnしないでechoしてんじゃないの?
|

|