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

【PHP】下らねぇ質問はここに書き込みやがれ 71

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2008/07/17(木) 19:42:52ID:DVaNTncw
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 70
http://pc11.2ch.net/test/read.cgi/php/1214356448/

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

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

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

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0527nobodyさん2008/08/04(月) 22:42:06ID:t2yFOOOp
>>525
言語によってはデフォでは配列の添え字が1から始まったりする
だからphpでは単にそう決まってるだけだよ

まぁ最初に作った奴は0からのが便利って思ったってだけだろ


0528nobodyさん2008/08/04(月) 22:48:04ID:???
>>522
C言語の影響なのかなあ?
0529nobodyさん2008/08/04(月) 22:49:06ID:3goeRlYF
>>525
>このような処理があちらこちらに出現すると、バグの元にもなりますし、

変数の使い方をしっかり決めておけばそんな混乱は起こらない。
あと出席番号=添字にするのなら、[0]を使わず[1]から振っていけばいい。
0530nobodyさん2008/08/04(月) 22:51:19ID:mchfEoZH
>>527
> まぁ最初に作った奴は0からのが便利って思ったってだけだろ

最終的にはそういうことですね。
1からではなく0から使うことのメリットを逆に知りたいくらいですですが・・・。

現実の世界とかけ離れたivory towerの中で作られたという印象を受けます。
phpの新しいバージョンで1から始まるように、願うしかないのでしょうね。
0531nobodyさん2008/08/04(月) 22:53:43ID:???
自分に理解できないことは象牙の塔か。
0532nobodyさん2008/08/04(月) 22:56:05ID:???
>>525
それは自然数だね。

>for文の中で$i + 1としてから
$iがいくつから始まるとか言ってくれないとわからん。
$iを1から初めて$array_sample[$i-1]みたいに使うこともあるだろ。

>$iを使っているのか$jを使っているのか訳が分からなくなります。
それは別のことの気がする。
0533nobodyさん2008/08/04(月) 23:00:57ID:???
>>530
たぶんC言語の影響じゃない。

自然語で先頭から3番目は
プログラム的には先頭+2の場所なんだよね。
0534nobodyさん2008/08/04(月) 23:01:23ID:???
>>528
確かにCで1から始まったら変態すぎるw
0535nobodyさん2008/08/04(月) 23:04:04ID:???
不毛なんだからその辺にしとけ
0536nobodyさん2008/08/04(月) 23:13:50ID:???
自分で好きなように言語開発すりゃいいじゃん

どーぞ
どーぞ
0537nobodyさん2008/08/04(月) 23:16:12ID:mchfEoZH
今まで疑問に思っていることでしたが、
貴重なご意見を頂きましてありがとうございました。

phpがC言語を影響を受けるのは必然的な流れで、
よく考えずに実装をしてしまったというのが妥当な推測でしょうか。

例えば、配列$company_memberを処理する際に、
 for ($i = 0; $i < count($company_member); $i++)
とするのは見慣れてしまっているので、むしろ自然の形かもしれませんが、
これを日本語風に翻訳すれば、「0より大きく最大数未満で処理しろ」ということですが、
 for ($i = 1; $i <= count($company_member); $i++)
として、「1番目から最大数になるまで処理しろ」というのが自然のリアルの思考です。

自然の思考に従って、後者の書き方で実装すると良さそうに見えますが、
phpの関数の言語仕様が0で始まっている以上、phpの標準関数を使う際に色々と支障が出てきます。

また、チームでやっているので、0から始まったり1から始まったりでは、
認識のズレが生じて、それも又バグの元です。

これを回避する方法はなく、結局郷に入りては郷に従え、悪法も法なりで
# 結局、0から始まることのメリットを言われる方がいないのもその裏付けだと思いますが
phpの言語思想の中で実装をしなければならないというのが結論と理解しました。

ありがとうございました。
0538nobodyさん2008/08/04(月) 23:19:41ID:???
         \   ∩─ー、    ====
           \/ ● 、_ `ヽ   ======
           / \( ●  ● |つ
           |   X_入__ノ   ミ   そんなエサで俺様がクマ――!!
            、 (_/   ノ /⌒l
            /\___ノ゙_/  /  =====
            〈         __ノ  ====
            \ \_    \
             \___)     \   ======   (´⌒
                \   ___ \__  (´⌒;;(´⌒;;
                  \___)___)(´;;⌒  (´⌒;;  ズザザザ
                               (´⌒; (´⌒;;;
0539nobodyさん2008/08/04(月) 23:19:58ID:???
配列の0は無いほうが合理的(キリッ
0540nobodyさん2008/08/04(月) 23:22:21ID:???
>>536
てめはPascalでもつかってろってこった
0541nobodyさん2008/08/04(月) 23:23:14ID:???
間違えやすいとか面倒というのは俺もそう思う。
混在しているとややこしいね。

以下のxは配列の先頭とか20とか33とかと仮定する。

xから5番目といったら$array_sample[x+5-1]なんだよな。

これはxと同じ位置のことをxから1番目と数えるからなんだろうな。
つまり1から数えるのはデメリットもあるってこと。

>よく考えずに実装をしてしまったというのが妥当な推測でしょうか。
そうは思わない。

>また、チームでやっているので、0から始まったり1から始まったりでは、
>認識のズレが生じて、それも又バグの元です。
配列に関係なく認識のずれがある時点でダメだろ。

># 結局、0から始まることのメリットを言われる方がいないのもその裏付けだと思いますが
なんだその視野の狭い即決は。
0542nobodyさん2008/08/04(月) 23:23:59ID:???
>>537
添え字が0から始まる言語のすべてに当てはまることを
さもphpだけに当てはまるように書いているのには
なかなか興味深いものがあるな
0543nobodyさん2008/08/04(月) 23:24:38ID:???
>また、チームでやっているので、0から始まったり1から始まったりでは、

詳細設計しろ。
添え字が何を意味するのか曖昧なまま開発したらバグって当たり前だ。

0を使いたくなければ使わなきゃいい。
0を使わない方向でチーム内で意思統一すればいい。
0544nobodyさん2008/08/04(月) 23:25:40ID:???
>>537
低脳プログラマ乙。文句たれる前に手動かせ。そのうち使えない奴として切られるぞ。
0545nobodyさん2008/08/04(月) 23:27:38ID:???
誰かが>537のperl版やjava版を作りそうな予感・・・
0546nobodyさん2008/08/04(月) 23:27:41ID:???
>>537
無知ばかりのメンバ
初心者ばかりのメンバ
暗黙の了解で作業している
失笑されるから質問とかしずらい
そんなチームなのかな。

大変だよな。わかるよ。
0547nobodyさん2008/08/04(月) 23:28:32ID:???
>>537
>>526に対する感想は。
なんで添字をそのまま出席番号に使おうとするのか分からん。
俺の中では全く別物。

あと真面目に議論したいなら、その嫌味口調をやめることと、都合の悪いことは無視せずに人の話をちゃんと聞くことかな。
0548nobodyさん2008/08/04(月) 23:29:41ID:???
>>537
添え字なんて使わずにポインタ使うにする、とかそういう実装の言語作ればいいじゃない
きっと君の言う自然に合致するはずだ
0549nobodyさん2008/08/04(月) 23:37:52ID:???
MATLABやBASICは配列1からだな。
Pascalは確か範囲を指定できるんだよな。マイナスとかできたっけ?

移植するとき辛い。実際面倒だからMATLABで実験するの拒否したけど。
混乱するから、全部0から始まる言語だけでいいよ。
0550nobodyさん2008/08/04(月) 23:40:25ID:???
よく分からないのだが、添字を指定しないと自動的に0としてキーが作成されることを問題としているのではなく、
チーム内で0と1が混在してしまうから面倒だってこと?誰かまとめplz
0551nobodyさん2008/08/04(月) 23:45:20ID:???
>>550
それでは、まとめます。(日高義男風)

プログラマー思考の0派と、自然思考の1派がいて、
どちらかに統一しようとすると、思想弾圧に繋がって、
チームがギクシャクするから、困っている。

ということ。
0552nobodyさん2008/08/04(月) 23:49:54ID:???
つーかさぁ
PHP知ってるやつって全員配列の添字は0から始まるってことを知ってるからチームで動いても問題ないのでは?
むしろ知らない奴のほうが珍しいだろw
0553nobodyさん2008/08/04(月) 23:53:10ID:???
仕様書や会話や画面表示では番号1番なのに
コーディングやデバッグしているときは$i=0とか$a[0]を扱うとかに
ついていけない初心者ばかり増員されて苦労してんじゃないの。

気持ちはわかる。プログラムは大変だよね。面倒だよね。

野球には背番号が0番とか00番があるみたいですね。
俺野球に興味無いからよくしらんけど。
プログラマーって大変ですね。
0554nobodyさん2008/08/04(月) 23:53:18ID:???
>>552
話のよく聞けよwww
知っているか、知らないじゃなくて、思想の違いがあるから問題が出るってことだろ?
0555nobodyさん2008/08/04(月) 23:56:36ID:???
思想の違いってアホか
使う言語に合わせりゃいいだけの話だろ
0556nobodyさん2008/08/04(月) 23:58:20ID:???
0から始まるとか、
if文でi=0とか、

0557nobodyさん2008/08/04(月) 23:58:55ID:???
>>555
要するに「PHP言語仕様の思想が僕の思想と違うのでPHPは糞です」て言ってるんだよな。
0558nobodyさん2008/08/05(火) 00:33:54ID:???
>>554
そんなこと初めて聞いた。
他に事例あるか?
「添字が1から始まるべき」思想を持ってる初心者が大量増員されたんならご愁傷様と言う他無いが。
0559nobodyさん2008/08/05(火) 00:43:24ID:???
添え字を番号として使う人で、添え字と内容の番号違いが嫌ならば[0]を番兵チックに利用すればいい。
(出席番号の場合、[0]を担任教師用に確保するんだよ)

ただ、ナンバーが01から始まり、最後まで連続しているっていうのは、あくまで例外であり、それを基準にするのは間違っている。
0560nobodyさん2008/08/05(火) 00:46:37ID:???
>>554
おまえxamppなんか糞開発環境プギャー
オレは時間かかるけど1から開発環境作ってるぜ (キリッ

の奴だろw
0561nobodyさん2008/08/05(火) 00:51:18ID:???
しょーがないからマジレスしてやるけど機械的には1から始まるより0から始まるようが若干高速なんだよ
アセンブラ勉強した奴ならわかると思う
0562nobodyさん2008/08/05(火) 01:03:59ID:???
>>560
xamppは開発環境ではありません。

あと時間を気にするなんて毎日作り直してんの?
参考までに使った場合と使わない場合にそれぞれかかる時間を教えて。
0563nobodyさん2008/08/05(火) 01:06:13ID:???
下らねぇ質問が来るまでこの流れのままなのか・・・
0564nobodyさん2008/08/05(火) 01:11:44ID:???
>>561
足りない頭で、レス乙。

高級言語の仕様が1から始まるかと0から始まるかということと、
アセンブル・機械語がどうかとは全く別の話だ。

それは高級言語の実装で吸収すればいいだけの話。
0565nobodyさん2008/08/05(火) 02:54:56ID:???
>>564
俺その辺詳しくないから聞きたいんだが、
要素数が255とか65535(2進法)
10、100(10進法)
2147483647(32bitでのintとfloatの境界)

の時は[0]スタートの方が有利に思えるんだけどどうなの?

例えば10個目の配列の参照する時
[0]からの場合【[9]】
[1]からの場合【[10]】
と書くよな。

9は1文字、10は2文字
ソースのサイズは若干変化あるよな。
後、intとfloatの型変化の時も影響がデカイ気がする。
こういうレベルの影響はないのか?
0566nobodyさん2008/08/05(火) 03:12:59ID:???
C言語で配列の要素番号が0から始まるのは、配列が存在するアドレスから何要素分進んだかを表しているから。
hogearray[16]は、*(hogearray + 16)の構文糖衣。
多次元配列darray[4][4]は*(darray + 4 * x + 4)。 # xはsizeof(darray[0])
もし要素番号が1から始まったら、多次元配列darray[4][4]は*(darray + 3 * x + 3)。
[]で書くと4なのに、ポインタを使うと3になる。こんなややこしい仕様はバグの元。
だから要素番号は0から。
で、PHPは元々Perlので実装され、そのPerlが配列に関してはC言語の構文を真似たから、PHPの要素番号も0からになったと予想。
悪法でも何でもなく、親しめられてきた言語に合わせて、CやPerlなどからPHPに移ってきた人が混乱しないようにしただけ。
>>561
それは比較するときの話なのでは。x86やx64で言えば、0との比較はcmpしなくてもmovでZero Flagフラグが立つかどうかで分かるから。
# Core 2以降はマクロヒュージョンのおかげでcmpしようがしまいが同じだがな。
>>565
ソースが1文字増えたところでロスする時間は1マイクロ秒以下。それを気にするならソースの余計な空白やタブを取っ払う方がいい。
0567nobodyさん2008/08/05(火) 03:28:28ID:???
>>566
お前が、相当技術力があるのは認めるが、
なんで、そんな奴がこのレスにいるの?

phpなんて、単価が安い仕事ばっかだろ。
レスで書いているような内容が分かるなら、
phpよりも、かなり良い仕事が出来そうだが。

おれ何をしているかというと、昔SEをやっていたが今はシステム営業をやっていて、
自分のサイトを作るためのに個人的にphpをやっていたりする。
0568nobodyさん2008/08/05(火) 03:36:45ID:???
ただ2chのスレを巡回して、どこかからの受け売りを垂れ流す、技術も糞もない学生ですがな
0569nobodyさん2008/08/05(火) 04:14:40ID:???
>>567
を笑うスレですか?
0570nobodyさん2008/08/05(火) 08:58:09ID:???
プログラミングに思想と性欲は邪魔
0571nobodyさん2008/08/05(火) 09:24:02ID:???
>>567
WEBアプリほどぼろい商売ないと思うんだけど、低脳のおまえは何で稼いでんの?w
0572nobodyさん2008/08/05(火) 09:26:44ID:???
>>562
おまえのとこは客があまりいなくて暇でいいんだな
客に合わせていろんな環境を嫌々作ってみたらよくわかるで
0573nobodyさん2008/08/05(火) 09:29:13ID:???
>>571
php程度の仕事で、ぼろい商売なんて思うなんて、お前は相当あれ何だなぁww
0574nobodyさん2008/08/05(火) 09:32:42ID:???
xamppを開発環境じゃないといってる馬鹿は放置しとけ
0575nobodyさん2008/08/05(火) 09:34:33ID:???
>>573
そのPHP程度のスレをいちいち覗きに来なきゃーいいのにねぇ
( ´д)ヒソ(´д`)ヒソ(д` )
0576nobodyさん2008/08/05(火) 09:37:08ID:???
>>573
こういう低脳な奴が相場下げていってるんだろーな
0577nobodyさん2008/08/05(火) 09:47:55ID:???
要素番号が1から始まる言語って存在するの?
0578nobodyさん2008/08/05(火) 09:55:54ID:???
>>577
VB6までのVisualBasicとか。
0579nobodyさん2008/08/05(火) 10:00:36ID:???
>>578
VB6までしか使ったことないけど、
今のVBって配列の要素番号変わっているの?
移植とか困るだろうなぁ。
0580nobodyさん2008/08/05(火) 10:07:34ID:???
>>578
VB.NETは0からになったはず。
どうせほとんど別言語の体裁を取ってるし、
元々Option Base 0使ってる奴が大多数。
大差ないと思われwww
0581nobodyさん2008/08/05(火) 10:14:01ID:???
0から始まる言語を初めて使ったとき、0からだとこんなにスッキリ書けるんだ!
と、思ったもんだがな。
0582nobodyさん2008/08/05(火) 12:59:08ID:???
>>574
http://ja.wikipedia.org/wiki/%E7%B5%B1%E5%90%88%E9%96%8B%E7%99%BA%E7%92%B0%E5%A2%83
もしかしてphpspot(笑)とか真に受けちゃってる?
0583nobodyさん2008/08/05(火) 13:06:04ID:???
>>582
典型的な馬鹿か?
開発するために必要な環境全般をさして開発環境というんだよ
IDEのことだけをさすわけじゃない
当然デバッグのための環境(xampp)も開発環境という
IDE全てにデバッガが含まれてると思ったら大間違い
0584nobodyさん2008/08/05(火) 13:07:16ID:???
>>582
しったか乙
0585nobodyさん2008/08/05(火) 13:13:01ID:???
まったく、さすがphpのスレだけあってレベルが低すぎる。
馬鹿でも出来るphpだが、それさえも出来ないって救いようがない。
0586nobodyさん2008/08/05(火) 13:13:48ID:???
>>583-584
初心者さんなのかな?^^ 頑張ってピー・エッチ・ピー習得してね^^
0587nobodyさん2008/08/05(火) 13:14:21ID:???
さてお前らPHP5.3リリースですが
http://www.rooftopsolutions.nl/article/199
0588nobodyさん2008/08/05(火) 13:15:37ID:???
xamppはテストには必要だがステップ実行するデバッガとはまた別
そのテスト環境も開発環境の1つなのは間違いないが
文字どおり開発するのに必要な環境なわけだからな
xamppとメモ帳だけだって立派な開発環境だ
IDEにだってxamppをパッケージとして含めることはできるわけだし
オールインワンにした場合そのxamppが含まれたIDEに対して
xamppの部分は開発環境でないなんて意味不明なことはいえないだろ
0589nobodyさん2008/08/05(火) 13:15:59ID:???
>>587
php5.3って、当然配列の添え字は1から始まっているんだろうな?
0590nobodyさん2008/08/05(火) 13:17:21ID:WvP0Kt9J
xxne.jpみたいなサブアドサイトを作りたいんだけど
PHPで出来るのかな?
0591nobodyさん2008/08/05(火) 13:17:35ID:???
配列の添え字で不都合するのは糞プログラマだけだろ
いっぱしのやつならそんなの気にしない
たとえ添え字が14とかわけわからん数字からはじまっててもな
0592nobodyさん2008/08/05(火) 13:21:00ID:???
俺はJAVAを中心に仕事をしているが、
配列の添え字なんて、そもそもプログラムで意識しない。
配列が必要なデータはクラス化(ListやMapなど)してしまう。

配列の添え字を意識しなければいけない時点で、
オブジェクト指向が出来ていない証拠だよ。
今まで、そういう指摘が出ないのが不思議。

まだ、php4とか使っているのかよ?それともオブジェクト指向すら知らない?
0593nobodyさん2008/08/05(火) 13:24:30ID:???
>>592
PHPにはコレクションはありません
0594nobodyさん2008/08/05(火) 13:30:54ID:???
何でもかんでもコレクションにブチ込むのがOOPなんですか
配列を返す関数とかも色々あるんですけど、全部コレクションに入れ直すんだろうか
でもその場合でも配列は扱うよね
0595nobodyさん2008/08/05(火) 13:35:40ID:???
> でもその場合でも配列は扱うよね
使わねーよw
Iteratorとか知らねーのかよw
配列を生で扱うことに何の躊躇もないなんて、可哀想な脳みそ。
0596nobodyさん2008/08/05(火) 13:37:01ID:???
>>586
これだから初心者は^^;;;
Web開発するんだからWebサーバなども含めて開発環境に決まってんだろ
必要とあらば各種SDKフレームワークなども含める
使用する統合開発環境(IDE)だけに含まれてるものだけで開発できるとは限らん
結局自分が何を作るかで必要なものが個々に必要になってくるわけ
IDEはその土台に過ぎん
0597nobodyさん2008/08/05(火) 13:38:52ID:???
ここはPHPのスレですよ?
だいたいOOPとかスレ違いもいいところ
PHPで無理にOOP使う必要はない
0598nobodyさん2008/08/05(火) 13:39:40ID:???
OOよく分かってない人はイテレータとか使うだけで感動する傾向がある気がする。
0599nobodyさん2008/08/05(火) 13:39:49ID:???
597 :nobodyさん:2008/08/05(火) 13:38:52 ID:???
ここはPHPのスレですよ?
だいたいOOPとかスレ違いもいいところ
PHPで無理にOOP使う必要はない
0600nobodyさん2008/08/05(火) 13:41:47ID:???
いちおうSPLとかあるけど、使ってる人は見たことがない
0601nobodyさん2008/08/05(火) 13:53:14ID:???
PHPの質問をどうぞ
0602nobodyさん2008/08/05(火) 13:59:33ID:???
JAVA厨がしょぼPHPユーザをいじめてると聞いて飛んできますた
0603nobodyさん2008/08/05(火) 14:04:23ID:???
>>595
javaには配列からコレクションに変換する関数があるんだな
iterator全く関係ない訳だが
0604nobodyさん2008/08/05(火) 14:35:30ID:???
ひとまずスレタイ読めるようになってから来てくれ
0605nobodyさん2008/08/05(火) 14:53:49ID:???
まだやってんのかお前らwwwwwwwww
0606nobodyさん2008/08/05(火) 15:16:09ID:???
本日のキチガイチェキ

>>567
>>573
>>582
>>585
>>586
>>592
>>595

ID出なくてもキチガイは目立つから以外にわかるもんだな
0607nobodyさん2008/08/05(火) 15:17:45ID:???
追加
>>606
0608nobodyさん2008/08/05(火) 15:37:03ID:???
  ワケ     ワカ     ラン♪
  ∧_∧   ∧_∧    ∧_∧
 ( ・∀・)  ( ・∀・)   ( ・∀・)
⊂ ⊂  )  ( U  つ  ⊂__へ つ
 < < <    ) ) )     (_)|
 (_(_)  (__)_)    彡(__)
0609nobodyさん2008/08/05(火) 15:47:11ID:???
>>607
おいおい、俺も入れてくれよ
0610nobodyさん2008/08/05(火) 18:39:34ID:???
>>587
・名前空間
・クロージャー
・SQLite3デフォ
きたああああ
0611nobodyさん2008/08/05(火) 19:24:35ID:???
もちけつ、まだalphaだ
0612nobodyさん2008/08/05(火) 21:13:40ID:???
おまえらせっかく10年遅れでパターン覚えたのに残念だったなw
0613nobodyさん2008/08/05(火) 21:22:15ID:???
あれ、青山は辞めさせられたの?それともオリンピック取材?
0614nobodyさん2008/08/05(火) 23:00:21ID:8enGip0r
プログラムが実行しているページのURLを取得したいと思います。

echo "http://".$_SERVER["SERVER_NAME"].$_SERVER["SCRIPT_NAME"];

で一応取得できるのですが、http://とすると、
SSLページの場合は適さないと思います。

何か良い方法、または関数って無いでしょうか?
0615nobodyさん2008/08/05(火) 23:04:38ID:???
>>614
var_dump($_SERVER);
0616nobodyさん2008/08/05(火) 23:14:18ID:???
PHPよりJavascriptで取得した方が正確だったのでそうします。
お騒がせしました。
0617nobodyさん2008/08/06(水) 01:34:58ID:1xe8Gdey
597 名前:nobodyさん[sage] 投稿日:2008/08/05(火) 13:38:52 ID:???
ここはPHPのスレですよ?
だいたいOOPとかスレ違いもいいところ
PHPで無理にOOP使う必要はない
0618nobodyさん2008/08/06(水) 01:38:34ID:nCuNNad/
20万件のデータを配列に格納して、
あるデータがその配列にないかを検査する
処理を書いています。

in_array()で一個ずつマッチングしているのですが、
これが一番早いやり方でしょうか?

アルゴニズムの勉強をすればもっといい方法があるのかもしれませんが、
なるべく簡単にできるやり方で良い方法があれば教えて頂きたいと思います。

ちなみに、DBは使えない環境です。その代わりメモリーは16GBあります。
0619nobodyさん2008/08/06(水) 01:40:05ID:???
自前でインデックス作って管理
0620nobodyさん2008/08/06(水) 01:45:20ID:nCuNNad/
>>619
回答ありがとうございます。
ただ、今日の夕方までが納品なので、それを今からやるのはちょっと辛いです。
現在、パフォーマンステストの段階まで来ていて、
この部分の処理をもう少し早くできればと思っています。
0621nobodyさん2008/08/06(水) 02:01:59ID:???
>>620
入れるときにソートしとけば?w
0622nobodyさん2008/08/06(水) 02:21:18ID:???
質問です

PHPだけの質問ではないのですが、
Google Picasa内の画像の直URL
例)
ttp://lh3.ggpht.com/Josythecook/RqUmb2H6U0I/AAAAAAAAAAw/A2d0MFM8N6Y/Adriana_Lima89.jpg

IEでもFFでもブラウザに直にURLを入れると表示されるが、
Javascriptで
image = new Image(); image.src = 'http://〜';
と入れても表示されない。※先にブラウザURL直打ちしたあとなら表示される。おそらくキャッシュを使うため

さらにPHPの
fopen('http://〜'); や file_get_contents('http://〜');
でも開けません。

PHPのCURL関数もだめでした。
※FFのLivehttpheadersでFFで画像を表示したときのヘッダー情報を真似てみました。(UA偽装など)

また、上記のいづれもPicasa以外の画像なら表示できるため、根本的にやり方が間違っているということはないと思われます。

上記のことから、Picasa側でどのような制限をかけているか判別できるかた居ますでしょうか?
また、もし可能ならPHP+CURLを使用した取得可能なサンプルを教えいただけますでしょうか?

よろしくお願いいたします。

0623nobodyさん2008/08/06(水) 02:25:02ID:???
自前でインデックス作るのってそんなに難しいことか?
1カラムに限定すれば楽だと思うけど。36進数で管理すればファイルサイズも節約できるよん。
0624nobodyさん2008/08/06(水) 03:10:22ID:???
>>622
FFってなんだ?
もしかしてFxのことか?

FireFoxって書いてると恥ずかしいから、
今のうちにFirefoxって書く練習しておいたほうがいいよ

fopenで普通に取得できたから、やり方が悪いんじゃないの?
0625nobodyさん2008/08/06(水) 03:27:37ID:???
Final Fantasyだろjk

火狐とかきもい略称もあるよな
支那人かお前はと・・・
と思って中文のFirefox説明を見てきた

Mozilla Firefox(正式縮寫為 Fx,非正式縮寫為FF),俗稱火狐(目前無官方中文名)
意味はなんとなくわかったwwwwww
しっかりFFも非正式ながら使われてるようだwwwww
0626nobodyさん2008/08/06(水) 03:29:38ID:nCuNNad/
>>621>>623
レス感謝します。
なんだか、自分が想像していたより、
どんどん話が大きくなってしまって、
怖くなったので、この辺で終わりにしたいと思います。

私としましては、ただ簡単に速く出来ればと思って書いた質問でした。
なので、正直なところとして、それ以上の事はよかったのです。
■ このスレッドは過去ログ倉庫に格納されています