のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:126,332,157人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    私的良スレ書庫

    不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
    ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

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

    php スレッド一覧へ / php とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    901 : nobodyさん - 2013/09/15(日) 20:21:07.85 ID:??? (+28,+26,+0)
    >>900
    その書き込みtwitterでみたよ。
    902 : nobodyさん - 2013/09/15(日) 21:32:13.31 ID:??? (+22,+29,+0)
    またお前は自演荒らしか
    903 : nobodyさん - 2013/09/15(日) 22:36:33.28 ID:??? (-16,-9,-7)
    で?
    ベンチ結果は?
    904 : nobodyさん - 2013/09/16(月) 00:01:45.74 ID:K7nyvuoc (+24,+29,-10)
    オレが彼女できないのは、phpを極められないからなんですか?
    905 : nobodyさん - 2013/09/16(月) 06:06:04.38 ID:dXmcZfw0 (+12,-30,-149)
    質問です。(phpは初心者です)

    1つのwebページ(Aとする)内で、
    8つの異なるページ(Aとは別ドメイン)から
    スクレイピングしたいのですが、どうやるのかわかりません。

    8つともタグの構造は全く同じなので、全く同じ処理をしたいのですが、
    file_get_contentsではなく、Curlでしょうか。

    このページの内容だと具体的にどう記述していいのかわからなかったです・・。
    http://nanoappli.com/blog/archives/5743

    ・行ってみたこと
    file_get_contentsで8回処理を書いた
    →見た目は思い道りにできたがページの表示が重すぎる

    宜しくお願いいたします。








    【PHPのバージョン】5.3
    906 : nobodyさん - 2013/09/16(月) 06:19:29.70 ID:??? (-27,-30,-177)
    >> 895

    「ブラウザに普通に返すレスポンス」のことを話してるのに「ベンチマーク」がどうして必要なの?
    そりゃ何百万バイトもmb_convert_encoding関数にかけてたら時間はかかるでしょ。

    <?php
    set_time_limit(0);
    $time = 0.0;
    for ($i = 0; $i < 10000; $i++) {
    $t1 = microtime(true);
    $tmp = mb_convert_encoding($str, 'SJIS-win', 'UTF-8');
    $t2 = microtime(true);
    $time += $t2 - $t1;
    unset($t1, $tmp, $t2);
    }
    printf("10000回での算出平均: %f sec", $time / 10000);
    ?>
    907 : nobodyさん - 2013/09/16(月) 06:20:15.52 ID:??? (-28,-30,-264)
    >>895

    続き。

    $strはこのスレの記事を全表示したときのHTMLな。
    これをCorei7のローカルマシン上のPHP5.4で走らせたら 0.003398 sec だった。
    ideoneとかcodepadではページ量的な問題で出来なかったので割愛。
    この 0.003398 秒のために頑張る気になれる?

    ちなみにUTF-8で一貫してWebアプリケーションを作成して、ガラケーなどの端末向けに

    <?php ob_start() ?>
    ....
    ....
    <?php
    echo auガラケー ? mb_convert_encoding(ob_get_clean(), 'SJIS-win', 'UTF-8') : ob_get_clean();

    ってやるのが一般的な手法。
    実際はフレームワーク任せだと思うけどやってることはこういうイメージ。
    逆にエンコーディング変換にコストがかかるとかいってそれぞれロジックを組む方がバカバカしいと思わない?
    str_replaceやexplodeなどメジャーな関数を全部鬼車系の正規表現関数に書き換えなければならないってことになるよ。
    913 : nobodyさん - 2013/09/16(月) 09:32:47.72 ID:??? (-12,+0,-4)
    PHP宙の限界
    915 : nobodyさん - 2013/09/16(月) 11:51:17.72 ID:??? (+3,+15,+0)
    >>912

    ウィッスw
    916 : nobodyさん - 2013/09/16(月) 11:53:16.76 ID:??? (+24,+29,-14)
    >>910
    あっ・・・(気づかなかった)

    PHPにマルチスレッドはおろかマルチプロセスすらやらせることが誤っている(開き直り)
    917 : nobodyさん - 2013/09/16(月) 12:01:53.80 ID:??? (-28,-30,-150)
    >>914

    頼むからグローバル変数使うのだけはやめてお願い・・・
    個人的にはシングルトンにすればいいかなーと思う。


    class Hoge {
    ____
    ____private static $instance;
    ____private $pdo;
    ____
    ____public static function getInstance() {
    ________if (self::$instance === null) {
    ____________self::$instance = new self;
    ________}
    ________return self::$instance;
    ____}
    ____
    ____private function __construct() {
    ________$this->pdo = new PDO(~);
    ____}
    ____
    }


    $hoge1 = Hoge::getInstance();
    $hoge2 = Hoge::getInstance();
    // ↑この2つは完全に同じものを指していることになる

    コンストラクタをprivateにしてもクラス内からの呼び出しならば動くってこと意外と知らない人いたり。
    918 : nobodyさん - 2013/09/16(月) 12:13:13.25 ID:??? (-22,-12,+1)
    >>917

    イイネ!
    919 : nobodyさん - 2013/09/16(月) 13:08:34.65 ID:??? (+11,+29,-6)
    >>914までたどりついてSingleton思い浮かばないようならデザパタ入門コースだな
    921 : 905 - 2013/09/16(月) 13:31:43.95 ID:v3UCvtZR (-6,+29,-17)
    >>908,>>909
    ありがとうございます。
    自分にはまだハードルが高いのかもしれません。。
    でもなんとかやってみます!
    922 : nobodyさん - 2013/09/16(月) 14:16:27.50 ID:??? (-26,-28,-1)
    Qiitaはごく一部のイチャモン系ユーザーが邪魔
    923 : nobodyさん - 2013/09/16(月) 14:26:25.72 ID:??? (+22,+28,-2)
    925 : nobodyさん - 2013/09/16(月) 15:13:12.06 ID:SHQfZLVK (+28,+29,-8)
    >>923
    途中から変なの入ってきてワロタ
    phpでやることじゃないのに必死すぎるわ
    926 : nobodyさん - 2013/09/16(月) 15:17:55.94 ID:??? (-17,-30,-78)
    >>924
    3行で出力まですればいいの?

    foreach ($ary=array("○", "○", "○", "△", "△", "×") as $val1) foreach ($ary as $val2) $a[$x=$val1>$val2?$val1.$val2:$val2.$val1] = isset($a[$x]) ? ++$a[$x] : 1;
    arsort($a);
    print_r($a);
    927 : nobodyさん - 2013/09/16(月) 15:23:37.20 ID:??? (+18,+24,-3)
    >>926をもっと短く書いたコードください
    928 : nobodyさん - 2013/09/16(月) 15:23:58.96 ID:??? (+22,+29,+0)
    向こうのスレに書き込んでおいで
    930 : nobodyさん - 2013/09/16(月) 15:50:23.90 ID:??? (-27,-30,-45)
    foreach ($a=@[○,○,○,△,△,×]as$v)foreach($a as$k) $a[$x=$v>$k?$v.$k:$k.$v]=isset($a[$x])?++$a[$x]:1;arsort($a);print_r($a);
    932 : nobodyさん - 2013/09/16(月) 16:02:08.39 ID:??? (+27,+29,-6)
    あっちのスレ覗いてみたけどPHPってなんていうか原始的だね
    933 : nobodyさん - 2013/09/16(月) 16:08:31.95 ID:??? (+27,+29,-44)
    他の言語からPHPやったらどうしたらいいかわからないケースでも
    逆はその言語知ってる人にとっては回りくどいし汚くみえるけど対応可能
    C言語の流れを汲んでてよかったね
    934 : 914 - 2013/09/16(月) 17:20:50.83 ID:8/BhI2+E (-15,+29,-48)
    >>917
    こんなインスタンスを1つしか作らせない技があったんですね。
    これなら異なるクラス間でPDOのインスタンスを共有できますね。
    使わせていただきます、ありがとうございました。

    #ついでで失礼ですが、こういったテクニック・パターンが学べる
     サイトや書籍で何かオススメがあったら教えてください
    935 : nobodyさん - 2013/09/16(月) 17:41:43.55 ID:??? (+27,+29,-9)
    google開きます
    もっと見るおして書籍選びます
    デザインパターン GoF
    って入れてみます
    936 : mなんとか - 2013/09/16(月) 18:39:58.30 ID:??? (+28,+29,-43)
    >>934
    これとは関係ない例だけど、PDOを扱うなら是非見ていただきたいものがあるのでリンク貼っときます。
    飽きるぐらい貼りまくったけど自重しませんw
    http://qiita.com/mpyw/items/b00b72c5c95aac573b71

    >>912に個人特定されてるからもう何も気にしなくていいやw
    937 : nobodyさん - 2013/09/16(月) 18:41:35.76 ID:??? (-1,+5,+0)
    競技プログラミングできません
    939 : em1-113- - 2013/09/16(月) 19:40:49.51 ID:3h/0BZKN (+14,+29,+0)
    おれだよバカ
    940 : nobodyさん - 2013/09/16(月) 19:55:51.85 ID:??? (+30,+29,-30)
    自分が有名だと思っちゃってるダサイタマのチンピラ
    942 : 905 - 2013/09/16(月) 20:46:23.70 ID:v3UCvtZR (-20,+4,-15)
    すいません参考にしたページのURLが間違ってました
    こっちのソースでした
    http://techblog.yahoo.co.jp/architecture/api1_curl_multi/
    943 : nobodyさん - 2013/09/17(火) 01:03:27.60 ID:??? (+28,+29,+0)
    >>938 >>940
    実際何もできないよふぇぇ><

    >>939
    誰だよクソワロタwwwwwwwwwww
    945 : nobodyさん - 2013/09/17(火) 01:51:24.44 ID:??? (+25,+29,-10)
    >>942
    業者に頼めば?
    自助努力もできないゴミが調子に乗るな
    946 : nobodyさん - 2013/09/17(火) 06:28:06.82 ID:??? (-17,-30,-201)
    【OS名】リナックス
    【PHPのバージョン】5.3
    【連携ソフトウェア】SqLite

    $sql = "SELECT * FROM Review WHERE EXISTS (SELECT * FROM Review WHERE Number = ? AND IP = ?)";

    $query = $dbh->prepare($sql);
    $query->execute(array($Number,$IP));
    $res = $query->fetchAll(PDO::FETCH_ASSOC);

    IPとNumberがDBに入ってなかった場合にFALSEを返して貰いたいのですが、

    Fatal error: Call to a member function fetchAll() on a non-object in

    のエラーが出てしまいます。
    どこが駄目なのでしょうか?
    948 : nobodyさん - 2013/09/17(火) 06:45:07.85 ID:??? (+14,+26,-16)
    >>947
    投稿前にメール欄の確認すらできないヴァカは消えろ
    950 : nobodyさん - 2013/09/17(火) 06:53:44.48 ID:??? (+27,+29,-7)
    回答せずに人のミスに罵声浴びせてるだけの奴は消えていいよ
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について