1 名前:nobodyさん mailto:sage [2007/12/19(水) 03:33:51 ID:???] まず読め→【PHP マニュアル】www.php.net/manual/ja/ PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。 過去スレ、関連スレ、FAQなどは>>2-10 辺り ◆前スレ 【PHP】下らねぇ質問はここに書き込みやがれ 60 pc11.2ch.net/test/read.cgi/php/1196511516/ ◆質問する時の注意 ・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ) ・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。 ・ 己の行った操作、変更などを詳しく明記すること。 ・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。 ・ 質問者として、態度をわきまえること。 ・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。 ◆質問後の注意 ・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない) ・2回目以降は最初に質問した際のレス番号を名前欄に入れること。 ・解決しなくても回答をもらった場合はお礼を言うこと。 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。) ◆回答者への注意 ・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。 【その他諸注意】 ・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ ・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
477 名前:nobodyさん [2007/12/30(日) 20:44:11 ID:lUFWIq2Z] >>475 変数を『{}』でくくるか、 文字列と変数を『.』で繋げればいいんじゃない。
478 名前:nobodyさん mailto:sage [2007/12/30(日) 20:48:41 ID:???] 普通にシングルクォートで囲って入れればいい話じゃないのか?
479 名前:431 [2007/12/30(日) 21:24:43 ID:+D3WOxGf] >>432-434 レスありがとうございます。 とりあえずやりたいことは出来そうです。 もう少し勉強してみます。
480 名前:463 [2007/12/30(日) 21:58:49 ID:MvMxVYb6] >>477-478 $hoge="<tr>\n<td class="hoge2"><?=hoge3?></td>\n</tr>"; 変数と言うか、<td>〜</td>間にPHPの書式を書こうとするとだめみたいです <td class="hoge2">のようにタグの中だと効くのですが、<?=hoge3?>は無いものとして扱われてます <?=hoge3?>を{}や''で囲むとその囲んだ記号だけ表示されます
481 名前:nobodyさん mailto:sage [2007/12/30(日) 22:00:51 ID:???] 俺はシングルクォートで文字列括って改行コードは定数にしてるな $html = '<a href="hoge.html" onclick="alert(\'ラヴィ\')">'.$hoge.'</>'.NEW_LINE. '以上ラヴィでした'; こんな感じで書いてるなー #てーか携帯でソース書くの辛いな
482 名前:nobodyさん mailto:sage [2007/12/30(日) 22:09:56 ID:???] つーかロジックとビューは分離しろ。 ヒアドキュメントとかアホじゃねーのか。
483 名前:nobodyさん mailto:sage [2007/12/30(日) 22:22:57 ID:???] ヒアドキュメント使うと、ロジックとビューが混ざるの? ヒアドキュメントと文字列に差はないと思うけど。
484 名前:nobodyさん mailto:sage [2007/12/30(日) 22:24:45 ID:???] PHPのヒアは変数展開とかしてくれないから、混ざらないと思う。
485 名前:nobodyさん [2007/12/30(日) 22:28:09 ID:UcZOMDnE] >>484 展開したと思う。
486 名前:484 mailto:sage [2007/12/30(日) 22:34:14 ID:???] ごめん、勘違いしてたみたい。 自重します。
487 名前:nobodyさん mailto:sage [2007/12/30(日) 22:35:18 ID:???] 配列の展開やオブジェクトの参照はしてくれないけど({}付は省く) 普通に$unkoとかは展開されてる
488 名前:nobodyさん [2007/12/30(日) 23:08:06 ID:WyJGCA3E] .cgi .plのスクリプトを使いたいのだが どうすれば いいだろうか? クリックしても .bat / .exeみたいに 動かないし…
489 名前:nobodyさん mailto:sage [2007/12/30(日) 23:15:01 ID:???] >>488 スレ違い PHPからなら <?php exec("pl hoge.cgi"); ?> とか
490 名前:nobodyさん mailto:sage [2007/12/30(日) 23:16:28 ID:???] (;´Д`)
491 名前:nobodyさん mailto:sage [2007/12/30(日) 23:51:59 ID:???] 吹いたwwwwwww
492 名前:nobodyさん mailto:sage [2007/12/31(月) 00:40:49 ID:???] >>427 クライアントのOSだったと思う 俺はLFに統一してる
493 名前:nobodyさん [2007/12/31(月) 02:01:26 ID:ye8NBX1l] クッキーにIDとパスがあった場合、 そのままログイン後の画面を表示させるか、 入力フォームに値を入れてボタンを押させるか、 どっちが主流?
494 名前:nobodyさん mailto:sage [2007/12/31(月) 02:05:01 ID:???] IDはまだしも、パスワードはクッキーに保存しちゃ駄目wwwwwwwwww
495 名前:nobodyさん mailto:sage [2007/12/31(月) 02:07:28 ID:???] mysqlも穴だらけだなぁと思う今日この頃。 ソフトウェア開発のがリスクがない分楽かもしれん
496 名前:nobodyさん mailto:sage [2007/12/31(月) 02:22:13 ID:???] >>493 IDやPASSをそのまま入れてる訳ではないけど ログインしたままが多いんじゃないかな(Googleとかニコ動とかそうだし)
497 名前:nobodyさん mailto:sage [2007/12/31(月) 03:43:38 ID:???] そこらへんのphpゲーム見て回ってるんですけど 普通にhiddenでIDとPASSをやり取りしてページを移動していますよね、 これってセキュリティ的にどうなんですか?。。
498 名前:nobodyさん mailto:sage [2007/12/31(月) 03:55:53 ID:???] 最悪
499 名前:nobodyさん mailto:sage [2007/12/31(月) 04:08:11 ID:???] そうなんですか、どこでも普通に使われてるので何かやってるのかと・・・。 ログイン画面でID・PASSを送信、ハッシュ化、 それに応じたハッシュがあればセッションを作成してページ間の移動に利用、 ページを移動したらセッションを破棄、また移動時にセッションを作成、破棄・・・ というの無知ながら考えたんですが、これはセキュリティとサーバーの負担から考えてどうなんでしょう・・・。 どなたかご教授お願いいたします。
500 名前:nobodyさん mailto:sage [2007/12/31(月) 04:09:21 ID:???] クッキーに保存して良いのはセッションIDのような、ワンタイムパスワードっぽいのだけ。
501 名前:nobodyさん mailto:sage [2007/12/31(月) 04:44:33 ID:???] まず読め→【PHP マニュアル】www.php.net/manual/ja/ PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。 過去スレ、関連スレ、FAQなどは>>2-10 辺り ◆前スレ 【PHP】下らねぇ質問はここに書き込みやがれ 60 pc11.2ch.net/test/read.cgi/php/1196511516/ ◆質問する時の注意 ・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ) ・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。 ・ 己の行った操作、変更などを詳しく明記すること。 ・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。 ・ 質問者として、態度をわきまえること。 ・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。 ◆質問後の注意 ・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない) ・2回目以降は最初に質問した際のレス番号を名前欄に入れること。 ・解決しなくても回答をもらった場合はお礼を言うこと。 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。) ◆回答者への注意 ・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。 【その他諸注意】 ・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ ・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
502 名前:nobodyさん mailto:sage [2007/12/31(月) 04:46:57 ID:???] KY
503 名前:nobodyさん mailto:sage [2007/12/31(月) 04:59:41 ID:???] いっそのことテンプレをNGワードにしてしまおうか。
504 名前:nobodyさん mailto:sage [2007/12/31(月) 05:18:46 ID:???] 普通に答えてやればいいのに
505 名前:nobodyさん mailto:sage [2007/12/31(月) 10:13:13 ID:???] 自信満々な態度でテンプレを貼り付けてくるバカを見ると失笑を買う
506 名前:nobodyさん [2007/12/31(月) 14:09:09 ID:ExHZywTc] phpでMySQLからデータを引っ張ってきて、XMLに加工して出力してるんですが、 XMLの加工そのものは成功してて、IEなんかのブラウザで見てる分には問題ないんですが、 Ajaxで非同期受信すると、responce has no propertiesとなってしまいます。 (status=4を受信できないっぽい) 上記のエラーは、FirefoxのFirebagで見てます。 Firebag上は、ちゃんとXMLが取得できてるので、php側からstatusの4を送信できればいいんだと思うんだけど、やり方わかる人っていますか?
507 名前:nobodyさん [2007/12/31(月) 14:09:53 ID:ExHZywTc] もしくは、Ajax用にphpで動的にXMLの生成を経験した人っておりますか?
508 名前:nobodyさん mailto:sage [2007/12/31(月) 14:21:09 ID:???] どうせどっかでタイプミスしてんだろ
509 名前:nobodyさん mailto:sage [2007/12/31(月) 14:21:27 ID:???] 質問する時は、せめて「どうすればいいですか?」って聞き方にした方がいいと思いますよ。 わかる人、経験した人ってのは案外多いもんです。
510 名前:nobodyさん [2007/12/31(月) 14:29:56 ID:ExHZywTc] phpでxmlを出力すると、ヘッダーが違うからっぽいですね。 何を出力すればいいんだろ? >>508 してないです。 >>509 はぁ・・・
511 名前:455 mailto:sage [2007/12/31(月) 14:32:14 ID:???] > php側からstatusの4を送信できればいいんだと思うんだけど HTTPのことを全く理解せずにAjaxとかやってるやつって 色々大変なんだろうなー
512 名前:nobodyさん mailto:sage [2007/12/31(月) 14:33:17 ID:???] ヘッダなら、これで header("Content-Type: application/xml; charset=utf-8");
513 名前:nobodyさん [2007/12/31(月) 14:37:06 ID:ExHZywTc] 自己レスです。やっぱりヘッダでした。無事解決しました。
514 名前:nobodyさん [2007/12/31(月) 14:39:10 ID:ExHZywTc] >>511 Ajaxやったことない人からすると、羨ましいですか? >>512 はい、それです。やっぱ実力のある人は回答をスパッと出しますね。 実力無い人って、なんでウザイんですかね?
515 名前:nobodyさん mailto:sage [2007/12/31(月) 14:40:39 ID:???] >>514 そうそうお前みたいに質問者の癖に無駄に解答者煽ったりとかな。 本当に勘弁して欲しいわ。早く巣に帰れ。
516 名前:nobodyさん mailto:sage [2007/12/31(月) 14:43:42 ID:???] 「実力のある人は回答をスパッと出しますね」 実力のないやつがえらそうにこういうこと言うのって恥ずかしいなあ。 "responce has no properties" "Firebag" この手の注意力散漫なやつはくだらない打ち間違いで時間を無駄にするタイプ。(中学生か?) ふつーにFirefox使ってりゃ、この手のバカが打ち間違えないように 赤い下線で打ち間違いを教えてくれるのに、それでも間違えるってのは真性だなあ
517 名前:nobodyさん mailto:sage [2007/12/31(月) 14:45:09 ID:???] 恥知らずの中二病が冬休みのお勉強中か? はやく「php側からstatusの4を送信」してみろよカスが
518 名前:nobodyさん [2007/12/31(月) 15:11:38 ID:ExHZywTc] >>515-517 そんなに悔しかったんですか?(w 久しぶりに必死な人を見ました。 今年の歳暮れも大変だと思いますが(w 頑張って下さいね。
519 名前:nobodyさん mailto:sage [2007/12/31(月) 15:23:53 ID:???] Firebag(笑) > 上記のエラーは、FirefoxのFirebagで見てます。 > Firebag上は、ちゃんとXMLが取得できてるので、
520 名前:nobodyさん mailto:sage [2007/12/31(月) 15:24:29 ID:???] >>518 随分舐めた態度の奴だなあ 何様のつもりなんだろう
521 名前:nobodyさん mailto:sage [2007/12/31(月) 15:28:11 ID:???] おまえが何様だ
522 名前:nobodyさん mailto:sage [2007/12/31(月) 15:28:26 ID:???] ____ / \ /\ キリッ . / (ー) (ー)\ / ⌒(__人__)⌒ \ 上記のエラーは、FirefoxのFirebagで見てます。 | |r┬-| | \ `ー'´ / ノ \ /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒))
523 名前:nobodyさん mailto:sage [2007/12/31(月) 15:30:50 ID:???] >>521 「php側からstatusの4を送信」ってのはいつになったらできるの?
524 名前:nobodyさん mailto:sage [2007/12/31(月) 16:17:17 ID:???] >>521 は質問者ではないぞ。 大して解決策も出してない輩が粋がっていて、なんだかなーと。
525 名前:nobodyさん mailto:sage [2007/12/31(月) 16:18:07 ID:???] ____ / \ /\ キリッ . / (ー) (ー)\ / ⌒(__人__)⌒ \ php側からstatusの4を送信 | |r┬-| | \ `ー'´ / ノ \ /´ ヽ | l \ ヽ -一''''''"~~``'ー--、 -一'''''''ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒)) /_ノ ヽ、_\ ミ ミ ミ o゚((●)) ((●))゚o ミ ミ ミ /⌒)⌒)⌒. ::::::⌒(__人__)⌒:::\ /⌒)⌒)⌒) | / / / |r┬-| | (⌒)/ / / // | :::::::::::(⌒) | | | / ゝ :::::::::::/ だっておwwwwwwwww | ノ | | | \ / ) / ヽ / `ー'´ ヽ / / | | l||l 从人 l||l l||l 从人 l||l バンバン ヽ -一''''''"~~``'ー--、 -一'''''''ー-、 ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒))
526 名前:nobodyさん [2007/12/31(月) 18:23:23 ID:ExHZywTc] 今、家の用事から帰ってきました。 まぁリアルで高校生なんですけど、高校生より劣っていることが そんなに悔しかったんですか?(w
527 名前:nobodyさん [2007/12/31(月) 18:26:45 ID:ExHZywTc] まぁ高校生でもプログラム歴5年くらいあるからなぁ。 PHPは1年だけど(w おっさん、めげるな!
528 名前:nobodyさん mailto:sage [2007/12/31(月) 18:29:44 ID:???] NG推奨 ID:ExHZywTc いい加減しつこい。
529 名前:nobodyさん mailto:sage [2007/12/31(月) 18:36:41 ID:???] しつこさは同意だが、おまえも同じくしつこい野郎だな
530 名前:nobodyさん mailto:sage [2007/12/31(月) 18:38:52 ID:???] 5年もやってて>>506 か。頭の病気かも分からんね。
531 名前:nobodyさん mailto:sage [2007/12/31(月) 18:41:07 ID:???] いちいち反応するなよ。はい次の質問者どうぞ。
532 名前:nobodyさん mailto:sage [2007/12/31(月) 18:41:25 ID:???] 極論厨死ね、リアルで死ね
533 名前:nobodyさん [2007/12/31(月) 18:44:12 ID:3CT6jxWV] 投稿フォームでyahoo.co.jp/ のようなアドレスを自動リンクさせるには 正規表現で<a href=""></a>を加えて置換する以外に何か方法ありますか?
534 名前:nobodyさん mailto:sage [2007/12/31(月) 18:46:14 ID:???] >>533 URLかどうかを判断する方法は正規表現以外でもできるが、結局は置き換えになる。
535 名前:nobodyさん mailto:sage [2007/12/31(月) 18:52:11 ID:???] URL入力欄を設ける
536 名前:nobodyさん mailto:sage [2007/12/31(月) 18:58:49 ID:???] >>535 おまいは何を言ってるんだ
537 名前:nobodyさん mailto:sage [2007/12/31(月) 19:01:45 ID:???] >>536 頭の固い馬鹿だな
538 名前:533 [2007/12/31(月) 19:02:09 ID:3CT6jxWV] >>534-535 ありがとうございました。 都合のいい正規表現を考えるか、探した方が良さそうですね。
539 名前:nobodyさん mailto:sage [2007/12/31(月) 19:36:21 ID:???] >>537 ちょww質問の意味を汲み取れてない馬鹿はお前だろww 投稿フォームでアドレスの入力があった場合のオートリンクの話をしてるのに なんでURL入力欄を設けるとかイミフなこといっちゃってるわけ?wwww
540 名前:nobodyさん mailto:sage [2007/12/31(月) 19:43:39 ID:???] 必死な釣り人がいるが 低学歴は数年後にちゃんとみじめな人生送ることになってるから 放置しておいてやろう 家が金銭的に小康状態を保っているから 他にやることが無いから書き込みをしているんだ 今の彼は最高に輝いている
541 名前:nobodyさん mailto:sage [2007/12/31(月) 19:47:16 ID:???] 煽らんでいいからおとなしく自分の非を認めて黙って引っ込んどけよ。 1. URL入力欄 www.example.com/ (自サイトのURL) 2. 投稿フォーム こんにちは。よかったらサイトに遊びに来てください。 最近 www.2ch.net/ にもたまに出没しています。 1と2で張られたリンクには関連性はないだろ。
542 名前:nobodyさん mailto:sage [2007/12/31(月) 20:41:37 ID:???] >>538 正規表現関連、英語で良ければ ttp://regexlib.com が便利。
543 名前:nobodyさん [2007/12/31(月) 22:34:43 ID:zQ+yU81P] たとえば <name>ひろゆき</name> って文字列があるとして、ここから「ひろゆき」だけを抜き出すには、どんな方法がスマートなの? substrとstrposでゴチャゴチャ処理するのが嫌なんだけど。
544 名前:nobodyさん mailto:sage [2007/12/31(月) 22:36:38 ID:???] >>543 >>542
545 名前:nobodyさん mailto:sage [2007/12/31(月) 22:36:53 ID:???] >>543 DOM SimpleXML
546 名前:nobodyさん [2007/12/31(月) 22:46:18 ID:zQ+yU81P] >>545 xmlって言ってないのに気を遣ってくれてありがとう。 simplexml使ってみます
547 名前:nobodyさん [2007/12/31(月) 23:01:32 ID:fLI7N5P/] インクルードさせて使うファイルが直接ブラウザで開かれたときに エラーを返す方法ってありますか? そもそもそんなこと気にしないで良いんでしょうか?
548 名前:nobodyさん mailto:sage [2007/12/31(月) 23:04:14 ID:???] .htaccessとかでインクルードさせる鯖アドレスだけを許可すればいんじゃね。 order deny,allow deny from all allow from localhost みたいな
549 名前:nobodyさん mailto:sage [2007/12/31(月) 23:07:17 ID:???] ドキュメントルートの上に置けよと
550 名前:nobodyさん mailto:sage [2007/12/31(月) 23:07:40 ID:???] includeする時は別にHTTPでアクセスする訳じゃないから localhost許可する必要すらないよ。 普通に全て拒否すればおk
551 名前:nobodyさん mailto:sage [2007/12/31(月) 23:12:28 ID:???] おいらはクラスや関数にして、直接呼び出しても出力や処理が実行されない形で書くから、 そういうのは気にして無いな。 その他には、他の人と重複するけど、 ・Webサーバから直接アクセスできない場所に置く ・htaccessを使うなどして、アクセスを制限する ・設定ファイルなどで定数を設定して、インクルードファイル内でそれを確認 ってところかな。
552 名前:nobodyさん mailto:sage [2007/12/31(月) 23:22:44 ID:???] Webサーバからアクセスできない場所に置いたらincludeできねーだろw
553 名前:nobodyさん mailto:sage [2007/12/31(月) 23:26:57 ID:???] まぁ所有者と権限の設定をきちっとしろよという事だな
554 名前:nobodyさん mailto:sage [2008/01/01(火) 00:01:03 ID:???] あけおめ
555 名前:nobodyさん [2008/01/01(火) 00:03:26 ID:QS3lzF/U] くわしい解説ありがとう 勉強になりました あけましておめでとうございます!
556 名前: 【中吉】 【1298円】 mailto:sage [2008/01/01(火) 00:42:52 ID:???] <?php echo "A Happy New Year !!\n"; ?>
557 名前:nobodyさん [2008/01/01(火) 01:54:00 ID:mia1J22w] PHP5の正規表現について質問です。 PHP5.2.5 (cli) を使用しています。 1. PHPスクリプトのエンコードはUTF-8 mb_regex_encoding('UTF-8'); mb_internal_encoding('UTF-8'); 2. 2ch.net/ を fsock で取得(これは問題なし) 3. mb_convert_encoding で UTF-8 に変換(これも問題なし) 4. その文字列を正規表現で処理…(ここで問題発生) //if (mb_eregi('<div[^>]*>(?:(?!</div>)(?:.|\s))*?利用者各位', $body, $matches)) // 動かない(エラーも吐かずに停止状態になる) if (mb_eregi('<div[^>]*>(?:(?!</div>)(?:.|\s))*?利用者各位', $body, $matches)) // 動く print_r($matches); else echo 'NO MATCH'; 正規表現的に問題は無いと思うのですが… 「(?!</div>)」を消したり、「(?:.|\s)」を「(?:.|s)」や「.」にすると動きます。 「.」が改行にマッチするので、「.」に置換すればいいのですが、何故この様な事になるのか解りません。 何か無限ループ的なことになっているような気も…
558 名前:nobodyさん [2008/01/01(火) 02:58:34 ID:mia1J22w] 確認用ソースです。[\r\n] でも発生する事があるようです。 abc.s65.xrea.com/prox/wiki/?plugin=attach&pcmd=open&file=mb_eregi_test.php&refer=%A5%A2%A5%C3%A5%D7%A5%ED%A1%BC%A5%C0
559 名前:nobodyさん [2008/01/01(火) 03:19:28 ID:mia1J22w] PHP4.4.7だと正常に動作しました。 MLog: [PHP-users 29514] Re:UTF-8、正規表現で全角スペースがヒットしないことがある? mlog.euqset.org/archives/php-users.php.gr.jp/29514.html 見たいなのも有るようなので、仕様(納得行かないのでバグのような気がしますが)でしょうか・・・?
560 名前:nobodyさん mailto:sage [2008/01/01(火) 03:21:45 ID:???] >>559 のURLは関係無かったようです
561 名前:nobodyさん mailto:sage [2008/01/01(火) 04:44:18 ID:???] まず読め→【PHP マニュアル】www.php.net/manual/ja/ PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。 過去スレ、関連スレ、FAQなどは>>2-10 辺り ◆前スレ 【PHP】下らねぇ質問はここに書き込みやがれ 60 pc11.2ch.net/test/read.cgi/php/1196511516/ ◆質問する時の注意 ・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ) ・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。 ・ 己の行った操作、変更などを詳しく明記すること。 ・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。 ・ 質問者として、態度をわきまえること。 ・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。 ◆質問後の注意 ・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない) ・2回目以降は最初に質問した際のレス番号を名前欄に入れること。 ・解決しなくても回答をもらった場合はお礼を言うこと。 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。) ◆回答者への注意 ・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。 【その他諸注意】 ・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ ・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
562 名前:nobodyさん mailto:sage [2008/01/01(火) 04:48:03 ID:???] >>561 そろそろいい加減にしないとアク禁されんぞ
563 名前:nobodyさん mailto:sage [2008/01/01(火) 06:09:31 ID:???] PHPで、既存のクラスにメソッドを追加することはできませんか? RubyやPythonやJavaScriptでは、既存のクラスに対してあとからインスタンスメソッドやクラスメソッドを追加できるんですが、同じことをPHPでしようとして、やり方が分からず困ってます。 なおこの質問はPHP批判ではなく純粋に質問なので、「Ruby使えやボケ」とかはなしでお願いします。
564 名前:nobodyさん mailto:sage [2008/01/01(火) 06:13:35 ID:???] >>557 その現象が発生する $body はどんなの? なるべく短いのを書いてみて。
565 名前:nobodyさん mailto:sage [2008/01/01(火) 06:18:22 ID:???] >>563 PHPをハックすればできるんじゃない? ていうか既存のクラスいじるとかトリッキーなことしないで、 継承してからいじればいいと思う。 クラスの再利用ってそういうものでしょ。
566 名前:nobodyさん mailto:sage [2008/01/01(火) 06:45:56 ID:???] >>565 継承すると別のクラスになります。 使おうとしいてるライブラリがクラス名を固定しているため、他のクラスは使えません。 factory methodとかDIコンテナを使っていればいいのですが、そうではないので、継承では解決できません。
567 名前:nobodyさん mailto:sage [2008/01/01(火) 06:52:45 ID:???] 単純な興味なんだけど 何のクラスにどういうメソッドを追加しようとしてんの?
568 名前:nobodyさん mailto:sage [2008/01/01(火) 06:59:41 ID:???] >>557 止まってるんじゃなくて、マッチングに時間がかかってるだけみたい。 対象文字列を短くしたら、数秒で終わるようになった。 たぶんeregi()のマッチングアルゴリズムがまずいんだろう。 UTF-8でいいなら、mb_eregi()のかわりにpreg_match()を使って、パターンに u オプション使えばいい。 それから、質問するときは現象が発生する最小限のコードにしてほしい。 getPage()とかいらんから、対象文字列を短くしてコードに貼付けるべし。
569 名前:nobodyさん mailto:sage [2008/01/01(火) 07:02:35 ID:???] つかあえてeregi使う利点ってあんの?
570 名前:nobodyさん mailto:sage [2008/01/01(火) 07:03:40 ID:???] >>567 privateやprotecedになっているインスタンス変数に対して、publicなアクセッサを定義したいというだけです。 他人が作ったまずい設計のクラスを、なんとかして使わなければいけないときに、RubyやPythonだとなんとかできてしまうので、同じことがPHPでもできたらいいなと思って。
571 名前:nobodyさん mailto:sage [2008/01/01(火) 07:19:12 ID:???] ふーん、ま無理だから自力で何とかするのがいいかと
572 名前:nobodyさん [2008/01/01(火) 07:37:33 ID:9i91PKAG] 皆さんあけおめです php_qrってのを使おうと思ったんですが、インスコまではやったんだけど php_output_from_zvalがみつかんねぇってこと言われました php_output_from_zvalってなんのパッケージ入れればいいんですか?
573 名前:nobodyさん mailto:sage [2008/01/01(火) 07:46:35 ID:???] PHPのバージョンが合ってないんじゃね
574 名前:nobodyさん [2008/01/01(火) 07:54:18 ID:9i91PKAG] >>573 php4なんですが、php_qr-0.1.0.tgzとphp_qr-0.1.3.tgzを試したんですが出来ませんでした。 php4ではどのバージョンを使えばいいんでしょうかね? とりあえずエラーメッセージ載せておきます Warning: dl(): Unable to load dynamic library '/usr/lib/php4/qr.so' - /usr/lib/php4/qr.so: undefined symbol: php_output_from_zval in /var/www/html/index.php on line 3
575 名前:nobodyさん mailto:sage [2008/01/01(火) 09:04:48 ID:???] >>564 ,568 有難うございます。色々試してみた所、仰るとおり、 PHP5だと何故か異常に時間が掛かるだけで(PHP4だと一瞬)、固まっている訳ではなかったようです。 どういう表現&対象文字列だと遅くなるのかがよく解らなくて困りますが… 一応、テストに使用したスクリプト、対象のソース、結果を纏めた物を用意してみました。 abc.s65.xrea.com/prox/wiki/?plugin=attach&pcmd=open&file=mb_eregi-test.zip&refer=%A5%A2%A5%C3%A5%D7%A5%ED%A1%BC%A5%C0 後、異常に遅い表現は、preg_match + i,s,uオプション ではマッチしないようです(PHP4.4.7のmb_eregiだとマッチする)。 もう訳が解りません…
576 名前:nobodyさん mailto:sage [2008/01/01(火) 09:27:18 ID:???] >>574 そりゃドキュメントなりリファレンスなりreadmeなり見れば書いてあるんじゃないの あとは作者に聞け
577 名前:574 mailto:sage [2008/01/01(火) 09:54:04 ID:???] しょうがないからコード書き換えた php_qr.cの594行目のチェックをはずしたらうまく行ったっぽい