12/01/09 02:18:14.84
>>528
意味不明だが、
PHPのソースは自動的にJavaに変換される。
またPHPとJavaのソースを混在させることもできる。
あなたがいうインタプリタのメリットは知らないけど、
Java上で動くPHPをためしに使ってみればいいのでは?
その感想を聞かせてくれ。WordPressとかすぐにできるでしょ?
がんばれよ。
531:nobodyさん
12/01/09 02:20:20.32
>>530
つまりjavaそのものはインタプリタ無理なのね
532:nobodyさん
12/01/09 02:21:21.28
>>529
簡単に配備できるという意味でPHPの方がは一般的なwebでは普及してるよ。
ただ、インタプリタのメリットなんだよ。容易にプログラムが書ける、
簡単に配備できるくらいか?
ただ俺の主張は>>527。双方できれば問題ないし、目くじら立てる必要ない。
533:nobodyさん
12/01/09 02:27:07.16
>>531
横レスで申し訳ないが、
インタプリタの処理速度はコンパイラ方式よりも遅いから、
それは特徴ではあるが実装コスト以外にメリットにはならないよ・・・・。
534:nobodyさん
12/01/09 02:27:59.03
>>532
俺の主張は>>505
あとは>>506にたいして言ってるだけ
535:nobodyさん
12/01/09 02:35:20.40
>>528
再度横レスで申し訳ないが、それ愚問だから。
「で結局C言語はインタプリタで動かせるの?
phpのソースではなくC言語のソースをね」
と同じ意味で変だよ。
phpはC言語やJavaで実装されるのにその言い方はないのでは?
536:nobodyさん
12/01/09 02:51:49.24
>>505-536
スレチ
Java VS PHP
スレリンク(php板)
537:nobodyさん
12/01/09 02:51:57.19
自転車置場の議論とはよく言ったもんだ
538:nobodyさん
12/01/09 02:57:30.55
>>535
インタプリタ自体否定するなら速度の話も出すべきじゃないよね
phpもコンパイルできるけどさ後は何を比較するのよ
539:nobodyさん
12/01/09 03:01:47.38
javaアプレットでflash作れますか?
540:nobodyさん
12/01/09 03:20:39.79
PHPの場合「Web特化」という特性があるから
JavaでいうJSPやサーブレットのような一部の機能しか言語として提供されていない
ゆえにJavaで出来ることはPHPでは出来ない「かもしれない」
541:nobodyさん
12/01/09 06:25:12.84
>>539
なぜそれをPHPスレで聞く?
542:nobodyさん
12/01/09 10:50:51.24
>>539
正確にいうとjavaでflashは作れる。
flexコンパイラはjavaだからwww
543:nobodyさん
12/01/09 10:58:42.33
この板の人たち、
一つの言語にこだわるひと多いね。
複数できればどうでもいいことにいつまでもグチグチ。
PHPの場合は「Web特化」だから
たぶんそれだと先はないよ。
544:nobodyさん
12/01/09 11:14:23.75
>>538
Javaプラットフォームでインタプリタを使いたいなら、
以下から選んください。
Groovy
URLリンク(ja.wikipedia.org)
jRubyという選択肢もあり、
URLリンク(ja.wikipedia.org)
Jythonという選択肢もあり、
URLリンク(ja.wikipedia.org)
Quercus(PHP)もある。
URLリンク(www.caucho.com)
545:nobodyさん
12/01/09 11:20:52.66
いい加減スレ違いだと気付け
546:nobodyさん
12/01/09 11:26:55.06
スルーできない残念な人ばかり
547:nobodyさん
12/01/09 11:34:19.45
>>543
たかがひとつの言語如きに先など無くてもいいのに、
無いと困るだろって思うのを、言語にこだわるというんだよ。
548:nobodyさん
12/01/09 12:06:17.06
ドヤ顔でwikipediaのせちゃって低学歴だとバレたねw
549:nobodyさん
12/01/09 12:06:54.27
多分高卒か専門卒の子なんだろうなぁ
550:nobodyさん
12/01/09 12:07:28.35
>>547
Web特化だから他にはできないでしょ?そういう意味。
551:nobodyさん
12/01/09 12:19:05.77 bsExuDph
配列やchrを使わずにforで回してaからzまでアルファベットを生成できる方法を教えてください
たしか↓みたいな書き方で出来た覚えがあるんですが書き方忘れました
for ($i='a'; $i<'z'; $i++) echo $a;
552:nobodyさん
12/01/09 12:19:47.72 bsExuDph
自己解決
変数名がおかしくて動かなかっただけだった
553:nobodyさん
12/01/09 12:57:43.10
>>539
>>542
おもろい。
554:nobodyさん
12/01/09 14:27:21.52 7f0AwpQn
安藤優子、木村太郎は、某プロパイダの社外取締役、かつ、安藤は、フジ社外の人間にもかかわらず、フジテレビジョンのM&Aの最中、フジのホワイトナ
イトの【親会社】の本業を無視して、「インターネットは虚業だ。具体性がない
。」というようなことをコメントしました。この虚業は、livedoorを指していた
としても、「同業者」であったということは、非常に、違和感を感じずには、い
られません。
555:nobodyさん
12/01/09 17:05:12.94
さぁ冬休みも今日でおしまいですよ
556:nobodyさん
12/01/09 18:22:21.45 IGqUpTKq
exitとdieって同じ働きってphpマニュアルに載ってました、
みささんはどっちを使ってますか?
557:nobodyさん
12/01/09 18:23:58.57
dieはexitのエイリアス
joinがimplodeのエイリアスみたいなもん
どちらかといえばオリジナル使え
558:美佐
12/01/09 18:24:11.49
あたしはexit派よ
559:nobodyさん
12/01/09 18:31:34.53
>>476
2chのは、疑わしきは通さずで、公開proxyじゃなくても通さなかった。
560:nobodyさん
12/01/09 18:33:25.70
無知は怖い。
561:nobodyさん
12/01/09 19:41:08.39
>>559
そうだったとしても、2chのチェッカー通せば多くの広告やスパムをはじけて良いと思う。
562:nobodyさん
12/01/10 00:05:10.49
アプリケーションサーバーはどんなもの使ってらっしゃいますか?
563:nobodyさん
12/01/10 00:06:30.20
>>1嫁
564:nobodyさん
12/01/10 00:35:57.99 OfX0eCZx
sshってphpは関係あるのですか?
565:nobodyさん
12/01/10 00:37:38.41
関係ありません
566:562
12/01/10 02:01:24.77
>>563
【OS名】CentOS 5.6
【PHPのバージョン】5.3.8
【連携ソフトウェア】
Apache Http Server 2.2
MySQL Community Server 5.5.19
567:nobodyさん
12/01/10 02:25:09.67
>>1嫁
568:562
12/01/10 03:15:44.30 5jaiW7yr
>>567
>>562
569:nobodyさん
12/01/10 03:20:22.76
◆質問する時の注意
・ 質問者として、態度をわきまえること。
570:562
12/01/10 03:22:55.62 5jaiW7yr
>>569
大変失礼いたしました。
教えて下さいませんか?
571:nobodyさん
12/01/10 03:26:33.03
PHPにアプリケーションサーバは不要ですし使ってないですよ
572:562
12/01/10 03:27:09.50 5jaiW7yr
>>571
なぜ不要ですか?
573:nobodyさん
12/01/10 03:29:52.42
Apacheにモジュールとして組み込まれてますので
574:nobodyさん
12/01/10 03:31:45.86 5jaiW7yr
zendのところ存在意義は何でしょうか?
575:nobodyさん
12/01/10 06:40:02.10
>>535
Cのインタプリタって割と最近どっかのスレで見たと思う。
576:nobodyさん
12/01/10 06:46:36.93
>>574
Windowsに対するMicrosoftの存在意義を問うているの?
577:nobodyさん
12/01/10 09:12:23.38 5jaiW7yr
>>576
すいません。
>>574はZend Serverを意味してました。
578:nobodyさん
12/01/10 11:48:47.01
ニートのオッサン何やってんだ。
相変わらず支離滅裂な事言っちゃって。
家に引きこもってないで早く病院行けよ。
579:nobodyさん
12/01/10 15:33:30.34
Zendのサーバー、誰か使っている人はいませんか?
580:nobodyさん
12/01/10 16:01:26.75
>>577
まとまってるところじゃないかな。あとはもしかするとGUI
>>579
別の人?
その質問でどうしたいのか
581:349
12/01/10 16:06:05.01
>>349 です。
非同期ページ、PHPから取得することができました。
並列ダウンロードしながらそれぞれにプログレスバーなんかつけてみたりして完璧です。
ググっても全然出てこない情報なので結構必要とする人が多い解決方法になったと思いますが
ここに書くとまた反応されそうなんでお礼だけ。ありがとうございました。
582:nobodyさん
12/01/10 16:14:23.40
>>581
ああ、おつかれさん。
スルースキルと、感情的になりすぎるのに気をつけるといいと思うよ。
583:nobodyさん
12/01/10 16:21:07.06 HU7fZVh4
フォームにてページ間を移動しようとしてsessionを使用しようと思いました
まず例えばpage1にて$_SESSION['aaa'} = $_POST['aaa']のようにしました
次に、page2へ行く場合に
$_SESSION['aaa']を保持したままで$aaa = $_SESSION['aaa']とするのがいいのか、
それとも、page1からpage2へ送る際に、<input type="hidden" name="aaa" value="$_SESSION['aaa']"/>のように
いったんフォーム内に値を入れてからpage2のスクリプト内でまた$aaa = $_POST['aaa']のようにした方がいいのでしょうか?
やってることは同じだとは思うのですが、例えばフォーム移行中にエラーが出たり、ブラウザの戻るなどにて意図しない
挙動をされた際に最初の方法だと問題が発生するかなとも思ったもので
すみませんがアドバイス頂けないでしょうか?
584:nobodyさん
12/01/10 16:23:21.05
フォームに値を入れるんなら、セッション使う意味がないじゃない。
585:nobodyさん
12/01/10 16:33:08.57
何がやりたのかさっぱりわからん
page1 <-> page2
でフォームの値を維持したまま行き来したいってこと?
まずブラウザのバックボタンでは「有効期限切れ」ってのが発生する
これの解決方法はややこしいので説明しない
で、ページ内に戻るボタンを設置して行き来させるならそのまま$_POSTを引き回せばいい
前のページの値はhiddenに入れておいてもいいしsessionが良ければsession使ってもいい
session使った場合に$_POSTと同期させる方法は代入なりなんなり好きなようにやればいい
586:nobodyさん
12/01/10 19:10:58.95
もうこのスレでお世話にならなくても解決できる力が身に付きました
これも皆様のア辛口による熱血指導の賜物です
卒業式は3月にやりますのでよろしくお願いします
587:リボンちゃん
12/01/10 19:45:37.78 cS2s7PkD
phpについて、困っています。
掲示板等で、$dateを使って日付を表示させているのですが、
特殊な事情があって、過去14日よりも前のものだった場合、
表示は10日前で表示したいのです。
簡単な記述方法があれば、教えていただけると助かります。
よろしくお願いします m(_ _)m
例:1月1日投稿されたもの→5日に閲覧した場合は、そのまま投稿日時は1月1日。20日に閲覧すると投稿日時は1月10日で表示される。
588:nobodyさん
12/01/10 20:01:42.81
>>587
$date = 書き込んだ日;
$date = mktime($date);
$now = time();
$date = $now - $date > 60*60*24*10 ? 10 : $date;
589:nobodyさん
12/01/10 20:02:28.76
あ、ごめん、最後の行読んでなかった
590:nobodyさん
12/01/10 20:03:08.26
>>587
$dateってただの変数じゃん
これでどうかな
<?php
$posted_str = "2011/12/26"; //投稿日
$posted = strtotime($posted_str);
$now = time();
$date_format = "Y/m/d";
$posted_disp = $posted<($now-(60*60*24*15)) ? ($now-(60*60*24*10)) : $posted;
print "今日:".date($date_format)."<br />
元投稿日:".date($date_format,$posted)."<br />
表示投稿日:".date($date_format,$posted_disp);
591:nobodyさん
12/01/10 20:03:29.35
あ、ごめん、よく読み直したら全然ちがったw
592:590
12/01/10 20:14:05.38
>>588,589591 は違う人
593:nobodyさん
12/01/10 20:28:04.95
回答も含めて色々ひどいな
$post_date // これを投稿日時だとする(UNIXTIME)
$limit = 60 * 60 * 24 * 14; // 期限14日前とする
if($_SERVER['REQUEST_TIME'] - $post_date > $limit) {
$post_date -= 60 * 60 * 24 * 10;
}
echo date('Y-m-d', $post_date);
594:587
12/01/10 21:08:57.11
皆さん、レスありがとうございます!
すごい助かります!
60 * 60 * 24 * 10 の10は10日前という数字だとわかりますが、
他の数字60,60,24 の意味を教えていただけると勉強になります。
よろしくお願いしますm(_ _)m
595:nobodyさん
12/01/10 21:16:12.68
60 * 60 * 24 = 1日
1秒をかけてる
596:nobodyさん
12/01/10 21:17:14.75
>>593
$_SERVERは使うな!!!!!!!!!!!!!!!
getenvを使えっ!!!!!!!!!!!!!!!!!!!!
597:nobodyさん
12/01/10 21:17:39.58
60秒 * 60分 * 24時間 = 1日
598:nobodyさん
12/01/10 21:28:09.69
>>596
公開するプログラムでもあるまいに、
自分の環境チェックもしないやつになっちまうだろ。
599:nobodyさん
12/01/10 21:34:28.20 HU7fZVh4
データベースをPDOにてプレースホルダを利用し、変更したいのですが、質問させてください
カラム名がaaa、bbb、cccとして、
その内の一つ、または複数の値を変更するような場合にはどのように記述すればいいのでしょうか?
マニュアルなどを見ると、VALUESのようにデータベースに与える値をプレースホルダに割り当てるのは分かるのですが、
自分は値だけでなく、カラム名にも変数を割り当てたいのです
prepare('UPDATE table SET $name = :name WHERE $url = :url')のような型です
まさかprepare('UPDATE table SET :name1 = :name2 WHERE :url1 = :url2')のような型にはできないでしょうし
この場合、どのように記述すればいいのでしょうか?
600:nobodyさん
12/01/10 21:34:55.57
>>596
は?その根拠は?
おまえENVの意味もわかってないだろどうせ
601:nobodyさん
12/01/10 21:37:15.54
>>599
SQLごとに作れ
602:nobodyさん
12/01/10 21:39:00.09
>>599
普通に
UPDATE table SET col1=? WHERE col2=?
でいいんじゃねーの
カラム名に変数割り当てるなら上を
"UPDATE table SET {$col1}=? WHERE {$col2}=?"
すりゃいいじゃん
603:587
12/01/10 22:25:58.95
みなさんレスありがとうございます。
とても助かります!
とりあえず593の$post_dateを$dateに変えて記述してみたのですが、
$limit = 60 * 60 * 24 * 14; // 期限14日前とする
の行でエラーが出てしまいます。
最終的に表示させたい場所に
echo date('Y-m-d', $post_date);
を書けばいいという認識であっていますか??
初歩的すぎて、すいませんが、よろしくお願いします。
604:nobodyさん
12/01/10 22:33:03.94
>>603
その行でいきなりエラーはないだろw
投稿日時はどうやって受け取って、どういう形式で保存してんの?
例)2012/01/10、とか、2012-01-10、とか、1326121200、とか。
605:nobodyさん
12/01/10 22:33:49.35
>$limit = 60 * 60 * 24 * 14; // 期限14日前とする
>の行でエラーが出てしまいます。
んなアホな
違うところだろ
>最終的に表示させたい場所に
>echo date('Y-m-d', $post_date);
しらんがな
どんなソースになってるのかもわからんし
606:nobodyさん
12/01/10 22:40:12.89
>>600
ggrks
607:nobodyさん
12/01/10 22:42:27.44
>>603
$dateの中身を書きなさい
608:nobodyさん
12/01/10 22:49:22.50
素人相手に偉そうに語るのがこのスレです。
609:nobodyさん
12/01/10 22:49:50.87 DbdGI1rD
【OS名】CentOS 5.5
【PHPのバージョン】5.2.17
【連携ソフトウェア】MySQL GD
【質問内容】
GDの機能を使って画像を作成して、データベースに入れていくのですが、
imagepng()とかで画像をファイルに保存したり、ブラウザに出したりしますよね?
これの出力結果を直接文字列として変数に格納したいのですが、どうすればよいでしょうか?
$data = imagepng()とかも試してみましたが、trueしか返ってきませんでした。
610:587
12/01/10 22:52:45.04
ありがとうございます。
すいません、違うところのエラーですか。(^^;
メールで投稿する形式の掲示板で、メールサーバーに
投稿記事を取りに行くphpには、以下のように記載されています。
※日付は1323413498等という形で保存されています。
// 日付の袖しつ
eregi("Date:[ \t]*([^\r\n]+)", $head, $datereg);
$now = strtotime($datereg[1]);
if ($now == -1) $now = time();
呼び出すphpの冒頭にはには
$date = date("y/m/d", $ptime);
とだけ書かれています。
最終的には、$dateと書いたところに日時が表示されています。
611:nobodyさん
12/01/10 22:54:19.13 DbdGI1rD
自己れす。下記で行けそうです。
ob_start();
imagepng($resource);
$data = ob_get_contents();
ob_end_clean();
612:nobodyさん
12/01/10 22:56:28.46
>>609
ヒント:base64_encode
>>610
もうここで聞く以前の学習を
>$date = date("y/m/d", $ptime);
$ptimeには何が入ってるの?すでにUNIXTIMEが入ってるなら
$date = $ptime;
でいいよ、代入する意味ないけど
613:nobodyさん
12/01/11 00:11:45.44
>>610
dateとstrtotimeは使うな
datetimeを使え
614:nobodyさん
12/01/11 00:23:58.10
ついに使うな厨も登場したか
615:nobodyさん
12/01/11 00:26:28.08 dfPHpXiU
phpにおける分散オブジェクトについて語りましょう!
616:nobodyさん
12/01/11 00:29:05.90
>>615
スレリンク(php板)
617:nobodyさん
12/01/11 00:35:11.26 dfPHpXiU
さあ、分散オブジェクトについて語りましょう!
618:nobodyさん
12/01/11 00:37:35.15 dfPHpXiU
>>616
PHPの分散オブジェクト技術にはどのようなものがありますか?
619:nobodyさん
12/01/11 00:41:39.74
荒らし認定
620:nobodyさん
12/01/11 12:55:49.06 eyRErrPB
aaa.example.comとbbb.example.comで同じセッションを使いたいのですが、
php.iniで session.cookie_domain = ".example.com" を指定してもうまくいきません。
また、.phpの中で直接設定しようと以下のようにテストしたんですがやはりうまくいきません
(aaaとbbbを変更するとセッション値がカラになる)
//session_set.php
ini_set("session.cookie_domain", ".example.com");
session_start();
$_SESSION['animal'] = "cat";
echo "animal>>>";
echo $_SESSION['animal'];
//session_check.php この.phpをaaa.example.comとbbb.example.comで確認する
ini_set("session.cookie_domain", ".example.com");
session_start();
echo "animal>>>";
echo $_SESSION['animal'];
何が原因でしょうか?
php.iniで他に何か設定しなきゃいけないのでしょうか。
ご意見よろしくお願いします
621:nobodyさん
12/01/11 13:00:09.61
>>620
ドメインが違うんだから無理。
それでセッション引き回しできたら、ハッキングやりほうだい
622:nobodyさん
12/01/11 13:15:03.58
>無いが原因でしょうか?
マニュアルを読まないのが原因です
623:nobodyさん
12/01/11 13:27:59.44 eyRErrPB
>>621
ありがとうございます
URLリンク(php.net)
を見てるんですが、
「すべてのサブドメインでクッキーを有効にしたい場合は、先頭にドットをつけて '.php.net' のようにします。」
とあるようにサブドメインの変更までなら対応できるのではないですか?
624:nobodyさん
12/01/11 13:30:15.06
URLリンク(d.hatena.ne.jp)
625:nobodyさん
12/01/11 13:36:51.45
>>624
そのブログの設定ファイルがphp.iniより優先するということでしょうか
実はちょうど今session_set_cookie_params();で対応できたんですが
そちらの勉強もしてみます
ありがとうございました
626:nobodyさん
12/01/11 13:44:43.70
>>621
へぇ
627:nobodyさん
12/01/11 14:07:42.61 VbJoExbW
質問させてください
皆さんはPHPにて「並行処理」をしたい場合、どのようにされていますでしょうか?
自分がやりたいのは、あるスクリプトがあり、それを引数(設定値)だけを変えて
決められた時間の間隔にて(sleep()等を使って)繰り返し、大量に(少なくとも20位)かつ”同時に”実行したいと思っております
子プロセスの同期は必要ないと思います
ファイルをコピーして、各スクリプト毎に設定値を書いて・・・って言うのは現実的ではないので
データベースなどからリストを取得して、その設定値を使ってそれぞれを同時に実行したいと思っております
(fwrite()などで、設定毎にスクリプトを作成していこうかとも考えましたが・・・)
しかし色々考えたのですが、全然いいアイデアが浮かんできません
このような場合、どのようにすればいいのでしょうか?
628:nobodyさん
12/01/11 14:08:07.06 VbJoExbW
pcntl_fork()という関数があるという事は知ったのですが、これを使った場合もどのように実装すればいいのかいまいち分かりません
$list = array(~DBからの設定値~);
$pid = pcntl_fork();
if ($pid == -1) {
die('ダメ');
} else if ($pid) {
pcntl_wait($status);
} else { //子プロセス
foreach(~$list~)とかイテレータ{
system()とか
}
}
上記のようにforeach()で回してしまうと、設定値を読み込んだ順に実行されていくので
普通のイテレータ使ったスクリプトと同じで、並列処理にはならないように思います
それともforeach()をif()の外で回して配列に格納しておいて、$iという数字をインクリメント
した後に子プロセス内にてfor()にて一気にsystem($list[$i])等で実行すればいいのでしょうか?
>>627のような実装をしたい場合に何かアドバイスを頂けないでしょうか?
629:nobodyさん
12/01/11 14:20:29.14
並列させたい分だけforkすりゃいいだろ
630:nobodyさん
12/01/11 15:00:30.88
foreach ( $list ... ) {
if ( ($pid = pcntl_fork()) === 0 ) {
子でやりたいこと
exit(0);//終わる
} else if ($pid == -1) die("x");
}
//親での処理(終わるの待つとか)
631:nobodyさん
12/01/11 15:07:26.35
>>627
並列処理したい処理をもうちっと具体的にくれ
632:nobodyさん
12/01/11 15:25:25.54 VbJoExbW
皆さん、返答ありがとうございます
自分のやりたい事とは少し違いますが、説明が簡単な例としては、Googleのクローラなんかがあると思います
データをどういう手法か分かりませんが、初期のものでも1サーバに300ものクローラを使っていたとの事です
クローラは動き回っているので考え方が違うかもしれませんが、例えば自社や関連会社のデータなど固定されたターゲットの場合はcronなどで定期的に訪問出来るでしょうが、
それらの設定値をいちいちファイルに記述するのも大変なので、それぞれの場所にてデータを取得するためのxPathなど設定値リストを読み込んで、
スクリプトにて一気に並行処理にて自動的に行う、という事をやりたいと考えております
ただ、アクセスし続けるのも相手側に付加がかかるので、各スクリプトの訪問間隔を大きい相手は5分、小さい相手は1時間などにしたいと考えております
また、それらのデータを正常に取得したら、その瞬間に今度はそのデータを解析・整形するようなスクリプトを起動させたいと考えております
以上の点にて宜しくお願いいたします
633:nobodyさん
12/01/11 16:03:46.74
いまいち何をやりたいかわからんが
取得先が大量にあって直列処理だと時間がかかりすぎるしそれぞれ取得設定を書くのもめんどいから
並列にしたいってことでおk?
ならcURLのマルチ使って、設定値をdbなどから引っ張ってきてから
回しながらcallbackなんかをうまく設定して一気にゴー、で行けるんじゃないか。
やりたいことと違っていたならすまん。
参照:URLリンク(techblog.ecstudio.jp)
634:nobodyさん
12/01/11 16:19:22.57
>>632
Webのクローラーはデータ取得に暇がかかるのが明白だから並列処理するのが当たり前のアプローチ
635:nobodyさん
12/01/11 16:46:00.24
あえてクローラーをPHPで作ることもないだろ。
PHPは標準で並列処理できない仕様だ。
並列処理できる言語、並列処理できるソフトを使って保存してから
PHPでそこにアクセスしたら良い。
636:nobodyさん
12/01/11 16:58:01.39
しかしcurlだけは標準でダウンロードが完了してなくても処理が帰ってくるから擬似的には並列処理できるな。
通信だけは並列にできるいうことだが。クローラーはパフォーマンスを落とさずに、並列処理可能な言語・ツールに並べる可能性はある。
637:nobodyさん
12/01/11 17:09:13.29
ここで適切なアドバイスしても、馬鹿には無理だろ。
638:nobodyさん
12/01/11 17:40:57.15
返事なくなっちゃったね。
639:nobodyさん
12/01/11 17:43:06.65
スレリンク(linux板:427番)
のコンパイルは結局うまくいったのか?
640:nobodyさん
12/01/11 18:11:13.28
>>630 じゃだめなん?
641:nobodyさん
12/01/11 18:17:50.79
よくわからないから無視したんだろw
642:nobodyさん
12/01/11 19:03:57.60
質問してしっぱなしかよ・・・
643:nobodyさん
12/01/11 19:05:55.41
いつも質問答えてる側の奴らから難易度高めの問題がほしい
644:超難問!
12/01/11 19:10:37.65
>>643が彼女をつくるにはどうしたらいいでしょうか?
645:nobodyさん
12/01/11 19:31:49.93
彼女(笑)
646:nobodyさん
12/01/11 20:04:08.13
$list = array("清美", "里子", "友恵", "友里", "とめ", "愛子", "雅子", ...... );
for ($i = 0; >>643の心が折れるまで; $i++) {
$result[] = kokuhaku($list[$i]);
}
if ($result == NULL){
die("まだ2次元がある");
}
647:nobodyさん
12/01/11 20:48:30.27 tHZDD+V0
質問です
hoge.txtというテキストファイルがありまして
100バイトの文字列\n
100バイトの文字列\n
100バイトの文字列\n
:
:
:
と500行ある500KBののテキストファイルがあるとします
このファイルから
「499行目と500行目」
か
「1行目と2行目」
だけを取り出すとき、サーバーの負荷は
両方1~500行の文字を取り出すときとほぼ同じ負荷でしょうか?
648:nobodyさん
12/01/11 20:50:49.28
>>643
501 :nobodyさん:2012/01/08(日) 19:46:27.97 ID:???
>>489
abstractとinterfaceの具体的な使い分けはどうしてますか?
実装が書きたかったらabstractっていうのはあまりにもアレなので
哲学とまでは言いませんが、確固たる理由をつけて使い分けたいんです
649:nobodyさん
12/01/11 20:52:56.46
読み方に依るだろ。
読み込む位置が確定していたら、シークするだけの違いしかなく負荷に大差ないが。
改行位置の判定からやっていたら後ろの方が手間掛かる。
650:nobodyさん
12/01/11 21:08:42.58
一般的には常識とされている、
真実は一つだけ
怒りは自然な感情
戦争・テロは無くならない
死刑には殺人の抑止力がある
虐められる側にも虐めの原因がある
自己チューな人間ほど自己愛が強い
などの間違いを解説中
感情自己責任論
651:nobodyさん
12/01/11 21:13:42.02 tHZDD+V0
>>649
という事はどんなやり方でも最低でも500KBかかってしまうという事でしょうか?
200バイト(2行分)程度だけで住む方法ないかなーと思ってたのですが
652:nobodyさん
12/01/11 21:34:41.86
固定長なら200バイトだけで済むだろ。
653:nobodyさん
12/01/11 22:26:31.01
>>649はちょっと読み間違いをしているね。
> 「499行目と500行目」
> 「1行目と2行目」
この二つの負荷には大差がないといっているんだろう。
本来の質問であるところの、
> 1~500行の文字を取り出すとき
との負荷には大きな差があるよ。
固定長じゃない場合は、最後の2行を得るのが少し面倒だけど。
654:nobodyさん
12/01/11 22:33:40.13
500行のロードと、2行のみロードでは負荷に違いがある。
655:nobodyさん
12/01/11 22:33:46.01
実験してみればいいじゃん
656:nobodyさん
12/01/11 22:45:01.77
500Kくらいたいした事で無い。
fileで全行読み込んでも良いよ。
そこがボトルネックになってから改良したら良い。
657:nobodyさん
12/01/11 22:47:30.54
全ての箇所で低リソースを目指していたら手間が掛かって進まない。
一応動くやつを作ってから速度測定して、
全体の中で時間掛かっているところに手を加えれば良い。
658:nobodyさん
12/01/11 23:02:44.07 tHZDD+V0
ごめんなさい、1~500行の文字を取り出すと比べて
「499行目と500行目」「1行目と2行目」この二つは差があるのでしょうか?という質問でした
説明不十分で申し訳ないです
やっぱりテキストファイルを固定長形式にするしか無いですかね?
この場合
100バイトの文字列
2Kバイトの文字列
4バイトの文字列
:
となった場合、全部2KBになって500行あったら1Mになってしまうので避けてたのですが
659:nobodyさん
12/01/11 23:06:53.90
理解不可能ですが。
全て(1~500行)のロードと2行のみでは負荷は違う。
可変長だったらindexをファイルの後方か先頭に配置して必要なところを読めば速いです。
660:nobodyさん
12/01/11 23:16:37.71
ファイルサイズがでかくて全読込をさけたいなら、データベースにいれとけよ。
そしたらメモリ管理など気にしなくて済むしキャッシュなども自動で使ってくれる
661:nobodyさん
12/01/11 23:39:54.74 GX2tXR1t
PHPとAsp.netってどう違うんですか?
662:nobodyさん
12/01/11 23:50:01.97 VbJoExbW
>>633-642
すみません、今まで色々試しにやってて返事が遅くなりました
URLリンク(ja.wikipedia.org)を参照に
#!/usr/local/bin/php -q
<?php
$pid = pcntl_fork();
if ($pid == 0) {
$j;
for ($j=0; $j < 10; $j++) {
printf("child: %d\n", $j);
sleep(1);
}
} else if($pid > 0) {
$i;
for ($i=0; $i < 10; $i++) {
printf("parent: %d\n", $i);
sleep(1);
}
print "wait begin.\n";
pcntl_wait($status);
print "wait end.\n";
} else {
die('fork できません');
}としました
663:nobodyさん
12/01/11 23:50:43.62 VbJoExbW
ただ、結果が
child: 0
child: 1
child: 2
child: 3
child: 4
child: 5
child: 6
child: 7
child: 8
child: 9
parent: 0
parent: 1
parent: 2
parent: 3
parent: 4
parent: 5
parent: 6
parent: 7
parent: 8
parent: 9
wait begin.
wait end.
のようになってparentがwikipediaのようにchildの間に入っておりません
"出力の順序はカーネルが決定する"とは書かれていますが、PHPではこのようなものなのでしょうか?
学習不足で申し訳ないです
664:nobodyさん
12/01/12 01:50:16.25
>>662
なぜPHPを使っているのですか?
665:nobodyさん
12/01/12 02:58:10.26 KRgm5yh1
やっぱりphpでは並列無理ぽ。
666:nobodyさん
12/01/12 03:08:54.02
ニートおっさんには無理
667:nobodyさん
12/01/12 03:25:30.76
>>662
そのコードでできたよ。
child: 0
parent: 0
child: 1
parent: 1
child: 2
parent: 2
(略)
child: 8
parent: 8
child: 9
parent: 9
wait begin.
wait end.
668:nobodyさん
12/01/12 03:39:54.92
>>667
できてない。
669:nobodyさん
12/01/12 03:43:15.46
並列と分散はPHPの泣きどころ。
670:nobodyさん
12/01/12 03:52:56.74
かろうじて並列できても実用性は全くないことに気づけよ
671:nobodyさん
12/01/12 04:51:39.62
同じやつが同じ話題を繰り返してるんだな
672:nobodyさん
12/01/12 05:35:36.73
>>668
どういうこと?
673:nobodyさん
12/01/12 10:36:29.57
>>663
これって実行には何秒かかったんだろ。
674:nobodyさん
12/01/12 12:24:55.33
>>664 >>665 >>668 >>669 >>670 は並列処理を理解できてない馬鹿。
675:nobodyさん
12/01/12 12:27:31.97
>>667
>>663
実行環境(カーネル)の違いでプロセスの優先度が変わるのかな?
676:nobodyさん
12/01/12 13:02:25.38
PHPにはpcntl_forkというプロセスをフォーク(複製)することが
できる関数がありますが、これはPHPをCGIモードで
動かしている場合にのみ有効です。
通常はPHPをApacheモジュールとして動作させていることが
多いので、これが使えないケースが多々あります。
URLリンク(techblog.ecstudio.jp)
677:nobodyさん
12/01/12 13:15:01.92
っていうか、何でPHPで作ることにこだわってんだ?
Perlで良いじゃん。
678:nobodyさん
12/01/12 13:19:01.14
>>676
pcntl_fork関数は存在するし、forkも成功したように見えるけど、並列処理されないなんて結果になるということですか
679:nobodyさん
12/01/12 14:01:06.08
ちなみに俺も>>662やってみた
俺は並列処理の事なんか分かっていないので、このやり方で合っているか分からないけれど
<?phpの後に、$time = time();
最終行に、echo 'time:' . (time() - $time) . 'sec' . PHP_EOL;を付けてみた
2chの改行規制で出力形式変えるけど結果は
child: 0 child: 1 child: 2
child: 3 child: 4 child: 5
child: 6 child: 7 child: 8
child: 9
time:10sec
parent: 0 parent: 1 parent: 2
parent: 3 parent: 4 parent: 5
parent: 6 parent: 7 parent: 8
parent: 9
wait begin.
wait end.
time:10sec
となった
>>676
URLリンク(www.php.net)
にはCLI版も可能って書いてるんじゃないの?
>>675
ちなみに自分はcentOSです
680:nobodyさん
12/01/12 14:01:29.80 QAUYYhrI
phpとmysqlでカウンターが作りたいのですが
書き込むときの排他制御はどのようにやるのでしょうか?
681:nobodyさん
12/01/12 14:01:52.50
>>676
CLIでも使えるよね?
682:nobodyさん
12/01/12 14:02:25.17
もういい加減ニートのおっさんは飽きた
683:679
12/01/12 14:02:52.80
書き忘れたけど、この出力結果みると並列処理ってされてない・・・んだよね?
684:nobodyさん
12/01/12 14:10:41.80
基本的にはマルチスレッドはサポートされてないだろ。
レンタルサーバーとかでは。
自宅で一人で使う目的だったらマルチスレッドをONにしてコンパイルすればいい。
しかしソースコードに汎用性が無くなる。
Curlをつかっとけ。5.3か5.2から標準で並列に使える。
685:nobodyさん
12/01/12 14:15:13.44
forkだからマルチスレッドの話ではないでしょ。
686:nobodyさん
12/01/12 14:16:07.48
PHPがサポートするプロセス制御機能は、デフォルトでは有効となってい ません。
プロセス制御機能を有効にするには、 configure のオプションに --enable-pcntl を付け、
CGI 版あるいは CLI 版の PHP をコンパイルする必要があります。
注意: 現在、このモジュールは非 Unix 環境(Windows)では動作しません。
URLリンク(www.php.net)
687:nobodyさん
12/01/12 14:18:28.39
>>686
何が言いたいの。
688:679
12/01/12 14:27:53.78
>>682には悪いけど、俺にはせっかくの機会だから色々試してみた
>>662を
if ($pid == 0) {
system('php forkc1.php');
system('php forkc2.php');
}
に変えて、それぞれに
<?php
$time = time();
$i;
for ($i=0; $i < 10; $i++) {
printf("child1: %d\n", $i);
sleep(1);
}
echo 'c1-time:' . (time() - $time) . 'sec' . PHP_EOL;
のように書いた
689:nobodyさん
12/01/12 14:28:15.56
実行結果は
c1: 0 c1: 1 c1: 2 c1: 3 c1: 4 c1: 5 c1: 6 c1: 7 c1: 8 c1: 9
c1-time:10sec
c2: 0 c2: 1 c2: 2 c2: 3 c2: 4 c2: 5 c2: 6 c2: 7 c2: 8 c2: 9
c2-time:10sec
p-time:20sec
parent: 0 parent: 1 parent: 2 parent: 3 parent: 4 parent: 5 parent: 6 parent: 7 parent: 8 parent: 9
wait begin. wait end.
p-time:20sec
となった
で、実際の時計を見ていたら、20秒後に表示された
system('php forkc3.php');
も加えたら実際の時計では30秒後に表示された
これってどういうこと?
並列処理されていないってことだよね?
690:nobodyさん
12/01/12 14:30:51.41
なんでそんなトンチンカンなことが平気で言えるのか
system('php forkc1.php');
system('php forkc2.php');
この時点で気付けよ
691:nobodyさん
12/01/12 14:36:08.80
ん?
30秒かかるのは当たり前か・・・笑
>>679は10秒で済んでるから親プロセスと子プロセスはちゃんと並列処理されてるってことだね
自分の>>688の書き方が悪いだけか
この流れの話は、親プロセスから子プロセスを複数作成し、それを同時に実行
つまり3つの子プロセスがあれば4つとも10秒後に終わらせるということだよね?
となると実装法が思いつかないけど、pcntl_fork()っていうのを3回呼び出せばいいってことじゃないかな?
分からん
692:nobodyさん
12/01/12 14:37:16.69
>>690
ごめん、投稿した後すぐに気がついた(苦笑
693:nobodyさん
12/01/12 14:54:03.86
>>686
>>678
694:nobodyさん
12/01/12 14:56:29.29
>>691
system('php forkc1.php &');
と、バックグラウンドプロセスにすればよろしい。
プロセスの終了待ち処理を入れる必要があるけど。
695:nobodyさん
12/01/12 15:05:23.27
>>694
なるほど
実はまだ挑戦してて(笑
一度やり始めたら意地でもとなってしまってw
$pid[$i] = pcntl_fork();等と複数回呼び出して、
その後system()を呼び出すとかやってみたのですが30秒かかったりで
バックグラウンドプロセスという発想はなかったです
今から外に出ないといけないんですが、最後にちょっと試してみます
696:nobodyさん
12/01/12 15:10:13.69
>>694
アハハ、今>>688のコードにて
if ($pid == 0) {
system('php forkc1.php &');
system('php forkc2.php &');
system('php forkc3.php &');
}
としましたが
今度は31秒かかってしまいましたw
どこがおかしいのか分かりませんが、また帰ってからやってみます
697:nobodyさん
12/01/12 15:17:35.81
時間のムダ。
698:nobodyさん
12/01/12 15:23:17.54
pcntl_fork()の話してんのになんでsystem()になってんの。
699:nobodyさん
12/01/12 15:29:16.52
アホですから
700:nobodyさん
12/01/12 15:30:19.76
>>696
アハハ、なんで標準出力捨てないの
701:nobodyさん
12/01/12 15:31:28.10
>>698
たぶん>>686のWindowsでは動かないというのをみたからじゃないのかな。
ほんとに動かないか知らないけど
702:nobodyさん
12/01/12 15:50:09.93 at33kcZ9
ちょっとしたポータルサイトや、管理機能付きサイトを作るとき、
CMSを使うか、フレームワーク使うかどっちがよろしいですかね・・・。
703:nobodyさん
12/01/12 16:55:38.26
>>702
その文章だけを読んで「ちょっとしたポータルサイト」がどれほどの規模のものを指しているのか
わかる人は少ないだろう
704:nobodyさん
12/01/12 17:15:27.45
ヤフーくらい
705:nobodyさん
12/01/12 17:19:26.21
>>702
自分がやりやすい方でいいんじゃないすか。
706:nobodyさん
12/01/12 17:30:43.50
どっちも使えるようになるまで時間かかる
どっちも詳しくない私は
使わない方がやりやすい。
707:nobodyさん
12/01/12 17:42:30.00
PHPが出来るならWPはすぐに使えると思うが
708:nobodyさん
12/01/12 20:44:35.20
そもそもなんでこのスレで質問するのか
709:nobodyさん
12/01/12 20:59:53.31
確かに、なんでここで聞いたの?
710:nobodyさん
12/01/12 21:35:47.31
質問するスレだろ何が駄目なんだ
711:nobodyさん
12/01/12 21:41:21.83
>>710
>>1
712:nobodyさん
12/01/12 21:42:14.04
CMSを使うかフレームワークを使うかっていう質問はここじゃねぇと思うが
713:nobodyさん
12/01/12 21:43:04.05
質問するスレすらわからん馬鹿はポータルサイトなんか作れんよ
714:nobodyさん
12/01/12 22:20:03.29
PHPのフレームワークスレって確かあったよな
715:679
12/01/12 22:21:38.91
ギブ・・・
俺には自力では無理でした
>>699の言うようにアホですな
プログラム板にでも行ってきます
716:nobodyさん
12/01/12 22:29:06.06
>>697
なんで人の質問を俺がやってるのか分からんが、それが出来たら楽に処理できるような事も
出てくるかなと思ってやってみたんだけど
>>698
いや、だって引数とって一気に別ファイルのスクリプト実行するんでしょ?
system()じゃないの?
>>700
ごめんどういうこと?
$php fork-test.php > /dev/null
とかってこと?
同時に実行されていくということは
c1:0
c2:0
c1:1
c2:1
のように出てくるのかなとか思ってたんだけど違うん?
717:nobodyさん
12/01/12 22:31:19.98
>>716
バックグラウンドプロセスの標準出力を捨てろってこと。
718:nobodyさん
12/01/12 22:36:09.30
>>716
一気に別ファイルのスクリプトを実行するのにforkではダメだと思った理由を書いてみ
719:nobodyさん
12/01/12 22:48:45.79
>>718
ごめん、分かりませんw
forkって子プロセスを作成->親プロセスは待機->子プロセス終了->親プロセス実行
って動作だよね?
で、子プロセスは親プロセスのコピーであると
だから元々親プロセスの時点で実行されていたり、格納していた変数の値とかは子プロセスも保持していると
ま、自分の分からない所は子プロセスを複数作成するにはPHPだとpcntl_fork()をその回数実行すると
ただ、自分がやったのでは
$pid1=pcntl_fork();
$pid2=pcntl_fork();
それぞれにて上記のようなfor()を使うと一緒に実行されるんじゃなくて、直列(逐次)処理になってて「う~ん」と
別ファイルのスクリプトを実行するのにPCNTL関数内にそんな感じの関数もないし、
データベースなどから設定値を取得してきて、そこから得てきたそれぞれの設定値を渡すとなると
system()かなと考えて・・・
例えばどんな風に書けばいいんですかね?
720:nobodyさん
12/01/12 22:50:08.98
>>719
大前提がおかしい
>>667
721:nobodyさん
12/01/12 22:54:57.73
>>719
ちなみに>>662におけるsleepをタイムスライス放棄のみのコードに変更した場合の出力結果例はこんな感じ。
child1: 0
parent: 0
parent: 1
child1: 1
parent: 2
parent: 3
child1: 2
parent: 4
parent: 5
child1: 3
parent: 6
child1: 4
parent: 7
child1: 5
parent: 8
child1: 6
parent: 9
wait begin.
child1: 7
child1: 8
child1: 9
wait end.
あとID出せよカス
722:nobodyさん
12/01/12 23:11:37.74 QxDXzJq0
タイムスライス放棄のみのコードって何だと思いググってました(苦笑
sleep(-1)ってのが出てきましたがこれの事ですかね?
俺は>>667のようにはならないんですが、OSは何ですか?
つまり、>>662のようなfor()文使った場合は、子プロセス->親プロセス->子プロセス->親プロセス->
という挙動をすると言うことですか?
しかし俺全然だめだなぁ・・・
723:nobodyさん
12/01/12 23:45:38.66
phpファイルで、以下のようにjava scriptのファイルを読み込んでいるのですが、
<script type="text/javascript" src="test.js">
test.jsを変更しても反映されないことがあります。
ブラウザがキャッシュか何かをしているのでしょうか?
回避策とかありましたらご教授お願いします。
724:nobodyさん
12/01/12 23:49:13.05
>>723
日付が変わってればキャッシュを破棄しそうなもんだけど。
プロキシ的なものが挟まってたりしない?
一応試せることとしては、たとえばIEならCtrl+F5ですべて再読み込みする
725:nobodyさん
12/01/12 23:52:16.83
>>723
ブラウザ特有の現象かもしれないから後でちゃんと自分で調べるとして
とりあえずそういう時は応急処置にファイル名に適当な文字列を追加するもんだ
echo '<script type="text/javascript" src="test.js?' . md5(microtime(true)) . '">';
726:nobodyさん
12/01/13 00:05:03.08
なんでmd5かけるの?
727:nobodyさん
12/01/13 00:11:52.36
バカだからに決まってるじゃん
728:nobodyさん
12/01/13 00:29:29.21
ドットが入るのが嫌だっただけ
かけたくないならかけなくていい
729:nobodyさん
12/01/13 00:33:49.01
ドット・・・?
730:nobodyさん
12/01/13 00:36:37.67
小数点
731:nobodyさん
12/01/13 00:37:36.05
くだらんとこに突っ込むなよバカども
732:nobodyさん
12/01/13 01:00:13.01
しかしまぁ俺プログラマーとか言って
>>725みたいなクソコード書いてるのもひどい話だな
733:nobodyさん
12/01/13 01:16:41.96
言ってることは間違ってないけどこれはないな
>echo '<script type="text/javascript" src="test.js?' . md5(microtime(true)) . '">';
time()とかuniqid()で事足りる
>md5(microtime(true))
ない
734: 忍法帖【Lv=8,xxxP】
12/01/13 01:22:37.06
735:nobodyさん
12/01/13 01:43:03.96
>適当な文字列を追加する
これが実現できればなんでもいいだろ
何を拘ってるんだ?パフォーマンス?(笑)
そんなミジンコみたいなところでケチつけるなレスの無駄使い
736:nobodyさん
12/01/13 01:48:42.10
しょうがないだろミジンコしかいないんだから
URLリンク(stackoverflow.com)
737:nobodyさん
12/01/13 02:15:09.35
>>733
> time()とかuniqid()で事足りる
えっ
> >md5(microtime(true))
> ない
こっちの方がまだマシ
738:nobodyさん
12/01/13 02:18:26.75
必死だなw
739:nobodyさん
12/01/13 02:22:50.77
特定ユーザに対してユニークであればいいんだから、ミリセカンド精度で事足りると思うよ。
>>738みたいな意味のないレスをする人がどう考えてるのかさっぱりわからんけど。
740:nobodyさん
12/01/13 02:28:45.64
そんなに悔しかったか ごめんよw
741:nobodyさん
12/01/13 02:30:22.51
必死すぎw
742:nobodyさん
12/01/13 02:31:28.69
理解できる範囲の話になったとたん沸くやつってなんなの
743:nobodyさん
12/01/13 02:34:35.61
…ねないの?
744:nobodyさん
12/01/13 02:43:41.18
なんでPHPでするのか不思議。
745:nobodyさん
12/01/13 02:45:27.34
>>742
全くだな
自分につっこむ機会があると思うと頑張ってつっかかってきちゃうやつワロスwwww
上級者からすればそんなこまけーこたぁどうでもいいんだよって感じだがな
746:nobodyさん
12/01/13 02:47:04.65
ニートのおっさんだろどうせ糞コード晒してんのは
上級者()
早く吊れよ
747:nobodyさん
12/01/13 02:51:11.50 KkkOzRWt
NATポートマッピングを自動でやる方法を教えてください。
Bitcometみたいに。
748:nobodyさん
12/01/13 03:12:53.61
PHP使ってるって言ったら
ヴォエエエエエエ ブヒョー コーヒー吹かれた
749:nobodyさん
12/01/13 03:14:54.14
>>747
uPnPってわけでもなさそうにみえるが、NAPTを自動でやりたいってこと?
なら、ネットワーク越しに操作できるルータを手に入れる必要がありそう。
そんな話じゃないよ!ってことならBitcometの動作をもっとよく見ること。
750:nobodyさん
12/01/13 03:15:41.52
ニートのおっさんだろどうせ煽ってんのは
低級者乙
早く吊れよ
751:nobodyさん
12/01/13 03:23:44.99
おっさんだってPHPでできなさそうなことを考えるのに必死なんだよ
752:nobodyさん
12/01/13 03:25:36.98
forkの人はム板に行って静かになった。彼に説明する人が他にもっといればよかったのに
753:nobodyさん
12/01/13 03:32:16.25
PHPで並行処理wwwwwwwwwwwwwwwwwwwwwwwwwwww。
無理ぽ。
754:nobodyさん
12/01/13 03:32:56.22
最近あれだな>>747みたいなやつ多いな
同一人物だとは思うけど
俺が課題出してやるから解決してみろ的な
ほんと消えてくれないかな
755:nobodyさん
12/01/13 03:37:04.13
>>753
forkとストリームソケット使えばどうにかなるだろ
てか少し前にそれ系のレスあるから読んでみ
756:755
12/01/13 03:40:02.10
>>753
補足だけど、5.1系のセマフォがバグありだったから気をつけて。
いまさらあえて5.1使うこともないだろうけど、割と最近のRHELまでは5.1系だった気がするので遭遇することもあるかもしれない
757:nobodyさん
12/01/13 03:52:09.82
>>755
あなたの言うように、
forkとストリームソケット使えば「遊び程度」ではどうにかなるだろうね。
しかし、商売用には素直にマルチドレッド言語を使ったほうがいい。
デフォルトで並行できるので開発スピードとパフォーマンスが
「圧倒的に」優れる。forkくんの質問と回答のあまりの馬鹿馬鹿しさに
気持ち悪い。
758:nobodyさん
12/01/13 04:15:10.88
PHPで並行処理が無理だというから、それの返事だったんだが、並行処理はできるけど遊び程度だという風に話をずらされても困る
パフォーマンスについてはまったくもってそのとおり。ただ、それらを同じ土俵にあげること自体が間違えているよね。
開発スピードについては比較対象に依存する。マルチプロセス処理を記述する場合に圧倒的に開発スピードが優れる言語は何?
マルチスレッド言語とやらが何を指しているのかわからないが、たとえばCLRで提供されているワーカースレッドのようなものを指している?
ちょっと内容が漠然としているように思うよ。
759:nobodyさん
12/01/13 09:09:47.21
当たり前話を、ドヤ顔で言ってて恥ずかしくない上に、気持ち悪いとか言ってる人がいるよ。
760:nobodyさん
12/01/13 09:19:15.93
phpでできないこともあるんだね~。
761:nobodyさん
12/01/13 09:21:03.11 1Ih2hdXs
新規にポータルサイトを開発しようと思ってます。
管理機能とかもついてます。
作成の仕方として以下の3つの方法が浮かびました。
フレームワークを使って作成する。(codeigniter)
CMSを使って作成する。(MT or WP)
フレームワークにCMSプラグインを入れて作成する。
どれがいいでしょうか?
762:nobodyさん
12/01/13 09:21:55.46
好きにしろ
763:nobodyさん
12/01/13 11:33:36.37
CMSは非プログラマ向けで、FWはプログラマ向けなだけなの。
悩むほどの話じゃないし、どれつかえばいいかえらべないならけんさくしていちばんうえつかえばいいだけ
764:nobodyさん
12/01/13 13:32:56.37
>>757
765:587
12/01/13 16:04:33.77
皆さんレス、本当にありがとうございます。
しばらく勉強して、なんとか14日以前の日付を10日前で表示するところまで辿り着いてきましたが、なぜか1969年になってしまいます。。
$ptimeはUNIXTIMEではなく1323413498等という数字が入っているのですが、
これを一度UNIXTIMEにするには、どのように記述すればいいでしょうか?
ここがうまくいけば、なんとかなりそうです。
よろしくお願いしますm(_ _)m
↓年だけおかしくなっている現状です。
$post_date = date("y/m/d", $ptime);
$limit = 60 * 60 * 24 * 14; // 過去14日よりも前のものだった場合、
if($_SERVER['REQUEST_TIME'] - $post_date > $limit) {
$post_date -= 60 * 60 * 24 * 10; // 表示は10日前の日付にする。
}
$date = date(y/'m/d', $post_date);
※$dateで表示させています。
766:587
12/01/13 16:09:06.03
↑
すいません、よく確認したら、表示されている日付が20日ぐらい前になっていました(^^;
とりあえず$ptimeはUNIXTIMEにすれば解決できるのかと思います。
度々すいませんが、よろしくお願いします。。
767:nobodyさん
12/01/13 16:20:08.93
なんか面倒な事してるな
俺はこっち使ってる
strtotime("- 10 day",time())
768:nobodyさん
12/01/13 16:32:32.90
12日前のは12日前と表示されることになるだろうけど、それも含めて特殊な事情?
769:765
12/01/13 17:03:53.19
はい、特殊な事情で、13日以前は、そのままで大丈夫なんです。(^_^)
770:765
12/01/13 17:05:44.03
>>767
その記述だと、全体的にかわりますか??(^_^;)
771:nobodyさん
12/01/13 17:16:23.09
>>770
意味がよく解らん
772:nobodyさん
12/01/13 17:16:32.15
$_SERVER['REQUEST_TIME'] - $ptime じゃねーの?
んで、 $ptime -= 60 * 60 * 24 * 10;
$date = date(y/'m/d', $ptime);
773:nobodyさん
12/01/13 18:13:51.83 f/pZY+bx
すみません。質問お願いします。
smarty + pear::pager を使って、情報検索を作っています。
文字コードはUTF-8
携帯用なので、session.use_trans_sid = 1 にしてURLでセッション管理をしていますが、
PHPSESSIDが正しく付かない時があります。
{foreach item=row from=$List}
・・・
<a href="detail.php?ID={$row.ID}">詳細へ</a></p>
・・・
{/foreach}
で1ページ10行ぐらい表示するのですが、
10行に1行ぐらいの割合で
<a href="detail.php?ID=005&PHPSESSID=○○○">となるはずが、
<a href="detail.php?ID=005"?PHPSESSID=○○○>となってしまい、
正しくリンクされません。
検索内容によって10行目だったり、5行目だったりと
規則性が無くなぜこうなっているかわかりません。
すみませんが、よろしくお願いいたします。
774:nobodyさん
12/01/13 20:50:42.78
$Listをvar_dumpしてみれば?
775:nobodyさん
12/01/13 21:03:38.69 f/pZY+bx
>>774 レスありがとうございます。
var_dumpすると IDは通常の数字で int(5) 等です。
List.IDには特に問題ないようです。
あと、var_dumpしただけで問題の症状が10行目だったのが18行目に変わったりしてます。
なんでなんだろ・・・?
776:nobodyさん
12/01/13 21:13:20.06
また謎なこと言ってるな
foreachしてるその配列をdumpして問題ないか確認しろってことでしょ
IDは問題ないようです、とか意味がわからん
foreachから/foreachまでの記述に問題がないならそのループさせてる配列以外問題になる箇所ないじゃん
そして配列がおかしかったらその配列を作ってるロジックがおかしいって特定できるでしょ
777:nobodyさん
12/01/13 21:16:34.52
&を&と書いてみてくれ
778:nobodyさん
12/01/13 21:17:17.58
&を&&と書いてみてくれ
779:nobodyさん
12/01/13 21:18:59.91
&を&amp;(半角)と書いてみてくれ
780:nobodyさん
12/01/13 21:19:28.62
&amp;(半角)
781:nobodyさん
12/01/13 21:19:36.98
あ、まて
SESSION IDを自動的にリンクに付加するようになってるのか
それ、自動でやらせないでアプリケーション側で実装したほうがいいぞ
それが解決策になる
782:nobodyさん
12/01/13 21:19:55.03
あ、まて
SESSION IDを自動的にリンクに付加するようになってるのか
それ、自動でやらせないでアプリケーション側で実装したほうがいいぞ
それが解決策になる
783:nobodyさん
12/01/13 21:33:35.56
使用するデータの型は同じで特に問題はないのに
自動付加するにせよ特定の箇所だけおかしくなるってのは考えられないね
確率や回数で処理を変えるとか妙なことやってない限り
><a href="detail.php?ID=005"?PHPSESSID=○○○>
こうなるのも謎
最悪>の前に"が入るよね
{$row}"{ID}としてるわけじゃないし
784:nobodyさん
12/01/13 21:40:01.56
&amp;(半角)バカスw
785:nobodyさん
12/01/13 21:52:49.63
>>779
&を&にしてくれっていいたいのか?
786:nobodyさん
12/01/13 22:04:24.28
みなまで言わんでいいです
787:nobodyさん
12/01/13 22:51:52.05 WYF6z6mt
PECLにmemcacheとmemcachedって2つあるようですが、
これらの違いはなんなんでしょうか?
Web上ではmemcacheの方が記述が多いので利用されているんだと思うのですが、
具体的な性能の違いとかあったら教えて頂きたいです
788:nobodyさん
12/01/13 22:55:30.59
URLリンク(ja.wikipedia.org)
これ見てわからないならわからなくていいと思う
789:nobodyさん
12/01/13 23:10:15.21
>>788
URLリンク(pecl.php.net)
URLリンク(pecl.php.net)
この違いがわからんって言ってることもわからないのに何でレスしたの?
790:nobodyさん
12/01/13 23:15:11.59
>>789
URLリンク(jp2.php.net)
URLリンク(jp2.php.net)
マニュアルを見ろ
791:nobodyさん
12/01/13 23:33:17.87
>>790
For those confuse about the memcached extension and the memcache extension, the short story is that both of them are clients of memcached server, and the memcached extension offer more features than the memcache extension.
せめてここ貼ってやれよ。
792:nobodyさん
12/01/13 23:34:47.49
まぁユーザノートは主観だけどね
でも俺もその意見には同意する
793:nobodyさん
12/01/13 23:39:13.44
>>787
一般的に皆memcacheの方を使ってるはずだ
そうだろ?
794:nobodyさん
12/01/13 23:44:36.38
いや待て
memcachedよりAPCだろ
APCの方が高速だし
PHP使いはmemcachedよりAPCのはずだ
795:nobodyさん
12/01/13 23:48:47.35
なんでAPCと比較したんだろ
796:nobodyさん
12/01/13 23:51:38.80
KVSとしての側面ももってるから。
てかしらないならレスすんなよもう
797:nobodyさん
12/01/13 23:52:14.87
>>795
前俺も記事見たことあるよ
この2つを比較してるやつ
まぁ高速化の意味だと思うけど
798:nobodyさん
12/01/13 23:53:58.78
>>795
そりゃするっしょ
799:nobodyさん
12/01/14 00:00:14.19
>>752
答えたかったけど、俺知らないし
PHPerはその手の知識持ってる人は少ないんじゃない?
Webコンテンツは作れても、そういうこと作る機会ってないだろうから
800:nobodyさん
12/01/14 00:04:38.50
memcachedやAPCが必要なほどのシステムを組んでるのか?
一般人が使う分にはヒープでいいだろ
801:nobodyさん
12/01/14 00:43:40.46
APCのほうがお手軽だしAPCで十分だな
ロードバランサなんかでアプリケーションサーバを冗長化してる場合とか
どのマシンに振られるかわからない時はキャッシュサーバーとしてmemcachedだな
1回目のアクセスはAサーバ2回目のサクセスはBサーバとかなるとキャッシュ見失うからな
ほとんど場合は1台で動かしてるんだろうしAPCつことけばいいでしょ
802:nobodyさん
12/01/14 03:22:42.53
>>801
分散オブジェクトは使わないのですか?
「どのマシンに振られるかわからない」とか考える必要ないので
使ったほういいですよ。
803:nobodyさん
12/01/14 03:36:04.89
新キャラ 分散オブジェクト厨
804:nobodyさん
12/01/14 03:42:32.66
>>803
PHPにできないことはないよな?
805:nobodyさん
12/01/14 03:44:32.87
>>804
そうなの?
806:nobodyさん
12/01/14 03:47:56.21
>>801
性能の悪いアプリケーションサーバーですね。
キャッシュもできないのですか?
何を使ってらっしゃるのですか?
807:nobodyさん
12/01/14 03:52:09.70
おまえはいいから早く吊れよ
人生詰んでるのに往生際悪すぎだぞ
808:nobodyさん
12/01/14 03:58:18.68
朝までがんばれ
809:nobodyさん
12/01/14 04:00:09.04
>>805
そう。現在、PHPでC言語を実装するプロジェクトが
このスレで始まった。君も参加するかい?
>>807
負け犬みたいだね
810:nobodyさん
12/01/14 04:01:20.83
>>806
あおってるつもりの内容が的外れなのはわざとなの?それだけ教えてほしい
811:nobodyさん
12/01/14 04:02:44.94
>>809
JavaScriptで動くOSを参考にしてみたらどうだい
812:nobodyさん
12/01/14 04:17:27.23
>>810
あおるつもりもなく、本気だよ。
>>811
ありがとう。
最初の目標はPHPでC言語を実装すること。
2番目の目標はPHPで実装したC言語(最初の目標)でさらに
PHPを実装すること。
3番目の目標は、PHPで実装したC言語(最初)でさらに実装した
PHP(2番目)でさらにC言語を実装すること。
4番目の目標は3番目で実装あれたC言語でJava仮想マシンを作ること。
813:nobodyさん
12/01/14 04:50:23.67
かまってちゃんウザイ
ブログの宣伝1度だけ許してやるから消えてくれ
814:nobodyさん
12/01/14 09:07:04.64
>>812
コテハンつけてくれNGするから
815:nobodyさん
12/01/14 10:46:42.03
>>801
はぁ? ということは
phpって分散トランザクションもできないの?
終わっているね・・・
816:nobodyさん
12/01/14 10:54:24.51
さっさと吊れ
817:nobodyさん
12/01/14 15:14:15.26
まぁ端から静観してる俺にとっては最近の話題は面白いけどね
CMSかFWかどっちがいいかのようなものから、セッションがどうたらとかよりも
fork()だとかAPCとかやや上のレベルの話題だからね
CMSとかFWとかそこそこハックしてきたけど、まずfork()なんてお目にかからないからね
まぁ、当たり前ではあるけれど
memcachedは簡単な実装は見かけたけど、APCは見たことないと思う
818:nobodyさん
12/01/14 16:43:56.71
>>817
フレームワークを使ってバッチ処理を書くときに役立つかもよ
819:587
12/01/14 17:30:34.28
みなさんレスをありがとうございます。
根本的に私の説明不足すぎでした。
そのために度々スレを使ってしまい、すいませんでした。
▼大元の相談内容
掲示板等で、$dateを使って日付を表示させているのですが、
特殊な事情があって、過去14日よりも前のものだった場合、
表示は10日前で表示したいのです。
例:1月1日投稿されたもの→5日に閲覧した場合は、そのまま投稿日時は1月1日。20日に閲覧すると投稿日時は1月10日で表示される。
▼現状
$date = date("y/m/d", $ptime); // $ptime はUNIXTIME (1323413498等という形で保存されています)
echo <<<EOM で $date を記述して日付(2011/12/22等という形)を表示しています。
私が勉強不足のため、皆さんのレスを参考にしていじっていたら、ごちゃごちゃになってしまいました(^^;
単純に UNIXTIMEである$ptimeを相談内容の処理をして$dateとして日付を表示できるようにする記述を再度教えていただけると助かります。
すいませんが、よろしくお願いしますm(_ _)m
820:nobodyさん
12/01/14 17:52:08.46
日付が14日よりも前かどうかの判断をしたい
10日前の日付を取得したい
というだけだと思うんだけど。
821:nobodyさん
12/01/14 18:27:08.83
どうせSEO対策だろ。
822:nobodyさん
12/01/14 18:43:08.04
1万人くらい使う掲示板を作りたいと思います
823:nobodyさん
12/01/14 18:45:55.07
10万犬くらい使う掲示板を作りたいと思います
824:nobodyさん
12/01/14 18:47:59.92
>>821
またおまえか
825:nobodyさん
12/01/15 00:09:47.66 0R9yJU6W
分散オブジェクトを作りたいと思います。
826:819
12/01/15 04:06:00.99
>>820
レスありがとうございます。
そうなんですよね。。
UNIXTIMEが、ごっちゃになってしまって、恥ずかしながら私の初歩的な知識では??になってしまいまして。
小さなお店のホームページをやっているのですが、写真をメールで載せるphpがありまして、
度々の更新ができない時にも日付だけフォローできるようにしたいのです。
827:nobodyさん
12/01/15 04:25:58.50
ID出せ
828:nobodyさん
12/01/15 04:45:42.13
要するに客を騙したいってことだな