【待望】PerlユーザのためのPHP入門 (601レス)
1-

182: 03/03/06 17:06 ID:??? AAS
本来はd=a?b:c;という形で使う者なんだから、=の方が低くて当然。
左辺値になるってのがおかしいんだよ(-_-;)
183: 03/03/06 19:06 ID:??? AAS
>>180
あぁ。最低から並べたものって書いてあった。うぅ。
184: 03/03/06 21:36 ID:??? AAS
180 名前:俺様 投稿日:2003/03/06(木) 17:04 ID:SMJB497B
>>179
>優先度は、=の方が上
ソースキボンヌ。
俺が調べた結果だと=の方が下だった。

181 名前:nobodyさん 投稿日:2003/03/06(木) 17:05 ID:G2YpYyeT
◆ようこそ!!ピンクエンジェルです★
外部リンク[html]:www.pink-angel.jp

182 名前:nobodyさん 投稿日:2003/03/06(木) 17:06 ID:???
省11
185
(3): 03/03/06 23:54 ID:aj5F0raF(1) AAS
教えて下さい。
配列@arrayに、'12-34','34-56'...みたいなデータが入ってて、-の右側でソートしたい場合、

@tmp = map { (split /-/)[1] } @array;
@array = @array[ sort { $tmp[$b] <=> $tmp[$a] } 0 .. $#tmp ];

でやってたんですが、同じことをPHPでやるにはどうしたらいいんでしょう?
186: 俺様 03/03/07 00:46 ID:86BQl/fj(1) AAS
>>185
実はそれに似たようなので、俺様も苦労したんだな〜

1<>32<>43<>2
3<>41<>443<>232
...
ってな感じでデータが入ってて
3列目(上だと43,443)だけでsortしたいなーって。
で、結局よくわからんかったから自己関数作った。

function cmp ($a, $b) {
$tmp1 = explode("<>", $a);
省13
187: 03/03/07 00:46 ID:??? AAS
教えて下さい。
配列@arrayに、'12-34','34-56'...みたいなデータが入ってて、-の右側でソートしたい場合、

@tmp = map { (split /-/)[1] } @array;
@array = @array[ sort { $tmp[$b] <=> $tmp[$a] } 0 .. $#tmp ];

でやってたんですが、同じことをPHPでやるにはどうしたらいいんでしょう?教えて下さい。
配列@arrayに、'12-34','34-56'...みたいなデータが入ってて、-の右側でソートしたい場合、

@tmp = map { (split /-/)[1] } @array;
@array = @array[ sort { $tmp[$b] <=> $tmp[$a] } 0 .. $#tmp ];

でやってたんですが、同じことをPHPでやるにはどうしたらいいんでしょう?教えて下さい。
配列@arrayに、'12-34','34-56'...みたいなデータが入ってて、-の右側でソートしたい場合、
省7
188: 03/03/07 03:08 ID:??? AAS
配列にしてからソートした方がよくない?
189
(1): 03/03/07 14:44 ID:??? AAS
>>185
Perlならこれでいいんじゃない?

@array = sort { (split(/-/,$a))[1] <=> (split(/-/,$b))[1] } @array
190: 03/03/07 16:22 ID:??? AAS
>>185

$i = 0;
for($array[$i]) {
list($first, $second) = explode("-",$array[$i]);
$first[] = $first;
$secondt[] = $second;
$i++;
}

array_multisort($second, $first);

$i++;
省5
191: 03/03/07 18:15 ID:??? AAS
>189
ソートの度になにかの処理をするって遅くならん?
192
(1): $n日後 03/03/07 18:53 ID:??? AAS
現在時刻から$n日後を求めたいいいだけどprelだと以下
($sec,$min,$hour,$mday,$mon,$year,$wday)=localtime(time + $n*24*3600);
PHPだとどうなるんだ?
あのツェラーの公式だっけか?
193
(2): 03/03/07 18:56 ID:??? AAS
>>192
>$n日後

なら純粋にtime()に86400 * nを足せばいいのでは?
194
(3): 03/03/07 19:23 ID:??? AAS
$i = 90;

$year = date("Y", time());
$day = date("n", time());
$month = date("j", time());
$hour = date("G", time());
$minute = date("i", time());
$second = date("s", time());

$timestamp = mktime($hour, $minute, $second, $month, $day + $i, $year);

print date("Y/n/j G:i:s", $timestamp);

まぁ別に変数を使う必要も無いわけだが。
195
(1): $n日後 03/03/08 13:58 ID:NNyx9+/Y(1) AAS
>>193 >>194
レスサンク!
ツェラーの公式とはまた違うか、・・・・。
PHPではツェラーの公式なんか使わなくても簡単に指定した日の
曜日とかも算出出来ちゃうんだね。
--抜粋--
また、カレンダー等でその日の曜日を知りたい時、「perl」では
Zeller(ツェラー)の公式を使って算出しなければいけませんが、
「php」では「string date (w , [timestamp])」とすると、
「timestamp」で指定した日にちの曜日を数字で返してくれます
省4
196
(1): 03/03/08 13:59 ID:??? AAS
>>195
質問が変わっている。
197: $n日後 03/03/08 14:09 ID:??? AAS
>>196
いやいや、これはこれであれはあれで・・・
失礼すました。
198
(1): 03/03/08 14:32 ID:??? AAS
Perlの場合、自前で計算したくないなら、Date::Calcを使えばいい。

>>194の回答はアホ過ぎ。timeの戻り値がシリアル値なんだから、
その性質を使わないのは勿体無い。
199
(1): 03/03/08 15:29 ID:??? AAS
>>193
うるう秒はどうするの?
200: 03/03/08 15:35 ID:??? AAS
>>199
うるう秒の意味わかってるか?
で、それをどうしたいのか?
201: 03/03/08 15:37 ID:??? AAS
うるう秒が蓄積されて誤差が1日を超えるような時間は、32bitのtimeでは指定できない。

でいいかな?

うるう秒をちゃんと考えるなら、>>194の方法で・・。
1-
あと 400 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.025s