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

【PHP】下らねぇ質問はID出して書き込みやがれ 127

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2013/03/19(火) 22:13:49.76ID:???
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 126
http://kohada.2ch.net/test/read.cgi/php/1359808868/

◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)

◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0708nobodyさん2013/05/02(木) 05:49:01.99ID:PlTCCm2Z
Nagios のプラグインが使える監視ツールを作ろうと思っています。
そのプラグインの使用は、終了コードと標準出力にテキストを出すというものです。
exec 関数でやればいいようですが、処理の並列化のため、

exec ('/pathto/program > /dev/null &', $output, $return_var);

とすると、標準出力を得られません。何かいい方法はありますか?
ファイルにリダイレクトしてそれを読むのでしょうか?いやいや。
07097032013/05/02(木) 07:53:36.09ID:7Z0Os0eY
みなさん回答ありがとうございます。
回答をもとに対応してみたいと思います。
ありがとうございました。
0710nobodyさん2013/05/02(木) 08:21:52.96ID:???
>>708
いやいや。
0711nobodyさん2013/05/02(木) 10:52:24.02ID:???
>>708
何をしたいのか良くわからないが、ここが参考になるかもな。

PHPでプロセスを呼び出してパイプで繋ぐ方法
http://d.hatena.ne.jp/UDONCHAN/20101116/1289891757
0712nobodyさん2013/05/02(木) 13:41:47.39ID:???
カーセックス最高
0713nobodyさん2013/05/02(木) 15:03:31.48ID:???
>>708
標準出力捨ててんのに何がしたいのよwwwwww
非同期で標準出力取りたいなら、どっかのファイルにぶち込んで
別のプロセスでそのファイル監視し続けるしかないんじゃないの?
0714nobodyさん2013/05/02(木) 15:08:06.58ID:???
他言語のスレッドみたいな感覚で使いたいんだろうなあというのは伝わってくる
0715nobodyさん2013/05/02(木) 16:03:05.63ID:???
結局 nagios のソース読んだら、
fork して子プロセスで popen して読み取って、
ファイルに書き出してやがったですよ!
0716nobodyさん2013/05/02(木) 16:04:02.00ID:???
ぽぺん
0717nobodyさん2013/05/02(木) 20:20:16.22ID:???
ありがち
そして事態はより複雑に
0718sage2013/05/03(金) 07:54:54.79ID:???
上の方でも出てますがエラーを取得するのにerror_get_last()が使えるとありますが
複数のエラーが発生した場合は最後のエラーしかとれません。
エラーをすべて取得する方法ってありますか?
0719nobodyさん2013/05/03(金) 08:03:38.10ID:???
ログとれログ
0720sage2013/05/03(金) 08:59:40.30ID:???
レンタルサーバーでもログとか取れるもんなのでしょうか?
0721nobodyさん2013/05/03(金) 09:19:17.66ID:???
レンタル鯖っつったってphpとperlしか動かないものからOS自分で入れるものまで色々あるがよ・・・
0722nobodyさん2013/05/03(金) 12:58:19.36ID:???
apacheの生ログ見られる鯖はある
0723nobodyさん2013/05/03(金) 13:11:02.95ID:???
>>721
適当にあたりをつけて回答しろよ
なんでもヒントが出てくると思ってんじゃねーぞ
0724nobodyさん2013/05/03(金) 16:06:03.57ID:???
えっ
すみませんココ試験会場だったのですね間違えました
0725nobodyさん2013/05/03(金) 18:08:11.32ID:???
VMとかrootあるなら見れるとこ多いけど
普通のレンタル鯖だと生ログ見れるところはないと思う

phpとかPerlしか動かせない鯖だと全部のエラーをキャッチしておくってのは無理じゃないかな
0726nobodyさん2013/05/03(金) 18:23:59.04ID:???
>>725
wkey.meだけどユーザー毎のホームディレクトリにlogディレクトリがあってそこにログたまっていくぞ
0727nobodyさん2013/05/03(金) 18:54:53.52ID:???
レンタル鯖っていっても昔と違って数百円/月で仮想root付きのがあるからなぁ
0728nobodyさん2013/05/03(金) 20:24:59.12ID:???
仮想サーバほしいなら貸そうか?

なんつって
0729nobodyさん2013/05/03(金) 20:43:05.77ID:???
月1000円未満で借りられるVPSがたくさんあるのに、今時プログラマがレンタルサーバ
借りる理由ってなんだ?
0730nobodyさん2013/05/03(金) 20:46:04.14ID:???
管理がめんどくせえ
0731nobodyさん2013/05/03(金) 20:54:23.17ID:???
セキュリティも考えると全部管理すんのめんどくせーよ
0732nobodyさん2013/05/03(金) 21:34:09.24ID:???
節子、それレンタルサーバや

>月1000円未満で借りられるVPSがたくさんあるのに、今時プログラマがレンタルサーバ
0733nobodyさん2013/05/03(金) 22:30:55.67ID:???
クラウドで、サーバー立て放題
いまどき、負荷で他人に迷惑とか心配するようなのなんで借りるのか。
0734nobodyさん2013/05/03(金) 23:22:55.41ID:???
楽だから
0735nobodyさん2013/05/04(土) 01:24:08.92ID:???
>>732
レンタルサーバとVPSって別物だよ
まあごっちゃにしてる業者があるのかもしれんが
0736nobodyさん2013/05/04(土) 02:24:53.02ID:???
めんどくさいから、って大きな理由だよな。
0737nobodyさん2013/05/04(土) 04:30:06.34ID:???
>>735

借りられるVPSがレンタルサーバーではないだと!?
0738nobodyさん2013/05/04(土) 04:56:11.79ID:???
さすが連休だな
0739nobodyさん2013/05/04(土) 08:14:30.77ID:???
そういういみでいえばホスティングでもレンタルサーバーになるんだよな
0740nobodyさん2013/05/04(土) 15:34:13.29ID:???
レンタルサーバーって営業形態を指す言葉だろ
0741nobodyさん2013/05/04(土) 16:03:20.74ID:???
サーバを借りるって意味だろ
0742nobodyさん2013/05/04(土) 16:09:50.75ID:???
http://e-words.jp/w/E383ACE383B3E382BFE383ABE382B5E383BCE38390.html

語源や言葉の意味なんてころころ変わるもの
だいたいIT用語なんて確立した意味をもつものは少なく曖昧な意味が多い
下らない争いしてんじゃねえよ
729も用語無理して使うな(下手に曖昧なこというな)
732も意図理解しててあえて突っ込んでやるな
共用サーバって言いたかったんだろ
0743nobodyさん2013/05/04(土) 17:00:42.40ID:???
レンタルサーバもVPSもVPCも共用サーバといえるわな
0744nobodyさん2013/05/04(土) 19:34:20.11ID:???
物理的には共用サーバだが論理的には専用サーバとか
そういうたぐいのめんどくせー話はいらんわ
0745nobodyさん2013/05/05(日) 01:54:18.29ID:???
何にもめんどくさいないのに
0746nobodyさん2013/05/05(日) 01:55:09.42ID:???
ここ何スレ?
0747nobodyさん2013/05/05(日) 03:48:45.37ID:???
>>746
歴史板へようこそ
0748nobodyさん2013/05/05(日) 17:12:44.70ID:WrP9RIzV
db登録ユーザーが大別して2種類います。
IDの先頭にsenior(シニア)がつくユーザーと、つかないユーザーです。

senior102315
senior102516
112316
senior118311
120210
121653
・
・

seniorを削除して全ユーザのIDを数字のみにしたいのですが

UPDATE `table_ID` SET `field_ID` = REPLACE(`field_ID`,'senior','');

記述がどこか違っているのかわかりません。
一括削除の操作は別のコマンドを使うのでしょうか?
0749nobodyさん2013/05/05(日) 17:28:37.62ID:???
それdbの質問じゃ?
間違ってるようにみえないけど、試しに select してみ
SELECT field_ID , REPLACE〜 FROM 〜
とかさ
0750nobodyさん2013/05/05(日) 17:58:30.08ID:WrP9RIzV
スレが違うとのこと、すみません
そうそうに引き揚げますのでこれだけみてください
なぜ機能しないのでしょう
SELECT field_ID, REPLACE(`field_ID`,'senior','') FROM `table_ID`;
0751nobodyさん2013/05/05(日) 18:04:11.71ID:???
引き上げてねえww
0752nobodyさん2013/05/05(日) 18:09:18.89ID:???
ここで聞いてるってことは、phpから呼んでるんだよな?
機能しないってのは結果が0件とか?
エラー表示させるとか、一番単純なやつで結果見るとかしてみては
0753nobodyさん2013/05/05(日) 18:19:38.27ID:???
そもそも設計が悪いだろ
IDは数値のみでもってシニアかどうかはフラグでもつければいいのに
0754nobodyさん2013/05/05(日) 19:01:15.54ID:???
IDが重複して主キー制約に引っかかってるとエスパー
0755nobodyさん2013/05/05(日) 19:42:00.33ID:???
phpスレらしく全部selectして

$newid = preg_replace("/senior/","",$oldid);
$query = "update usertable set id = $newid where id = $oldid";

とかどうかな
0756nobodyさん2013/05/05(日) 19:46:29.03ID:???
>>753
設計したクソ野郎は既にどっか消えたとかよくある話
0757nobodyさん2013/05/05(日) 19:49:51.60ID:???
今は既存のDBに好きなカラム付け足したり
制約コロコロ変えたり拡張が簡単になってるんでそ
断片化が半端なさそうだが
0758nobodyさん2013/05/05(日) 20:02:15.57ID:???
昔はカラム追加できなかったんかw
0759nobodyさん2013/05/05(日) 20:18:14.45ID:???
できる範囲のことはDB側でやったほうがいいっていうけど
SQLの知識が足りないなら無理せず>>755みたいにPHP側に回せばいいだけだな
0760nobodyさん2013/05/05(日) 20:24:49.96ID:???
内容的にどうせ1回しかやらねー処理だし、足りない頭で変にクエリをあれこれ考えるよりphpでやっちまったほうが早いだろうな
0761nobodyさん2013/05/05(日) 20:26:34.38ID:???
クエリのほうが楽だろ
0762nobodyさん2013/05/05(日) 20:32:37.47ID:???
足りてる頭でやるならな
0763nobodyさん2013/05/05(日) 20:34:58.73ID:???
PHPが始めての場合
PHP→SQLって流れが一般的かと
そうするとPHPのほうが楽な人も多いと思う
0764nobodyさん2013/05/05(日) 22:44:00.67ID:???
>>760
そりゃお前がSQLの知識ないだけ
0765nobodyさん2013/05/05(日) 23:35:38.19ID:???
>>764
10人いたら9人分かるコードにしとかないと。
いまのところ2人でてきたしダメだろ。
0766nobodyさん2013/05/05(日) 23:54:57.58ID:???
SQLでできることをわざわざPHPを介して操作とかいくらなんでも馬鹿すぎる
0767nobodyさん2013/05/06(月) 00:18:24.18ID:???
まったくだ
アホばっか
0768nobodyさん2013/05/06(月) 00:23:13.86ID:???
>>748がスカタンだからそういう話になってんだろ
そりゃSQL自由自在に使える奴ならSQLでやったほうが早いに決まってる
0769nobodyさん2013/05/06(月) 00:37:03.05ID:???
そうでもない
0770nobodyさん2013/05/06(月) 00:37:36.77ID:???
>>765
無知w
0771nobodyさん2013/05/06(月) 00:39:03.38ID:???
クエリって何?
SQLの方が理解できる人多いと思うわ
0772nobodyさん2013/05/06(月) 00:39:06.99ID:???
>>755
いい感じだな
0773nobodyさん2013/05/06(月) 03:29:25.92ID:???
>>771
S,Q,Lまで知ってて、Qだけ何?とかないだろw
0774nobodyさん2013/05/06(月) 04:49:12.12ID:???
1回しかやんないんだから求める結果が得られればPHPでもSQLでもいいとおもうけどな
継続的にやるとかなら負荷とか処理速度とか考えるけど
0775nobodyさん2013/05/06(月) 04:56:27.67ID:???
SQLでやるデメリットって何
0776nobodyさん2013/05/06(月) 07:17:16.77ID:???
特定の処理に弱いとかもあるだろうけど
多くの場合PHPで加工を入れたほうが遅いのは想像に易い
が一応ちゃんとベンチとってからそういう事言わないとな

PosqlみたいなのもあるしSQLが早いっていう考えはちょっとおかしい
0777nobodyさん2013/05/06(月) 10:20:41.47ID:???
SQLでやるとバグの温床になりそうな処理はあるな
パッと見て何がやりたいのか、なんでそうなるのか凡人の頭じゃさっぱりわからないキチガイSQL
0778nobodyさん2013/05/06(月) 11:08:56.63ID:???
SQLがわからんとか、さすがにネタだよね?
いくらなんでも片手間の俺よりはできるだろうと思って外注に出してるけど、
業者さんがこのレベルってことはないよね?
0779nobodyさん2013/05/06(月) 11:43:30.00ID:???
>>777
PHPでやったってスパゲッティコード書けば同じだろ
0780nobodyさん2013/05/06(月) 11:49:12.07ID:???
言語の問題ではなくそれを書く人の問題だってこと分かってないよなw
まぁSQLやらない/できない言い訳を必死に考えてんだろうけど
0781nobodyさん2013/05/06(月) 11:54:27.69ID:???
馬鹿?
SQLでやったほうがいい処理もあるし、PHP側でやったほうがいい処理もあるに決まってんだろ
そんなにSQL好きならHTMLタグまで全部SQL側で生成しろよwwwww
0782nobodyさん2013/05/06(月) 17:11:55.85ID:???
馬鹿はお前だ
0783nobodyさん2013/05/06(月) 20:04:40.44ID:???
視野の狭い奴ばっかだな
0784nobodyさん2013/05/06(月) 20:05:17.12ID:???
視野の広いコメントをよろしく
0785nobodyさん2013/05/06(月) 20:48:18.75ID:???
>>778
外注とはコスト削減のために使うものであって、自分より質の高いものを得るために使うものじゃない(確信)
0786nobodyさん2013/05/06(月) 21:16:20.05ID:???
えっ?
0787nobodyさん2013/05/06(月) 22:16:45.77ID:???
>>778はとりあえずスレチだから放っておけ
初心者だらけのスレで何を言ってるんだって感じだな
0788nobodyさん2013/05/06(月) 22:19:17.49ID:???
このスレって初心者用スレだったっけ?
0789nobodyさん2013/05/06(月) 22:33:00.24ID:???
>>788
素でそう思ってるんだが違うのか、、、
0790nobodyさん2013/05/06(月) 22:59:21.71ID:???
初心者だらけとはいったが初心者用とはいってない
0791nobodyさん2013/05/07(火) 00:30:53.24ID:???
(キリッ
0792nobodyさん2013/05/07(火) 01:37:23.03ID:zoq9xUOz
質問おねがいします。
phpって実行時に一度C言語に変換された後機械語に変換されるんですか?
それともphpインタプリタが直接機械語に変換するのでしょうか?
プログラムの動作する仕組みがよくわからないので教えてください。
0793nobodyさん2013/05/07(火) 02:15:58.09ID:???
>>792
後者
0794nobodyさん2013/05/07(火) 02:41:07.19ID:zoq9xUOz
>>793
あざっす。
その変換されたものをファイルに書き出すことってできないんですかね?
というのも実行時にいちいち変換するより、もうほとんど手を加えないとういプログラムなら
変換したものを動作させたほうが速いだろうと思うのですが。
開発中 -> インタプリタで実行するごとに変換
本番環境 -> コンパイル?されたファイルを変換せずに実行
0795nobodyさん2013/05/07(火) 04:43:13.60ID:???
できたらみんなやってる
0796nobodyさん2013/05/07(火) 06:06:21.19ID:zoq9xUOz
>>795
そうなんですか。ありがとうございます。
初心者が言うのも変ですが、変換はできてそれを実行もできるのに
変換したものを保存することができないってのがよくわからんです。
c言語ならコンパイルしたものがファイルとして保存できますよね。
なぜphpは変換したものが保存できないのですか?
0797nobodyさん2013/05/07(火) 07:00:35.00ID:???
>>794
http://www.php.net/manual/ja/intro.apc.php
0798nobodyさん2013/05/07(火) 08:19:30.37ID:???
eAcceleratorとかあるやろ
どうやってんのかしらんけど
0799nobodyさん2013/05/07(火) 09:24:00.12ID:zoq9xUOz
>>797,798
apc_bin_dumpfileでできましたー。
これ以前試したことがあってできなかったからapcはまだ不安定なんだと思ってたんですが、
php5.4.13 + apc3.1.13でファイルに書き出せました。

このバイナリデータはすでにphpは関係ないってことですよね?
ということはc言語も関係ないってことだと思うのですが、
これどうやって実行すればいいんでしょうか?
0800nobodyさん2013/05/07(火) 09:47:48.19ID:???
HipHop
HipHop VM
Phalanger
0801nobodyさん2013/05/07(火) 10:36:29.78ID:n6USVSPe
【OS名】Windows7
【PHPのバージョン】5.4.13
【連携ソフトウェア】
【質問内容】超初心者です。
HTMLの記述の中に、<?PHP 〜 ?>を書いて、そこにPHPプログラムを書いて動的なものにしていくと思うんですけど、
while とかで求める繰り返し処理をして連想配列から出した値を、HTMLの記述のあちこちに表示させたい場合、
その表示させたい箇所ごとにwhile分を使わないといけないんでしょうか?例えば
<?PHP
<body>
while (list($key,$val) = each($arr)){
echo "$key $val \n";
}
</body>
?>
の場合だと問題ないのですが、<body>にけっこう多いコードがあったときにもし"$key"と"$val"をバラバラの場所に
表示させたいときに、それぞれにwhileを使うしかないのでしょうか?
よろしくお願いします。
0802nobodyさん2013/05/07(火) 10:38:35.04ID:???
別に変数に丸ごと入れて一回で出力してもいいし
好きにやればいい
08038012013/05/07(火) 10:40:42.79ID:n6USVSPe
<?PHP
while (list($key,$val) = each($arr)){
echo "$key";
?>

  〜間にHTMLの記述〜

<?PHP
echo "$val";
}
?>

こんな感じで上と下に表示できるかなーと思ったのですが、ダメでした。
よろしくお願いします。
0804nobodyさん2013/05/07(火) 10:47:24.21ID:???
結局何をどうしてもループは複数回やらないとだめですよ
0805nobodyさん2013/05/07(火) 10:49:30.54ID:???
どうダメだったんだよ
間のHTMLは一回だけにしたいって意味?
ループ中は文字列変数につないでいって
ループ出てからechoすりゃ一回でいける。
08068012013/05/07(火) 10:56:47.81ID:n6USVSPe
そうです。1つのループで複数の変数を別の場所に表示しようとして、803のようなことを
やっったりしてました。
?>と<?PHPで、いったんPHPから抜けたら 間のHTMLはループされずに 
echo "$key" と echo "$val" だけループされるのかと思ったけど、そうなりませんでした。
変数につないでいってループ出てからechoをやってみます。
ありがとうございました。
0807nobodyさん2013/05/07(火) 10:57:43.28ID:???
何がしたいのかわからんが

$str = "";
while(...) {
$str = "<li>".$key."=>".$val."</li>";
}
echo $str;

echo $str;

echo $str;

後は好きにしろ
0808nobodyさん2013/05/07(火) 11:03:54.13ID:???
>>799
APCに読ませてPHPに実行させる。
独立したapacheモジュールみたいなものを書き出しているわけじゃないよ
■ このスレッドは過去ログ倉庫に格納されています