【PHP】下らねぇ質問はID出して書き込みやがれ 126
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2013/02/02(土) 21:41:08.72ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 125
http://kohada.2ch.net/test/read.cgi/php/1357738303/
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0446434
2013/02/27(水) 14:25:13.61ID:6JQheFYlやっぱりそうなんですね
アクセスごとに生ログを保存しつつ、
cronなどで集計するイメージでしょうか
参考になりました。
ありがとうございました。
0447nobodyさん
2013/02/27(水) 18:02:57.95ID:PEaEofv4$hoge = new self()
self()ってどういうことなんでしょうか
そのクラス自身をインスタンス化するってことなんでしょうか?
0448nobodyさん
2013/02/27(水) 18:15:09.30ID:???0450nobodyさん
2013/02/27(水) 18:22:01.15ID:???0452nobodyさん
2013/02/27(水) 18:49:12.26ID:???普通そんな名前つけないけど
0453nobodyさん
2013/02/27(水) 18:50:46.42ID:???0454447
2013/02/27(水) 18:52:14.18ID:PEaEofv4__constructでの記述ではなくて、わざわざnew self();にする理由はなんでしょうか
理解できてないソース
private static $_instance = null;
public static function getInstance() {
if (self::$_instance === null) {
self::$_instance = new self();
}
return self::$_instance;
}
selfってクラスはないです
PHPリファレンスにも同じような記述はあるのですが、解説もないのでわからないです
0455nobodyさん
2013/02/27(水) 19:09:42.92ID:???自分自身のインスタンスのインスタンスを作ってるだけ。
0456nobodyさん
2013/02/27(水) 19:10:20.67ID:???一個消してください・・・
0457nobodyさん
2013/02/27(水) 19:11:38.14ID:???0458nobodyさん
2013/02/27(水) 19:13:33.51ID:???普通は new Hoge()って書くんだよ
self()なんてPHPルール覚えたらだめ
0459447
2013/02/27(水) 19:37:18.12ID:PEaEofv4呼び出されたときに初回に自動的にそのクラス自体をインスタンス化するってことであってますか?
インスタンス化しなくても呼び出せる静的メソッドにしておいて、
静的メソッドを呼び出した際に、自動的にインスタンス化できるから
__constructを使わずに上記方法を使ってるってところでしょうか?
0460nobodyさん
2013/02/27(水) 19:47:05.26ID:???0461nobodyさん
2013/02/27(水) 20:28:55.66ID:???派生クラスのコンストラクタから基底クラスのコンストラクタを呼び出したいときなどには明示するよ。
あと、用途にもよるけど new static にするといい場面もあるよ。違いは調べてみてね。
>>458
なにそのクソ規約。
コンストラクタ名も__constructじゃなくてクラス名で書いてそうだね。
0462nobodyさん
2013/02/27(水) 20:33:54.10ID:???0463nobodyさん
2013/02/27(水) 20:37:37.90ID:???0464nobodyさん
2013/02/27(水) 20:46:11.11ID:???0465nobodyさん
2013/02/27(水) 21:14:05.24ID:???0466nobodyさん
2013/02/27(水) 21:50:51.34ID:???0467nobodyさん
2013/02/27(水) 22:10:36.17ID:???0468nobodyさん
2013/02/27(水) 22:15:43.19ID:???0469nobodyさん
2013/02/27(水) 22:27:04.15ID:???それを明示的にコールするっておかしくない?
initializeとか別メソッド作ってそっちを呼ぶならまだしも
0470nobodyさん
2013/02/27(水) 22:30:43.83ID:???0471nobodyさん
2013/02/27(水) 22:32:21.24ID:???0472nobodyさん
2013/02/27(水) 22:35:50.71ID:???http://ideone.com
0474nobodyさん
2013/02/27(水) 22:39:17.90ID:???>派生クラスのコンストラクタから基底クラスのコンストラクタを呼び出したいときなどには明示するよ。
これが分からん
0475nobodyさん
2013/02/27(水) 22:43:25.08ID:???通常暗黙に呼び出されるけど、基底クラスのコンストラクタを呼ぶときは__constructって関数名を使うよって話
0476nobodyさん
2013/02/27(水) 22:58:34.67ID:???道理で話が読めないわけだ
0477nobodyさん
2013/02/27(水) 23:01:00.00ID:???これは new self()と__constructの区別がはっきりしてない初心者だからこそじゃないの
んで、関連して>>458や>>463みたいなわけ分からん人が出てきた。
多重継承のある言語とは状況が違うんだけどそこを混同してんのかなぁとは思うけど
0478nobodyさん
2013/02/27(水) 23:08:25.38ID:???new演算子と、 コンストラクタはまったく別の概念。
コンストラクタなんて、なくてもいいんだぞ。
0479nobodyさん
2013/02/27(水) 23:10:02.86ID:???たぶんあなたが一番理解してない
あのコードの前には
private function __construct()
があるはずで
そこにself::$_instance = new self();を記述しないのはなぜかと聞いてるんだよ
0480nobodyさん
2013/02/27(水) 23:16:51.48ID:???>selfってクラスはないです
>PHPリファレンスにも同じような記述はあるのですが、解説もないのでわからないです
↓
>>458(ただし質問者に意味がわかるかは不明)
>なにそのクソ規約。
>コンストラクタ名も__constructじゃなくてクラス名で書いてそうだね。
↓
>>463
0481nobodyさん
2013/02/27(水) 23:18:22.20ID:???ごめんなさい。
>>459
うん、それに加えて、クラス自身にインスタンスを管理させることで、
インスタンスをひとつに制限する目的があるコードです。
>>478
それは暴論。コンストラクタを記述するかしないかで挙動が変わる場面はある。
>>479
そうなのかもね。
0482nobodyさん
2013/02/27(水) 23:27:31.43ID:???コンストラクタのないクラス想像すればいいんだよ。
new -> コンストラクタ みたいな話してるから、
インスタンスの生成に必須ではないコンストラクタの話で混乱してんだよ。
0483nobodyさん
2013/02/27(水) 23:33:32.60ID:???0484nobodyさん
2013/02/27(水) 23:35:22.96ID:???必須ではないというが、空のpublicコンストラクタの有無で挙動が変わる場面があることを
伝える必要はないのか
0485nobodyさん
2013/02/27(水) 23:36:19.11ID:???new self()が何をするものなのかが分からなかったんじゃない?
シングルトンを知っていれば予想はついたと思うけど、それも知らなかったのだろう。
0486nobodyさん
2013/02/27(水) 23:38:57.60ID:???0487nobodyさん
2013/02/27(水) 23:41:21.10ID:???質問者無視していろいろやってもあんまり意味ないからあれだけどさ、
無くてもいいと分かれば分かるもんがあるかもと思っただけだよ。
0489nobodyさん
2013/02/27(水) 23:52:19.04ID:???人それぞれだろ?
PHPでいちいちthisつけたりselfとかわけわからんのがあったり、
マジックメソッドだの、オーバーロードの意味が違うだの、
PHPルールが存在しても、それを把握するのは簡単だから、
PHP流の書き方を覚えるもよし、他言語に応用可能な書き方を覚えるもよし。
0490407
2013/02/28(木) 09:39:59.00ID:ZLVdVzup0491nobodyさん
2013/02/28(木) 09:50:31.67ID:???0492407
2013/02/28(木) 13:37:48.81ID:ZLVdVzupcurlで複数サイトのヘッダー情報を取得しているのですが
Aサーバー(レンタル)→エラー(Empty reply from server:リクエストが空です)
Bサーバー(ローカル)→取得できる
AでもBでもagentを送っています。差異はないはずです。
Empty reply from serverが発生する原因を教えていただけないでしょうか?
0493407
2013/02/28(木) 13:39:08.82ID:ZLVdVzupBサーバー(ローカル)では大抵取れてきます。
0494nobodyさん
2013/02/28(木) 13:46:22.44ID:???0495407
2013/02/28(木) 15:31:21.58ID:ZLVdVzupアクセス拒否でもAサーバーとBサーバーで違いが出るものですか?
特定のサーバーに対してヘッダー情報すら返さない事ってありえるのでしょうか?
0496nobodyさん
2013/02/28(木) 15:39:33.47ID:???シェル使えないのかな、そこ
0498407
2013/02/28(木) 16:03:20.32ID:???phpのcurlで繋いでいます。
>>497
リクエストが空のものは対象外として仕様扱いにしてもらう
事にしました。
ですが、そういうサイトからリクエストを返してもらう方法が
無いか調べてみます。
ありがとうございました。
0500407
2013/02/28(木) 16:30:09.79ID:???phpのcurlは今回初めて使っています。
CURLOPT_PORTは設定していないのでデフォルトで80になっています。
0501nobodyさん
2013/02/28(木) 16:52:29.73ID:???0502407
2013/02/28(木) 17:25:30.23ID:???javaならどう余裕なのでしょうか?
やった事ないですが、javaとc++とc#、.net、objective-cと大抵の言語は使えます。
0503nobodyさん
2013/02/28(木) 17:26:46.19ID:???DoSと勘違いされるような行為はしてないよね
0504nobodyさん
2013/02/28(木) 17:33:44.82ID:???0505nobodyさん
2013/02/28(木) 17:36:16.62ID:???サイトへ同時に接続できる数に制限がある。
それにファイルオープンとも関係しているはずでC言語を直に使っても
ファイルやサイトへのコネクションの総数は127以下までとか決まっている。
0506407
2013/02/28(木) 17:36:39.27ID:???ログに目新しいエラーはなかったです。
ここに貼り付けるのは確認がいるのでやめときます。すいません。
timeout設定していないので内部で何度もアクセスを繰り返している
可能性はありますね。
そういうサイトは対象外で扱うことにしました。
ありがとうございました。
0507nobodyさん
2013/02/28(木) 17:39:52.93ID:???プロバイダがP2Pと勘違いして規制することがあるらしい。
しかも規制されているのかどうかもよくわからないようにするために
コネクションを接続するわけでも切断するわけでもないらしい。
0508nobodyさん
2013/02/28(木) 17:41:18.71ID:???0511nobodyさん
2013/02/28(木) 17:52:18.40ID:???0513407
2013/02/28(木) 17:55:27.74ID:???共用ではないです。「某卒業式と言えばあの花」サーバーです。
>>509
通信相手はさすがに見えないです。外部のサイトなので
0514nobodyさん
2013/02/28(木) 18:14:12.64ID:???リクエストが空というのは、レスポンスが空の間違いだろうと思ってるんだけど、
なぜ空のレスポンスを返却するに至ったのかはサーバ側を見ないとどうにもならんとおもうんよ。
エラーになったサービス提供者に連絡してみたら?
こういうリクエスト送信してるんだけどーって。
0515nobodyさん
2013/02/28(木) 18:20:35.35ID:???知らない相手にリクエストぽんぽん投げる(のかどうかもわかっていない)とか怖くてできないわ
0516nobodyさん
2013/02/28(木) 18:34:06.76ID:???0517nobodyさん
2013/02/28(木) 18:35:46.16ID:???0518nobodyさん
2013/02/28(木) 18:36:29.59ID:???0519nobodyさん
2013/02/28(木) 18:39:40.39ID:???えっと、細かく言うと文化祭でQRコードをそこらじゅうに貼って、ピースを全部集めたら景品みたいなのを作ろうと思ってます。そこで個人を識別して表示を変えようと思っているのですが
0520nobodyさん
2013/02/28(木) 18:41:00.68ID:ypIDqyWFこれで大丈夫でしょうか
0521nobodyさん
2013/02/28(木) 18:51:18.64ID:???0522nobodyさん
2013/02/28(木) 18:58:49.74ID:???0523nobodyさん
2013/02/28(木) 20:38:09.60ID:???0524nobodyさん
2013/02/28(木) 20:58:06.96ID:???0525nobodyさん
2013/02/28(木) 21:08:01.80ID:???0526nobodyさん
2013/02/28(木) 21:11:40.43ID:???だめなやつは、フルブラウザ使うか新しいの買えって表示しとけ。
0527nobodyさん
2013/02/28(木) 21:22:34.25ID:???0528nobodyさん
2013/02/28(木) 21:34:39.91ID:b5zC+mlythrow new FileNotFoundException("ログファイルが存在しません");
} else if (!is_readable($log) || !is_writable($log)) {
throw new FileNotFoundException("ログファイルのパーミッションを変更して下さい");
}
こんなコードをファイルを読み書きするもの全てに対して行うのは冗長気味ですか?
0529nobodyさん
2013/02/28(木) 22:24:34.58ID:???対象の信頼性次第
0530nobodyさん
2013/03/01(金) 12:57:32.30ID:???0531nobodyさん
2013/03/01(金) 19:37:05.38ID:???PHPが最初から例外投げてくれれば苦労しないのに
0532nobodyさん
2013/03/01(金) 19:57:52.14ID:???set_error_handler(function ($errno, $errstr, $errfile, $errline ) {
throw new ErrorException($errstr, 0, $errno, $errfile, $errline);
});
0533nobodyさん
2013/03/02(土) 00:16:16.35ID:YI/QC52Q【PHPのバージョン】5.3
【質問内容】
自分のHPからのアクセス先を調べたいのですが、
リンクに一枚自サイトのページをかませてリダイレクトしないと調べられないでしょうか?
PHPかわからないのですが、
他人のサイトでマウスオーバーで表示されるアドレスは他サイトのアドレスなのに、
クリック数を集計できているようなサイトがあるのですが何か方法があるのでしょうか?
0534nobodyさん
2013/03/02(土) 00:27:46.96ID:???0535533
2013/03/02(土) 02:40:43.95ID:YI/QC52Qソース見てみたのですが、特にわかりませんでした。
なぜかaの要素にeiというのがあったくらいで、普通に他サイトにリンクされているみたいでした。
0537533
2013/03/02(土) 03:25:44.23ID:YI/QC52Q右側にクリックとあるのでなんらかの方法で集計しているように見えます
ttp://2ch-c.net/
0538nobodyさん
2013/03/02(土) 03:36:53.80ID:???宣伝したら2chから広告費請求されるのは知ってるよな?
サイト運営者じゃなくなりすましが宣伝してるならもっと面倒な話になる
0540nobodyさん
2013/03/02(土) 05:23:33.00ID:???function(){$('.et').click(functio 略
大して読んでないけどこの辺だと思うよ。
0541nobodyさん
2013/03/02(土) 05:25:27.27ID:???ともあれその手のアンテナサイトって総じてクソだよね
0542nobodyさん
2013/03/02(土) 11:36:25.72ID:1/7UEg02下記の場合は、
preg_match("/明治(?!学院)|明大/", $daigaku)
$daigakuの中に「明治」「明大」がある場合は、マッチするが「明治学院」がある場合はマッチングしません。
これに「明治時代」の場合もマッチングしないようにしたいと思い
preg_match("/明治((?!学院)|?!時代)|明大/", $daigaku)
とやりましたが駄目でした。
どのようにすればよいでしょうか?
PHPのバージョンは5.2
OSはCentOS5.1
0543nobodyさん
2013/03/02(土) 12:45:08.70ID:???0544nobodyさん
2013/03/02(土) 15:25:56.84ID:???ttp://job.j-sen.jp/28473/
0545nobodyさん
2013/03/02(土) 15:43:00.80ID:???■ このスレッドは過去ログ倉庫に格納されています