【PHP】下らねぇ質問はID出して書き込みやがれ 105
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2011/03/17(木) 04:00:34.11ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 104
http://hibari.2ch.net/test/read.cgi/php/1297669559/
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0572nobodyさん
2011/04/09(土) 18:06:43.41ID:LAXo4B+J今、例外発生したらエラーコントローラに投げて例外情報に従った処理をするプログラムを書いています
そこで、throw new Exception();で指定できるexceptionの引数って、配列は無理なんでしょうか?
エラー発生時の状況を知らせたいので以下のようにやりたかったのですがエラーになりました
$errMsg = array(
'errType'=>'token_error',
'uId'=>$uId,
'uType'=>$uType,
'file'=>__FILE__,
'line'=>__LINE__
);
throw new Exception($errMsg);
マニュアルやエラーメッセージを見るとException([string $exception [, long $code ]])て書いてあるので
無理なのはわかるんですが、上記のようなエラーの詳細情報を投げたい時はセッションに情報を入れて
エラー処理(エラーコントローラのスクリプト)でセッションを拾って解析&実行するしかないですか?
皆さんどうやっていますか?
ご意見お願いします
0573nobodyさん
2011/04/09(土) 18:09:12.18ID:???0576nobodyさん
2011/04/09(土) 20:03:16.76ID:???○どうやればいいんでしょうか?
0577nobodyさん
2011/04/09(土) 20:22:47.86ID:???0578nobodyさん
2011/04/09(土) 20:32:48.96ID:???0579nobodyさん
2011/04/09(土) 20:33:07.06ID:???○継承
0580nobodyさん
2011/04/09(土) 20:34:56.50ID:???0581572
2011/04/09(土) 20:38:30.66ID:LAXo4B+J0584nobodyさん
2011/04/10(日) 03:42:37.21ID:???公式読んでおけばアホの相手をしなくて済むんだ
http://www.php.net/manual/ja/language.exceptions.extending.php
0585nobodyさん
2011/04/10(日) 10:06:16.88ID:vY8CJ6sh空の配列変数に値を入れたいのです
$ary = array(1 => "a" , 2 => "", 8 => "" , 9 => "b" , 10 => "")
があるとして、
繰り返し一回目で$ary[2]に代入、二回目で$ary[8]に代入…
という感じにしたいのです
毎回頭から空かどうか検索するのも効率悪そうですし、
なにかシンプルな方法があればご教授お願いします。
0586nobodyさん
2011/04/10(日) 10:37:17.11ID:???}
0587nobodyさん
2011/04/10(日) 10:37:56.27ID:???0588nobodyさん
2011/04/10(日) 10:50:55.33ID:He2iWruv$xml->name
↑これだとnameタグの部分しか出ませんが、
$xmlに入ってる生データをそのままごっそり出したいんです。
file_get_contentsとかでそのままとってきて吐き出すのはだめです。
xmlオブジェクトを何回か読んであるところまでスキップしてから吐き出したいもので。
お願いします。
0590nobodyさん
2011/04/10(日) 11:10:57.39ID:???毎回頭から検索じゃなくて前回見つかったインデックス番号を変数に保存しておいて、
そのインデックス+1から空を検索するようにすればいい
てか、そもそもforeachで$aryを検索するなら、勝手にポインタ保存されてるっしょ
0591nobodyさん
2011/04/10(日) 11:12:43.46ID:He2iWruvありがとうございます。やってみます
0592nobodyさん
2011/04/10(日) 11:35:41.27ID:???0593nobodyさん
2011/04/10(日) 11:40:26.75ID:???0594nobodyさん
2011/04/10(日) 11:49:39.04ID:???Win環境で自動アップデートできるなら欲しい
0595nobodyさん
2011/04/10(日) 11:59:44.13ID:???そういう意味での自動アップデートなら、既にyumがあるじゃん
windowsならインストーラがあるだろ
定期的にチェックして勝手にアップデートしてくれる機能だったら、馬に食わせるくらいしか役に立たない
0596nobodyさん
2011/04/10(日) 12:00:02.32ID:???0597nobodyさん
2011/04/10(日) 12:01:25.39ID:???0599nobodyさん
2011/04/10(日) 12:19:06.89ID:???0601nobodyさん
2011/04/10(日) 12:28:58.06ID:???荒れるから次の質問どうぞ。
0602nobodyさん
2011/04/10(日) 12:38:21.30ID:???0604nobodyさん
2011/04/10(日) 14:45:18.92ID:???0605nobodyさん
2011/04/10(日) 15:31:36.36ID:???0606nobodyさん
2011/04/10(日) 16:14:16.40ID:???0607nobodyさん
2011/04/10(日) 16:14:38.89ID:???0608nobodyさん
2011/04/10(日) 16:42:41.88ID:???0609nobodyさん
2011/04/10(日) 20:31:24.18ID:7H7FFmtv20KBくらいの画像が100KB越えになってしまい、古い携帯だと容量越えになってしまいます
容量小さくする方法ありますでしょうか?
それか、他に軽く文字を上に乗せる方法などありましたらご教授ください。
宜しくお願いします。
0610nobodyさん
2011/04/10(日) 20:59:41.47ID:???0611nobodyさん
2011/04/10(日) 21:01:43.61ID:???回答有難う御座います。
画像のサイズを20KBから10KBに落としたら90KBくらいになりました
処理だけで+80KBくらい上乗せされちゃうのは仕方ないのでしょうか?
0612nobodyさん
2011/04/10(日) 21:10:35.93ID:???http://php.net/manual/ja/function.imagejpeg.php
第三引数にqualityってのあるでしょ
それを見直しな
0613nobodyさん
2011/04/10(日) 21:19:04.00ID:???ありがとうございます。意味を穿き違えてました。
そのqualityを下げる処理をするために、
header('Content-Type: image/png');
imagepng($im);
を
header('Content-Type: image/jpeg');
imagejpeg($im);
として吐き出すようにしたら
それだけで90KBから14KBまで縮んでしまいました
png自体がそもそもの原因だったんでしょうか
0614nobodyさん
2011/04/10(日) 21:27:50.92ID:???0615nobodyさん
2011/04/10(日) 21:32:59.66ID:???imagepngの圧縮レベルのデフォルトがあまり高くないんじゃね?
マニュアルには
> 圧縮レベル。0 (圧縮しない) から 9 までの値です。
としか書いてないけど
imagejpegのほうは
> quality はオプションであり、0(品質は最低 ですが、ファイルはより小さい)から100(品質は最高ですが、
> ファイルは 最大)の範囲で指定します。デフォルトは IJG 品質値(75)です。
と書いてるからデフォルトである程度圧縮されてる
header('Content-Type: image/png');
imagepng($im, null, 9);
とかにしたらだいぶ小さくなるんじゃね?
0616nobodyさん
2011/04/10(日) 22:11:01.27ID:2E3V6CALコンソール画面でPHPを実行(またはcron)し、エラーが返って来た時のみ、特定のメールアドレスにメッセージを送るにはどのような処理を書けばよいのでしょうか?
例えば、次のコマンドをコンソール画面で叩いた場合
# /usr/local/bin/php /path/hogehoge.php
XML_Parser: Invalid character at XML input line 15
と返って来た場合、そのエラー内容をhogehoge@example.comにメールを送ります。
0617nobodyさん
2011/04/10(日) 22:22:25.53ID:???全部標準関数です
0618nobodyさん
2011/04/10(日) 23:45:40.01ID:???http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1159440211
0619nobodyさん
2011/04/11(月) 02:39:55.53ID:???>>616はPHPスクリプトの外でエラーを取得してメールを送りたいんじゃないの?
もっとも、そのPHPスクリプトの中でエラーハンドラを設定すれば済むだろうけど
0623nobodyさん
2011/04/11(月) 11:35:26.41ID:???>XML_Parser: Invalid character at XML input line 15
0624nobodyさん
2011/04/11(月) 12:46:19.04ID:???0625nobodyさん
2011/04/11(月) 12:52:57.75ID:???0626nobodyさん
2011/04/11(月) 13:12:31.34ID:???0627nobodyさん
2011/04/11(月) 13:17:55.00ID:???>2011/01/28
http://hibari.2ch.net/test/read.cgi/prog/1291518728/
>1 :amachang撲滅振興協議会:2010/12/05(日) 12:12:08
> amachangが憎い・・・・amachangが許せない・・・・
> ククク・・・・クククククク・・・・・
> クックックックックックックッ・・・・・
> クー、クー、クー、クー、クー、クー・・・・・
>
> もう許せない。
> もはや沸き上がる滅意を抑えることが出来ない!!!
0628nobodyさん
2011/04/11(月) 14:00:48.95ID:???0629nobodyさん
2011/04/11(月) 14:16:22.95ID:???0631nobodyさん
2011/04/11(月) 16:58:26.84ID:???俺答え知ってるぜーって自慢したいの?
0632nobodyさん
2011/04/11(月) 17:23:34.54ID:???0633nobodyさん
2011/04/11(月) 17:29:22.88ID:???0634nobodyさん
2011/04/11(月) 17:44:14.67ID:???0636nobodyさん
2011/04/12(火) 02:11:31.31ID:???PHPの教科書という本を終えて、さらにwebプログラミングについて学びたいと考えているのですが、フレームワークやCGI等、具体的にどんなことを勉強すればいいのか見えてこず困っています…。
皆さんは駆け出しプログラマのとき、どのように知識を増やしていきましたか?聞かせていただけると嬉しいです。
0637nobodyさん
2011/04/12(火) 02:48:56.55ID:???ネットワークに手軽にアクセス出来るスクリプト言語だろ。
0642nobodyさん
2011/04/12(火) 09:23:19.37ID:???そんなあなたには、こちらがお似合い!
【PHP】下らねぇ質問はID出さずに書き込みやがれ 1
http://hibari.2ch.net/test/read.cgi/php/1289117484/l50
0643nobodyさん
2011/04/12(火) 22:51:34.82ID:???0644nobodyさん
2011/04/13(水) 00:47:25.03ID:appmuAfb|id|name|age|
|1 |Aさん|10|
|2 |Bさん|15|
|3 |Cさん|13|
(以下略)
上のようなテーブルで、idが1,4,7,11,21,35・・・のいずれかのレコードを抽出したいのですが、クエリは
WHERE id = 1 OR id = 4 OR id = 11 OR ・・・
みたいにひたすらつなげて書くんでしょうか・・・何か短い書き方ありますか?
あと、ORが大量にあると負荷が極端に増えたりしますか?
0646nobodyさん
2011/04/13(水) 06:02:07.82ID:aY/2E/pl$ tar zxf APC-3.0.17p2.tgz
$ cd APC-3.0.17p2
$ phpize
$ ./configure --enable-apc
$ make
$ su -
# make install
思ったほどの性能ではなかったのでアンインストールをしたいと思って
pecl uninstall APC
rpm -ihv --test APC-3.1.7
yum remove php-pecl-apc
yum remove apc
といろいろ試したのですができません。
どうしたらでしょうか?OSはFEDORA14です。
0647nobodyさん
2011/04/13(水) 08:08:26.73ID:???idが、インデックス対象のカラムであっても、OR使ったらインデックスが使われない。
って、PHPの質問じゃねぇじゃん。
0648nobodyさん
2011/04/13(水) 10:31:24.37ID:???SQL文のほうはIN句を使えば多少短く書ける
PHPのほうは配列にidを格納してimplodeで繋げればいい
0649nobodyさん
2011/04/13(水) 10:36:11.94ID:???PHPの質問じゃねーし、makeコマンドはソースからのコンパイルビルドであって
パッケージのインストールじゃねえ
make uninstallでビルドしたファイルを削除してくれるソフトもあるから試してみれば?
0650。 ◆oDupeixhZv52
2011/04/13(水) 10:36:32.74ID:???0651nobodyさん
2011/04/13(水) 11:29:49.14ID:???どっちにしろPHP関係ないし。
0652nobodyさん
2011/04/13(水) 13:44:12.94ID:???0653nobodyさん
2011/04/13(水) 13:48:52.85ID:???これって無視していいんですかね?
具体的にはどんな問題が起きるんでしょうか?
0654nobodyさん
2011/04/13(水) 15:16:13.97ID:???>>649もかいてるけど、make installでインストールされたものをすべて消せばいいよ。
--prefixでディレクトリ指定してれば楽だったんだけどね。
それと、rpm -ihv は、インストール用コマンドだよ。
0656nobodyさん
2011/04/13(水) 15:35:08.26ID:???0657644
2011/04/13(水) 22:36:22.96ID:urwW+Turありがとうございます調べてみます
>>655
idは別のテーブルにカンマ区切りで格納しています
|1|グループA|1,2,5,7,…|
|2|グループB|1,3,4,5,…|
|3|グループC|2,3,4,6,…|
みたいな感じです
0660nobodyさん
2011/04/13(水) 22:44:29.40ID:???カンマ区切りで保持しているのが設計の誤り。
テーブルレイアウトを変更することができないなら、書かれていたように、長いSQLを発行する。
変更することができるなら、短いSQLを発行すれば、それよりもずいぶん速く結果を取得できるようになる。
続きはSQLスレあたりで。
0661660
2011/04/13(水) 22:46:13.47ID:???SQL質疑応答スレ 11問目
http://hibari.2ch.net/test/read.cgi/db/1299305530/
>>659
MySQLスレはややスレ違い。
0662nobodyさん
2011/04/13(水) 23:09:19.36ID:???0663644
2011/04/14(木) 00:24:00.71ID:???なんとなく正解がわかりました。ありがとうございます。
まだテスト段階だったので構造を直してチャレンジしてみます。
0664nobodyさん
2011/04/14(木) 00:36:14.23ID:???0665nobodyさん
2011/04/14(木) 02:31:23.67ID:???$result = mysql_query("SELECT * FROM Persons
WHERE FirstName='Peter'");
↑
Peterを変数に代入して入れたいんですけど、どうしたらいいですか?
0666nobodyさん
2011/04/14(木) 02:33:15.59ID:jIcMQS2c$result = mysql_query("SELECT * FROM Persons
WHERE FirstName= $omanko ");
↑でやっても駄目なんですよね...
0667nobodyさん
2011/04/14(木) 03:13:22.44ID:nz/ViMIK0668nobodyさん
2011/04/14(木) 03:55:45.55ID:???ひyな言葉ではしゃぐ中2のどちらかだろ
■ このスレッドは過去ログ倉庫に格納されています