トップページphp
1001コメント347KB

【PHP】下らねぇ質問はここに書き込みやがれ 27

レス数が1000を超えています。これ以上書き込みはできません。
00011様2006/08/23(水) 00:54:52ID:uM5Jzzy0
PHPに関するくだらねぇ質問用スレです。ここならお前の下らない質問に回答があるかも知れません。

まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆質問する場合の注意
1. 自分のIDを表示させること。(メール欄に何も記述しないでください)
2. サーバーのOS、WebサーバーとPHPの種類やバージョン等を明記すること。
3. 己の行った操作、変更などを詳しく明記すること。
4. エラーメッセージはそのまま表記すること。「エラーが出ます」では絶対分かりません。
5. 質問者としても態度をわきまえること。
6. 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

◆質問後の注意
・質問者は必ずIDを表示させてください。(メール欄に何も記述しないでください。)
・2回目以降は最初に質問した際のレス番号を名前欄に入れてください。
  (逆に回答者は質問者に対して>>(アンカー)をつけて答えてください。)
・解決しなくても回答をもらった場合はお礼を言う。
  (荒らし、煽りは除く。逆に煽られたときも、無闇に反論せずスルーすべし)

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークはそれぞれの該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
・オブジェクト指向については良スレがないから本を買え。理解できないならムリに使うな。
・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
0951nobodyさん2006/09/03(日) 00:49:16ID:???
分かりやすく言うと「ヤニ中毒」って事だ
0952nobodyさん2006/09/03(日) 00:53:18ID:???
PEARのコーディング規約読んだのですが、ちょっと書いてなかったので質問します。

1. 関数名 (...)
2. 関数名( ... )

のどっちがいいのかなぁ?
0953nobodyさん2006/09/03(日) 01:02:15ID:???
たぶんこれ

function getManpo($tinpo)
{
????echo 'in';
}
0954nobodyさん2006/09/03(日) 01:13:00ID:???
>>952
俺は 関数名(...) だな。そこで空白をあけるイミってそんな感じない。
0955nobodyさん2006/09/03(日) 01:23:14ID:???
>>952
PEARスレ
http://pc8.2ch.net/test/read.cgi/php/1122899232/
0956nobodyさん2006/09/03(日) 01:49:16ID:???
見やすさの問題だろ?
どっちでもいいんじゃない?
0957nobodyさん2006/09/03(日) 05:29:55ID:???
設計について相談です。
▲▼を押すと選択しているデータの表示順番が変更出来る仕組みってありますよね?
例えば

▲▼ 0 あああ
▲▼ 1 いいい
▲▼ 2 ううう

という表示だとして、矢印を押して変更する場合、IFで上下の値を取得して
+-するという考え方で良いのでしょうか?
0958nobodyさん2006/09/03(日) 05:43:50ID:???
フォントにもよるしな
0959nobodyさん2006/09/03(日) 06:24:55ID:???
>>952
俺は一時期カッコの内側にスペース入れる主義で、エディタのマクロで入力しやすくしたりもしてた。
めちゃくちゃ見やすいし、ちょっと上級者っぽくて格好良いとすら思っていた。
けど、あまりに少数派なことと、スペースいれなくても別に見づらくないことに気づいてスペース入れない派に戻った。
0960nobodyさん2006/09/03(日) 08:28:07ID:???
インデントはタブ?スペース?
0961nobodyさん2006/09/03(日) 08:31:02ID:???
誰がなんと言おうとタブ
0962nobodyさん2006/09/03(日) 08:48:24ID:???
空白インデントはPEARみたいに配布前提の場合くらいじゃないの?
多人数開発でも自社内のみなら普通はタブだよね。
0963nobodyさん2006/09/03(日) 08:50:02ID:???
>>957
元々のデータの持ち方次第だと思うから
それだけだと何とも言えない。
何通りも手法はあると思うけど。
0964nobodyさん2006/09/03(日) 09:49:20ID:???
郷に入れば郷に従え
PEARの規約に準拠するよう書いている
スペース4つ
0965nobodyさん2006/09/03(日) 12:10:08ID:???
PEAR≠PHPの郷
0966nobodyさん2006/09/03(日) 13:14:22ID:???
>>957
すれ違いかもなー
09678842006/09/03(日) 13:55:28ID:mAZoIbaR
自己レスです。

PECLのバージョンをPHPとあわせないと
dllを読み込んでくれないようです。
新しいほうがいいに決まってるという先入観にやられました。

どうもおさわがせいたしましたー。
0968nobodyさん2006/09/03(日) 16:05:56ID:???
キー4回も押してらんないので、タブが圧勝。
0969nobodyさん2006/09/03(日) 16:17:20ID:???
>>968
お前はメモ帳でもつかってるのか?
0970nobodyさん2006/09/03(日) 16:37:11ID:???
>>965
PHPでのメジャーなコーディング規約ってPEARくらいしかないじゃん

>>968
釣りだと信じたいがスペースインデントでスペース分キー叩いてる人はいないぜ
0971nobodyさん2006/09/03(日) 16:52:23ID:???
Zend Frameworkにもあるよ
http://framework.zend.com/manual/ja/coding-standard.coding-style.html
0972nobodyさん2006/09/03(日) 17:55:23ID:???
>>969>>970
PHPエディタ使ってるけど、スペースインデントしようと思ったら
任意の幅だけキー叩く必要あるっしょ。
0973nobodyさん2006/09/03(日) 18:01:59ID:???
>>972
知らんがな。そういうエディタもあるってこった。
emacs だと TAB キーで指定幅のスペースインデントになるし。
09749522006/09/03(日) 18:08:23ID:???
みなさんありがとうございました。
ようは見やすさの問題なんですね……
0975nobodyさん2006/09/03(日) 18:09:10ID:???
>>971
ZFのもだいたいPEARベースの規約だしね
でどっちもスペース4だからまあこれでやっとけば問題ないかみたいな
0976nobodyさん2006/09/03(日) 18:12:52ID:???
>>974
見易さもあるだろうけど要はこれと決めて
チーム内で統一できてるかどうかじゃないかねえ
そのための規約だから
0977nobodyさん2006/09/03(日) 18:23:02ID:sakoO9rv
>>940
やっぱり何か変です

$str = "EFG";
$str = str_replace("EFG","、",$str);
echo $str;

こうすると「、」と出力されるのですが

$str = "EFG";
$str = str_replace("EFG","、",$str);
$str = str_replace("A","あ",$str);
echo $str;

とすると、「」と文字化けしてしまいます。

$str = str_replace("A","あ",$str);
これが、「B」のときや、「C」のときは文字化けせず
「A」のときのみ文字化けしてしまいます。
何がおかしいのでしょうか?
0978nobodyさん2006/09/03(日) 18:26:46ID:???
>>977

アホかおまえ。
0979nobodyさん2006/09/03(日) 18:42:24ID:???
>>977
str_replace は正式にはマルチバイト文字に対応してない
変換されたとしたらたまたま変換されただけ

mb_ereg_replace か preg_replace を使いましょう。
0980nobodyさん2006/09/03(日) 19:00:33ID:ddg00SBr
一度ブラウザからCGI(PHP)に起動が掛かったらセッションを保持して
3秒インターバルでブラウザに表示データを送る処理を作成しました。

2日間ほど連続で走らせたらブラウザの更新が止まってしまいます。
原因を推測できる方がおられましたら教えてください。
httpdのエラーログ、OSのsyslogに特に異常は見当たりませんでした。

------------------------
<?php
function main() {
while(1){
Display();
}
}

function Display() {
//JavaScriptで、location.reload を出力して再表示させています。
}
?>

------------------------
PHP4
apache2.0
Mozilla1.7.12
Linux 2.6.9
0981nobodyさん2006/09/03(日) 19:03:07ID:???
>>980
ソースが端折られ過ぎてて判断が出来ない
0982nobodyさん2006/09/03(日) 19:04:26ID:mAZoIbaR
Windowsサーバでの話なんですが、コマンドプロンプト開いて

C:\>notepad

なんて打つとメモ張が開きますよね?
PHPで

<?php
EXEC("notepad");
?>

っていうファイル(仮にhoge.php)を開こうとするとブラウザが読み込み中でとまってしまいます。
なんとなく仕様なのかなーとも思うんですが、ブラウザからメモ帳を開くようなことはできないでしょうか?

環境ですが、
(1) IIS + php5
(2) apache + php4
の両環境で試しても同じ結果でした。 よろしくお願いしますm(_ _)m
0983nobodyさん2006/09/03(日) 19:06:35ID:???
>>980
max_execution_timeで止まってんじゃねえの?
てかOSとかhttpdのログよりphpのエラーログ取れよ
0984nobodyさん2006/09/03(日) 19:08:49ID:sakoO9rv
>>979
ありがとうございます。
mb_ereg_replaceで解決しました。
ですが、サーバーに上げると文字化けが直っていません・・・
これは文字コードが関係するのでしょうか?
0985nobodyさん2006/09/03(日) 19:09:12ID:???
>>982
「サーバ側」で起動した notepad が終了するのを待っているからでしょ。
ブラウザからどこの notepad を起動したいの?
0986nobodyさん2006/09/03(日) 19:10:09ID:???
>>982
それはサーバー側でnotepadを実行して止まっているだけであってクライアントでnotepadが
勝手に起動したらこわいわw
09879822006/09/03(日) 19:13:55ID:mAZoIbaR
サーバ側のモニタ(というかマシンは1つしかない)で見てますが、
これって画面には表示されてないだけでメモ帳は開いているんですか?
0988nobodyさん2006/09/03(日) 19:19:21ID:???
>>987
今試したらプロセスには上がっていたぞ
ctrl + Alt + delet で確認な

っていうか上がるのか・・
0989nobodyさん2006/09/03(日) 19:19:45ID:???
>>987
start を使うか WSH(COM) を使うかしないと駄目かもね。
09909822006/09/03(日) 19:20:06ID:mAZoIbaR
自己レスです。
タスクマネージャ開いてプロセス見てみたら、確かに起動してました。
でも、画面には表示されないんですね。

では別の質問になりますが、クライアント側のメモ帳を開くなんてことはできないんですか?
勝手に起動したらこわい・・・んですか??(ごめんなさい、無知で)
0991nobodyさん2006/09/03(日) 19:21:39ID:???
>>990
普通に考えてみ、勝手にプログラム立ち上げれるという事はHDDの全てのデータも消す事も
できるって事だぞ。
09929822006/09/03(日) 19:23:48ID:mAZoIbaR
あわわわ、確かにそうですよね。ちょっと考えてみればわかることでした。(苦笑)

ご回答してくださったみなさまありがとうございましたm(_ _)m
0993nobodyさん2006/09/03(日) 19:24:20ID:???
それができればブラウザでアクセスしただけで
おまえのコンピュータの秘密のエロ画像
開くことだってできちゃうぜ!
0994nobodyさん2006/09/03(日) 19:44:28ID:???
preg_match('/無修正/')
0995教えて下さい2006/09/03(日) 19:57:19ID:???
ttp://co.hakenjob.com/ (派遣のHP)
上記のHPがあるんですがフレームページみたいな作り方してるんですが
よくみるとphp?page=で作成されてます。
こういった方法をなんというのでしょうか?
HTMLならフレームページっていうはずなんですけど。
このようなHPをPHPで作ってるのを解説してるサイトなどありましたら
教えて下さい。
上記の方法がなんという手法か全くわからないので検索もうまくかけれません。
このちらに居る方ならわかると思い質問してみました m(_ _"m)ペコリ
0996nobodyさん2006/09/03(日) 20:01:27ID:???
>>995
単に左にメニューっぽいの常に表示してるだけじゃない?
HTML読めるんならそのまんまPHPで再現するだけだよ。
何か勘違いしている。

フレームは使って無いでしょこれ
0997nobodyさん2006/09/03(日) 20:04:22ID:???
手法も何もこれ以上ないくらいシンプルな普通の作り
0998nobodyさん2006/09/03(日) 20:27:14ID:???
半角英数字のみTRUEにするにはどうすればいいですか?
0999教えて下さい2006/09/03(日) 20:28:43ID:???
>>996-997
ありがとうございます m(_ _"m)ペコリ
便利ですね。メニューを表示させるやり方。
参考になるサイトってどこかないでしょうか
phpでかかれてるサイトをみてもphpのソースが表示されてなくて;;
1000nobodyさん2006/09/03(日) 20:31:05ID:???
次スレはまだか?
後のことは頼んだぞ>>1001
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。