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

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

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001nobodyさん2013/08/05(月) NY:AN:NY.ANID:dIT4JFvF
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

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

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

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

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

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

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・全員IDを出すことが推奨されるようになりました。IDなしは原則スルーすること。
0896nobodyさん2013/09/15(日) 13:07:06.23ID:???
え?コーディングの話?
0897nobodyさん2013/09/15(日) 15:15:04.94ID:???
リミットを制限する系って何だよwwwwwwwwwwwwwwww
0898nobodyさん2013/09/15(日) 17:50:29.80ID:???
個人的には「制限をリミットする系」の方が好みです!!!!!!!!!!
0899nobodyさん2013/09/15(日) 17:52:57.87ID:???
マジレスすると15年前のマシン使ってるとかじゃなければ>>895の言うような「負荷」は無いに等しい。
ブラウザに普通に返すレスポンスのエンコーディング変換ぐらいたかがしれてる。
0900nobodyさん2013/09/15(日) 18:26:20.42ID:???
ベンチ結果も出さずに無いに等しいとか言っちゃってるゴミがいるのはこのスレですか?
例えそれが事実だとしても根拠となる数値を出さない限りお前のくだらない思い込み。
Twitterでやってろ。
0901nobodyさん2013/09/15(日) 20:21:07.85ID:???
>>900
その書き込みtwitterでみたよ。
0902nobodyさん2013/09/15(日) 21:32:13.31ID:???
またお前は自演荒らしか
0903nobodyさん2013/09/15(日) 22:36:33.28ID:???
で?
ベンチ結果は?
0904nobodyさん2013/09/16(月) 00:01:45.74ID:K7nyvuoc
オレが彼女できないのは、phpを極められないからなんですか?
0905nobodyさん2013/09/16(月) 06:06:04.38ID:dXmcZfw0
質問です。(phpは初心者です)

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

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

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

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

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








【PHPのバージョン】5.3
0906nobodyさん2013/09/16(月) 06:19:29.70ID:???
>> 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);
?>
0907nobodyさん2013/09/16(月) 06:20:15.52ID:???
>>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などメジャーな関数を全部鬼車系の正規表現関数に書き換えなければならないってことになるよ。
0908nobodyさん2013/09/16(月) 06:58:01.02ID:???
>>905
並列処理をやるならcURLが定番かな
http://php.net/manual/ja/function.curl-multi-init.php#refsect1-function.curl-multi-init-examples

例は curl-multi でググれば大量で出る
0909nobodyさん2013/09/16(月) 07:06:50.99ID:???
>>905
こっちと比べてもらえば分かると思うけど、このサンプル作った人全然分かってないよ。
http://qiita.com/Hiraku/items/1c67b51040246efb4254
http://qiita.com/YukiAsu/items/8dc1594ac9406e446226

>>908
個人的にはfsockopen+stream_set_blocking推しかなぁ。
ガチ勢の方はマルチプロセスじゃ満足できなくてマルチスレッドを実現するためにpthreads入れたりしてるみたいだけどw
0910nobodyさん2013/09/16(月) 07:45:55.63ID:???
>>909
fsockopen()の時点でブロッキングされない?
stream_socket_client()なら非同期で接続できるけど
どちらにしてもHTTPを自分で面倒見ないといけないのは面倒だな
0911nobodyさん2013/09/16(月) 07:51:52.82ID:???
ソケット周りはPHPの限界
0912nobodyさん2013/09/16(月) 09:21:01.09ID:???
>>909
mpyw乙
0913nobodyさん2013/09/16(月) 09:32:47.72ID:???
PHP宙の限界
0914nobodyさん2013/09/16(月) 11:29:30.02ID:8/BhI2+E
質問させてください@PHP 5.4 +PDO (MySQL) 環境

自作クラス内でPDOを使いたいのですが、呼び出し元ですでに呼び出してあったらそれを使い回したいと考えています。
以下のコードで実現できるのですが、これって真っ当でしょうか。何かセオリー等があったらアドバイスほしいです。

class HogeClass
{
private $pdo;

public function __construct()
{
global $pdo;
if (isset($pdo)) {
$this->pdo = &$pdo;
} else {
$this->pdo = new PDO(〜〜〜);
}
}
}
0915nobodyさん2013/09/16(月) 11:51:17.72ID:???
>>912

ウィッスw
0916nobodyさん2013/09/16(月) 11:53:16.76ID:???
>>910
あっ・・・(気づかなかった)

PHPにマルチスレッドはおろかマルチプロセスすらやらせることが誤っている(開き直り)
0917nobodyさん2013/09/16(月) 12:01:53.80ID:???
>>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にしてもクラス内からの呼び出しならば動くってこと意外と知らない人いたり。
0918nobodyさん2013/09/16(月) 12:13:13.25ID:???
>>917

イイネ!
0919nobodyさん2013/09/16(月) 13:08:34.65ID:???
>>914までたどりついてSingleton思い浮かばないようならデザパタ入門コースだな
0920nobodyさん2013/09/16(月) 13:16:51.44ID:???
>>910
Twitterのライブラリ作ってるんだけど、fsockopenをstream_socket_clientに変えただけで非同期連続リクエストだいぶ速くなってわろたwwwありがとうwww
09219052013/09/16(月) 13:31:43.95ID:v3UCvtZR
>>908,>>909
ありがとうございます。
自分にはまだハードルが高いのかもしれません。。
でもなんとかやってみます!
0922nobodyさん2013/09/16(月) 14:16:27.50ID:???
Qiitaはごく一部のイチャモン系ユーザーが邪魔
0923nobodyさん2013/09/16(月) 14:26:25.72ID:???
>>922

これ酷くない?
http://qiita.com/mpyw/items/1cf314b984a6d26e6ae6
0924nobodyさん2013/09/16(月) 14:31:32.56ID:???
http://toro.2ch.net/test/read.cgi/tech/1378640419/
回答お待ちしております
0925nobodyさん2013/09/16(月) 15:13:12.06ID:SHQfZLVK
>>923
途中から変なの入ってきてワロタ
phpでやることじゃないのに必死すぎるわ
0926nobodyさん2013/09/16(月) 15:17:55.94ID:???
>>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);
0927nobodyさん2013/09/16(月) 15:23:37.20ID:???
>>926をもっと短く書いたコードください
0928nobodyさん2013/09/16(月) 15:23:58.96ID:???
向こうのスレに書き込んでおいで
09299262013/09/16(月) 15:41:13.08ID:???
arsort($a) && print_r($a);

こうすれば2行になるか・・
でも短くは書けないなぁ。
0930nobodyさん2013/09/16(月) 15:50:23.90ID:???
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);
0931nobodyさん2013/09/16(月) 16:01:53.80ID:???
FizzBuzzで56byteだれか書ける人
0932nobodyさん2013/09/16(月) 16:02:08.39ID:???
あっちのスレ覗いてみたけどPHPってなんていうか原始的だね
0933nobodyさん2013/09/16(月) 16:08:31.95ID:???
他の言語からPHPやったらどうしたらいいかわからないケースでも
逆はその言語知ってる人にとっては回りくどいし汚くみえるけど対応可能
C言語の流れを汲んでてよかったね
09349142013/09/16(月) 17:20:50.83ID:8/BhI2+E
>>917
こんなインスタンスを1つしか作らせない技があったんですね。
これなら異なるクラス間でPDOのインスタンスを共有できますね。
使わせていただきます、ありがとうございました。

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

>>912に個人特定されてるからもう何も気にしなくていいやw
0937nobodyさん2013/09/16(月) 18:41:35.76ID:???
競技プログラミングできません
0938nobodyさん2013/09/16(月) 19:27:15.72ID:???
アスペ野郎の正体がmpywだったのか
0939em1-113-71-98.pool.e-mobile.ne.jp2013/09/16(月) 19:40:49.51ID:3h/0BZKN
おれだよバカ
0940nobodyさん2013/09/16(月) 19:55:51.85ID:???
自分が有名だと思っちゃってるダサイタマのチンピラ
09419052013/09/16(月) 20:41:20.71ID:v3UCvtZR
昨日、複数URLからスクレイピングの件で質問した>>905です。

>>908さんに教えていただいた下記方法でcurl-multiを使いたいのですが、
http://php.net/manual/ja/function.curl-multi-init.php#refsect1-function.curl-multi-init-examples

得られた各URLのソースに全く同じ処理(主に置換)を行いたいのですが、
どう続けて(つなげて)良いのかわかりません。

var_dump($result);を見ると、配列の中に配列が入っているようで。。

str_replace()等をしたいのですが、$resultで得られた配列の中の配列の[content]に
全てstr_replace()をかけ、最後にforeach等でechoしたいのですが、
どう書いたらよいのでしょうか。

わからないのが、$resultで得られる配列にstr_replace()を行う部分です。
宜しくお願いいたします。
09429052013/09/16(月) 20:46:23.70ID:v3UCvtZR
すいません参考にしたページのURLが間違ってました
こっちのソースでした
http://techblog.yahoo.co.jp/architecture/api1_curl_multi/
0943nobodyさん2013/09/17(火) 01:03:27.60ID:???
>>938 >>940
実際何もできないよふぇぇ><

>>939
誰だよクソワロタwwwwwwwwwww
0944m2013/09/17(火) 01:50:55.16ID:???
>>941

array_map+クロージャで実装するなら

$result = array_map(function ($item) {
____$item['content'] = str_replace(〜, 〜, $item['content']);
____return $item;
}, $result);

分かりにくかったら普通にforeachでもOK

foreach ($result as &$item) {
____$item['content'] = str_replace(〜, 〜, $item['content']);
}
unset($item);

もしくは

foreach ($result as $key => $item) {
____$item['content'] = str_replace(〜, 〜, $item['content']);
____$result[$key] = $item;
}

のどちらか。参照渡しでいく場合は最後にunsetするのを忘れずに。
個人的には一番最初の例がオススメ。
0945nobodyさん2013/09/17(火) 01:51:24.44ID:???
>>942
業者に頼めば?
自助努力もできないゴミが調子に乗るな
0946nobodyさん2013/09/17(火) 06:28:06.82ID:???
【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

のエラーが出てしまいます。
どこが駄目なのでしょうか?
0947nobodyさん2013/09/17(火) 06:28:42.59ID:f+3jmrkP
すみません、IDを表示させ忘れていました。
よろしくお願いしますm(_ _)m
0948nobodyさん2013/09/17(火) 06:45:07.85ID:???
>>947
投稿前にメール欄の確認すらできないヴァカは消えろ
0949m2013/09/17(火) 06:52:07.27ID:???
>>946

これそもそもprepareの段階で失敗しているのでは?
エラーモードをPDO::ERRMODE_EXCEPTIONに設定しておけばいちいちFALSEかどうか調べずにコーディング出来るのでラクですよ。

try {
____
____$dsn = 'sqlite:〜';
____$options = array(
________PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
________PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
____);
____$pdo = new PDO($dsn, '', '', $options);
____
____$sql = 'SELECT * FROM Review WHERE EXISTS (SELECT * FROM Review WHERE Number = ? AND IP = ?)';
____$stmt = $pdo->prepare($sql);
____$stmt->execute(array($Number, $IP));
____
____foreach ($stmt as $row) {
_______// $rowでなんかやる
____}
____// もちろん$stmt->fetchAll()としても2次元配列で全件取得できるが、foreachで回す場合は$stmtを直接回したほうがいい
____
} catch (Exception $e) {
____
____echo $e->getMessage();
____
}
0950nobodyさん2013/09/17(火) 06:53:44.48ID:???
回答せずに人のミスに罵声浴びせてるだけの奴は消えていいよ
0951nobodyさん2013/09/17(火) 06:58:29.97ID:???
>>946

追記。
SQLite2使ってる場合は不可能ってことで。
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1281541482
0952nobodyさん2013/09/17(火) 07:09:46.29ID:???
>>946
お前には無理
0953nobodyさん2013/09/17(火) 07:22:14.90ID:???
頭おかしい奴はスルーしよう(提案)
09549462013/09/17(火) 07:29:14.10ID:f+3jmrkP
>>949
ありがとうございます。
参考にさせて頂きますm(_ _)m
0955nobodyさん2013/09/17(火) 09:06:16.62ID:???
>>954
参考にしなくていいから二度と来るな。
0956nobodyさん2013/09/17(火) 09:08:36.32ID:???
だから頭のおかしい奴はスルーしろって



本日のNG推奨
ID:f+3jmrkP
0957nobodyさん2013/09/17(火) 11:20:09.81ID:???
SqLiteって何かと一瞬思ったわ
mySQL
OraCle
0958nobodyさん2013/09/17(火) 11:47:08.29ID:???
>>944
二番目の例がシンプルだし高速でお勧めな気がするけど。
ところで、unset()って必要?
0959nobodyさん2013/09/17(火) 11:49:33.11ID:???
>>957
SQLiteにもメリットはあるみたいだけど
http://www.cpa-lab.com/tech/046
でもやっぱMySQL安定かなぁ
0960nobodyさん2013/09/17(火) 11:52:37.27ID:???
>>958
名前空間を汚さないという理由で1番目が好きなんだけどねぇ。速さで言えば2→3→1だけど。
2番の場合はunsetしないと後に$itemという変数が別に登場したときにおかしなことになったりするから、
とりあえず参照渡しforeach直後にunsetするクセをつけておけば問題ないんじゃないかと思う。
http://qiita.com/qckanemoto/items/c6d8ea00c57640c52cd8
0961nobodyさん2013/09/17(火) 12:51:51.05ID:???
まあ普通3だろうね
0962nobodyさん2013/09/17(火) 13:35:36.82ID:???
>>961
初心者的に一番無難なのは3かもしれないね・・・
0963nobodyさん2013/09/17(火) 13:38:54.12ID:???
関数型スキーにとっては1を選びたいが
array_* の引数の順番がみんなカオスだわ
無名関数の宣言が長すぎるわ
丸括弧とブレースの垂れ流しになるわで
書いてていまいち楽しくない
0964nobodyさん2013/09/17(火) 13:42:05.39ID:???
こういう話のときに現れる話を遮る荒しさんが今日はいないだと・・・?
0965nobodyさん2013/09/17(火) 13:45:18.94ID:???
質問者置いてけぼりのオナニー感が漂ってる
0966nobodyさん2013/09/17(火) 14:28:03.24ID:waeuCh06
windowsでUTF16 - ShiftJIS + ダメ文字のファイルパスで不具合が出るのが欠点
0967nobodyさん2013/09/17(火) 14:30:13.23ID:???
>>963
もしarray_mapがarray_walkみたいに受け取る配列が1つならば順番逆だったかもしれないね。
可変長引数になってるからやむを得ずこうしたと見て取れる。

array_mapやarray_walk_recursiveって結構出番あるけどarray_walkはただのforeachの劣化だと思ってる
0968nobodyさん2013/09/17(火) 19:25:55.32ID:???
>>965
質問者なんか待ってらんねー テメー(質問者)が来い!
0969nobodyさん2013/09/17(火) 23:03:40.68ID:???
ただで教えてもらって当然って頭おかしいんじゃね
気が向いた奴が答えるって程度の話だろうが
0970nobodyさん2013/09/17(火) 23:12:31.45ID:???
いきなりどうした?アスペか?
09719052013/09/17(火) 23:52:28.24ID:H1oQybix
>>944(m)さん、その他ご意見下さっている方
本当に有難うございます。
これからトライしてみます!

至らない文面や単語から、やりたいことを察してくださり有難うございます!
0972nobodyさん2013/09/18(水) 00:46:58.39ID:???
メンタル弱い人は多分知恵袋とかでしか質問してなくて、
ここには理不尽に叩かれても大丈夫な人たちが来るのかな()
0973nobodyさん2013/09/18(水) 01:05:20.55ID:???
>>960
>2番の場合はunsetしないと後に$itemという変数が別に登場したときにおかしなことになったりするから、
使う前に変数を初期化するのはプログラミングの当然のお作法では?
09749052013/09/18(水) 01:05:46.12ID:byJ8EIWf
度々すみません・・
>>944さんの 2番目の方法を行ってみたのですが、複数のURLの内容ではなく
1つのURLのソースしか取得できなていなくて、どうすべきかがわかりません。。

↓ここにソースを書きました
http://jsfiddle.net/eTSyy/

質問1 上記ソースで$itemをvar_dumpをすると対象URL1の内容しかでてこないのですが、対象URL2の分はどう記述すれば出せるのでしょうか
質問2 上記foreachの結果をechoする為には、$itemを再度foreachするという事でしょうか

しつこくてすみません・・宜しくお願いいたします。
0975nobodyさん2013/09/18(水) 01:24:27.23ID:majtFbBK
上は見てないが。
速度を上げたいならCURL使え。
PHPはマルチスレッド不可能だが
CURLは非同期で複数同時に通信可能。
0976nobodyさん2013/09/18(水) 01:27:33.80ID:???
>>973

初期化が「unset」を含んでいるならいいんだけど、そうじゃない場合は・・・

<?php

$arr = range('A', 'C');

foreach ($arr as &$item) {
____$item = str_repeat($item, 2);
}

foreach ($arr as $item) {
____echo $item . PHP_EOL;
}

これで

AA
BB
CC

が表示されるとか思っちゃうならお間抜けさんだろうね。
http://codepad.org/CKQZIFDq

いちいち変数初期化する前に再三「unset」とか呼ぶ人いないでしょうに・・・
だから普通はループ抜けた後にしておくのが賢い。
0977nobodyさん2013/09/18(水) 01:32:41.28ID:???
>>974

明らかにvar_dumpするもの間違えてるよね。

<?php

//↓ここからが不明です+++++++++++++++++++++++

$search = array('〜','〜');//置換対象1
$replace = array('〜','〜');//これで置換1

foreach ($result as &$item) {
____$item['content'] = str_replace($search, $replace, $item['content']);
}
unset($item);

var_dump($result);
0978nobodyさん2013/09/18(水) 01:34:16.27ID:???
厳しいこと言うけど>>974はもうちょっと応用利かせられるといいかなぁ・・・とか。
09799052013/09/18(水) 02:28:41.81ID:byJ8EIWf
>>977
その通りにやるとNULLになります。。orz
0980nobodyさん2013/09/18(水) 02:44:51.89ID:???
>>979

var_dump($item);

ってしてるんじゃないの?

var_dump($result);

だよ?
0981nobodyさん2013/09/18(水) 02:46:35.62ID:???
>>979

というかNULLが出るだけで済むんだったらerror_reportingでE_NOTICE非表示になってるね。
デバッグ環境としては全てのエラーを出すほうが望ましいから

error_reporting = E_ALL | E_STRICT

を設定推奨。
http://blog.thingslabo.com/archives/000184.html
0982nobodyさん2013/09/18(水) 03:11:48.26ID:???
>>975
pthreads使えよ雑魚
09839052013/09/18(水) 03:13:19.10ID:byJ8EIWf
>>980
はい。

//↓ここからが不明です+++++++++++++++++++++++

$search = array('〜','〜');//置換対象1
$replace = array('〜','〜');//これで置換1

foreach ($result as &$item) {
$item['content'] = str_replace($search,$replace,$item['content']);
}

unset($item);

var_dump($results);

でやってます。。

>>981
わかりました。php.iniいじってみます
09849052013/09/18(水) 03:21:04.50ID:byJ8EIWf
>>981
設定を変更しました。
エラー内容が
Notice: Undefined variable: results in /home/users/0/ドメイン/web/curl2.php on line 70
NULL

に変わりました。
09859052013/09/18(水) 04:19:34.30ID:byJ8EIWf
連投すいません。
再度現状をお伝えしますと↓の状態です
http://codepad.org/952NbqnX

2つめのURLのコンテンツのみ取得する(1つめも取得したいが方法がわかりません)

宜しくお願いいたします。
0986nobodyさん2013/09/18(水) 05:02:55.36ID:???
何こいつ

連投しまくってスレの私物化か

気持ちわる
0987nobodyさん2013/09/18(水) 05:56:31.07ID:???
>>985

関数内では

// 結果返却
return $results;

ってしてるけどグローバルスコープでは

$result = getMultiContents($urlList);

ってしてるから当然グローバルスコープに存在する変数は $result だよね。
sがついてるかついてないかの違い。

Undefined variable: results in /home/users/0/ドメイン/web/curl2.php on line 70
↓
未定義の変数: results /home/users/0/ドメイン/web/curl2.phpの70行目

他の罵声浴びせてるだけの人みたいにあんまり厳しいこと言いたくないけど、
正直これぐらいコード目の前にあるなら本人が気づいてほしい。
英語苦手でエラーメッセージが分からなかったらググるぐらいしてほしい。
プログラミング云々以前の問題だと思う。
0988nobodyさん2013/09/18(水) 05:58:31.49ID:???
次スレ立てんのこれ
0989nobodyさん2013/09/18(水) 07:56:38.01ID:???
>>905みたいなゴミが埋めるだけだから立たなくてもいいよ。
0990nobodyさん2013/09/18(水) 10:14:01.99ID:???
糞スレ発見!
0991nobodyさん2013/09/18(水) 10:15:08.94ID:???
糞スレ晒しage
0992nobodyさん2013/09/18(水) 10:17:01.40ID:???
>>975
ググって1ページ目に出てきたページを鵜呑みにしてるバカ
普通はpcntlを使う
0993nobodyさん2013/09/18(水) 10:21:12.34ID:???
PHPのブログはバッドノウハウが多いから検索で先頭にヒットしたからって安易に鵜呑みにしないほうが良いよ
0994nobodyさん2013/09/18(水) 10:22:09.00ID:???
>>992

ベンチマーク取ってないけど

pthreads>>>絶対に超えられない壁>>>pcntl≒proc_open≒popen>cURLマルチ>stream_socket_client

って感じだと思う。
pthreadsはプロセスじゃなくてスレッド制御だからぶっちぎりで当たり前。
0995nobodyさん2013/09/18(水) 10:23:29.76ID:???
>>993

一般的なキーワードでggってヒットするPHPのブログ記事ってだいたいクッソ古い情報掲げてたり非効率なコード書いてたりするよねw
レス数が950を超えています。1000を超えると書き込みができなくなります。