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

【PHP】質問スレッドPart2

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。01/10/17 10:52ID:zLTg5ihK
レスは気長に待つのが良い感じかも。
答えられる方、返答よろしくお願いします。

参考リンク
■本家
http://www.php.net/

■PHP日本語マニュアル
http://www.php.net/manual/ja/

■Japan PHP Users Group
http://www.php.gr.jp/

■PHP 日本語ページ
http://www.cityfujisawa.ne.jp/~louis/apps/phpfi/index.html

■Pearのドキュメント
http://phpdocu.sourceforge.net/peardocs/

■前スレ
http://ebi.2ch.net/test/read.cgi/php/982687820/
0334名無しさん@お腹いっぱい。01/12/05 11:59ID:???
>>333
ファイヤーウォールを設置しているからでは?
ファイヤーウォールをなくしたら何とかなると思います。
そんなに難しいことではないので頑張りましょう。
033533301/12/05 12:06ID:zyRZIzET
>>334
学内は確かSQUIDが入ってたと思います。
ファイアウォール自体はどうしようもできないので、
PHP側から制御可能ということでしょうか。

因みに外部ポートは8080(Proxy)しか空けてません。
0336プログラム初めてまもない者01/12/05 12:47ID:???
>>328
ありがとうございます。
早速試してみます。
出来次第、ご報告いたします。
033733401/12/05 12:55ID:???
>>335
な〜んだ。
だったらHTTPポートを開きましょう。
超簡単ですね。
0338プログラム初めてまもない者01/12/05 13:14ID:???
>>328
出来ました。
簡単だったんですね^^;
ありがとうございました。
0339名無しさん@お腹いっぱい。01/12/05 13:33ID:zyRZIzET
>>337
PHPから http://hoge:80のようにするということですか?
ドキュソですいません。
034033401/12/05 14:23ID:???
>>339
違います。サーバのroot権限を奪うのです。
034133301/12/05 14:28ID:zyRZIzET
>>340
是非お願いします。
034233401/12/05 16:20ID:???
>>341
じゃあIP教えてください。
034333301/12/05 17:27ID:zyRZIzET
>>342
64.71.145.43
0344名無しさん@お腹いっぱい。01/12/05 23:01ID:nhOtQwAT
本気なのかネタなのかわからん(w
0345名無しさん@お腹いっぱい。01/12/05 23:57ID:???
>>325
早く >>326 の質問に答えてくれよぉぉ
もう2日も徹夜してるのに〜
0346名無しさん@お腹いっぱい。01/12/06 06:27ID:QS7Ldetk
custom_die と dieはどう違うのでしょうか。
PHPプログラミングという本を買ってきましたがわかりませんでした。
しょんぼりです。
0347名無しさん@お腹いっぱい。01/12/06 09:06ID:???
custom_die なんて在ったっけ?
0348名無しさん@お腹いっぱい。01/12/06 13:32ID:v/syCNNM
>347さん

ここに書いてありました。
http://www.phpbuilder.com/forum/archives/2/2001/6/2/139863

PHPをはじめたばかりで、いろいろページを見ていたのですが
上のところで偶然目に付き気になりました。
0349名無しさん@お腹いっぱい。01/12/06 14:07ID:C2URSLdy
すいません。348ですが、こんな感じでありました。

$cnx = mysql_connect($db_host, $db_user, $db_pass)
or custom_die("Unable to connect to database server.");
mysql_select_db($db_name, $cnx)
or custom_die("Unable to select database.");
0350名無しさん@お腹いっぱい。01/12/10 11:34ID:Kt7WHs/X
ダブルコーテーションが出ないんですけどどうすればよかとですか。

<?php
if(isset($submit))
print $testBox;
?>
<form action="a.php?" method="post">
<input type="hidden" name="testBox" value="\"">
<input type="submit" name="submit" type="button" value="test">
</form>
0351 ◆wfMSpsRY 01/12/10 12:20ID:fl9g+Ipb
>>350
<input type="hidden" name="testBox" value="&quot;">

だべさ。
035235001/12/10 13:48ID:Kt7WHs/X
ありがとうございますだ。
035335001/12/10 13:49ID:Kt7WHs/X
>>351
ありがとうごぜえますだ。
0354名無しさん@お腹いっぱい。01/12/10 20:06ID:ko+ATGtx
PHPスクリプトの中に
function main{
いろいろな処理
}
↑こんな記述があったけど、
Perlのサブルーチンと同じようなものと思っていいのかな
0355名無しさん@お腹いっぱい。01/12/11 00:25ID:???
第 12 章 関数
0356名無しさん@お腹いっぱい。01/12/11 10:01ID:o8TNxYhr
Perlも書いたことのないプログラミング初心者ですが、
こんな私でもPHPを1から学べるサイトか本ってないでしょうか?
OSはWin98SE、サーバー(プロバですが)はPHP4とMySQLてのが使えるみたいです。
みなさんとっておきのやつを教えて下さいな。
0357名無しさん@お腹いっぱい。01/12/11 10:28ID:DitIDxcG
FreeBSD+PHP4.0.6からネットワーク経由でWindowsNT+MS SQL Serverと接続しています。
このとき、Sybase関数をつかってやり取りをしているのですが、
Sybase関数にはPostgreSQLのpg_fieldisnull関数のような
フィールドがNULLかどうか判断できる関数が用意されていないのでしょうか。
取り出したデータがが0なのかNULLなのか判らずに困っています。
0358抹茶 ◆RojWUtWg 01/12/11 12:45ID:???
>>356
参考書籍なら、

・PHP4徹底攻略
・プロフェッショナルPHPプログラミング

この二冊なんていいんじゃない?
0359提案さん01/12/11 15:49ID:goc2nq1d
データベース系の質問は別スレッドにしないか?
使ってない人間にとっては邪魔くさい
0360名無しさん@お腹いっぱい。01/12/11 18:13ID:???
>>359-360が一番邪魔くさい
0361名無しさん@お腹いっぱい。01/12/11 19:21ID:???
>>357
書籍に関してはこのスレを参照するといいよ
http://pc.2ch.net/test/read.cgi/php/985315574/l50
036236101/12/11 21:40ID:???
すまん。>>356だた。鬱出汁脳
0363名無しさん@お腹いっぱい。01/12/11 23:52ID:6v1YPQ1Y
>>359
いーんじゃない?
それをいうなら自分が絶対に使わないような機能の質問だってあるわけだし。
php使ってるならそれほどスレ違いじゃないし排除する理由が見あたらない。
っつーか、それ以前に邪魔くさいというほど書き込みないし(w
036435601/12/12 01:39ID:Jw7DDAIf
ありがとーう。
>『MySQL & PHP Webデータベース入門』ソフトバンク 田中ナルミ 著
>前はこれ使ってました。DB、PHPの初心者におすすめ。
>MySQLとPHPのインストールから載ってます。
>これから始める人向けかも。
これ買ってみようと思います。がんばろう。
0365親切な人01/12/12 02:52ID:???

ヤフーオークションで、凄い激安商品、発見!!!

「高性能電子辞書」が、たったの 3900 円↓
http://page2.auctions.yahoo.co.jp/jp/auction/b18711631?

今は無き「コピーガードキャンセラー」↓
http://page2.auctions.yahoo.co.jp/jp/auction/b18505597

ヤフーオークション内では、現在、このオークション
の話題で、持ちきりです。
0366名無しさん@お腹いっぱい。01/12/12 20:26ID:fNZ4ZfDv
IISで変数を渡せないッス。
同じモノで turbo + apache 環境だと動くのに・・・
誰か知っているいたら教えて下さい。
0367名無しさん@お腹いっぱい。01/12/12 21:03ID:fNZ4ZfDv
すみません。アホな質問しました。
ちゃんとマニュアル読んだら書いてありましたね。
0368名無しさん@お腹いっぱい。01/12/12 22:04ID:???
>>72
$reg = "(s?https?:\/\/[-_.!~*'()a-zA-Z0-9;\/?:\@&=+\$,%#]+)";
$text = eregi_replace("$reg","<a href=\"\\1\">\\1</a>",$text);

ってやってるんですが、もっと効率いい方法があるかもしれません。
0369名無しさん@お腹いっぱい。01/12/13 18:59ID:???
ものしごくアホな質問かもしれない
PHPの利点ってなに?
使ってて良かったとろことかあったら教えて。
いまPerl一辺倒なんだけどほとんどCGI製作でしか使ってないからPHPの
方が楽そうだなぁ〜くらい思ってるんだけどさ
0370名無しさん@お腹いっぱい。01/12/13 19:08ID:???
・Apacheモジュールとして動かした場合、Perl(not mod_perl)より軽い。
・フォームの受け取り、クッキーの受け取りが楽。
・なんとなくそこらのPerl使いより出来そうな人に見られる(藁
0371名無しさん@お腹いっぱい。01/12/13 19:25ID:???
4.1.0からの変更で苦労してる人多い?
私、年末まで死にそうなんですけど
0372名無しさん@お腹いっぱい。01/12/13 19:37ID:???
何が変わったの?
037337101/12/13 23:39ID:???
>>372
http://jp2.php.net/release_4_1_0.php
register_globalsをoffにしたいという要望を出してきた
クライアントが数社いて・・・

なにを今更とも思うのだが、お金は欲しいので頑張ってる次第。
0374名無しさん@お腹いっぱい。01/12/14 01:29ID:???
>>368
うを、そんな効率的な書き方が出来たのですか。
これの5倍くらいあるソース書いてたよ。めっちゃ鬱…
0375名無しさん@お腹いっぱい。01/12/14 03:54ID:???
>>374
で、それを自動的にある一定の長さだったら自動的に
<br />を入れようと考えてるんだけど
preg_replace_callback使って
改行入れた物に置き換えるって感じがいいのかな?

ちなみに今日はphp.iniをどこに置いていいか分からず
小7時間ほど悩むという荒技。ある意味泣きそうでした。
037620001/12/14 09:16ID:???
変数$message内から"\"を消したいのですが

$message = ereg_replace("\\", "",$message);
だとエラーになります。
"\"はどうやったら消せるのでしょうか?
0377名無しさん@お腹いっぱい。01/12/14 15:28ID:???
php-mlからのコピペ。
===============================
> すみません、どういう理由からPHP4.0.6+PostgreSQLの組み合わせが奨められな
> いのか教えていただけませんか?ちょうどいまその組み合わせで開発しているの
> で気になります。

2,3,目にした記憶がありますが、過去ログ漁ってみたらこれがありました。

[PHP-users 3003] PHP 4.1.0RC1
> =蛇足=
> PHP-4.0.6 のPostgreSQLモジュールにはバグがあり(Noticeメッセージ関
> 連)ランダムにクラッシュします。少し前にCVS版ではFIXされています。
==============================

PostgreSQLとセットで使ってる奴はサクっとアップデートしる!
0378名無しさん@お腹いっぱい。01/12/14 16:16ID:???
>>376
$message = stripslashes($message);
でどう?

昨日PHP4.1にしたら、今日はお腹を壊しました。
罠か!
0379名無しさん@お腹いっぱい。01/12/14 17:09ID:Xm3mwURV
よいしょage
0380名無しさん@お腹いっぱい。01/12/14 17:39ID:W/pKVt66
NT環境で mkdir コマンドを叩くとこんなメッセージが・・・
Warning: MkDir failed (Invalid argument)
パーミッションが悪いと思うけど、UNIXとは違うし
誰かやり方知っている人いませんか〜?
0381Kusakabe Youichi01/12/14 17:46ID:???
>>380
In article <[email protected]>, 名無しさん@お腹いっぱい。/380 wrote:

> NT環境で mkdir コマンドを叩くとこんなメッセージが・・・
> Warning: MkDir failed (Invalid argument)
> パーミッションが悪いと思うけど、UNIXとは違うし
> 誰かやり方知っている人いませんか〜?

Linuxもエラーでしたよ ;)

$ mkdir
mkdir: 引数の数が少なすぎます
0382obe01/12/14 18:08ID:R/mO9HxA
で、それを自動的にある一定の長さだったら自動的に
<br />を入れようと考えてるんだけど
0383obe01/12/14 18:10ID:R/mO9HxA
ミスった
wordwrap -- 文字列分割文字を使用して指定した文字数数に文字列を分割する
$newtext = wordwrap( $text, 30, "<br />", 1);
0384oh01/12/14 22:51ID:8okmk3bq
シーラカンス本のpgimageを改造して画像を表示してるんですが、
WEBだと表示できてimodeだと表示できないです。
なんか違いあるんでしょーか?
038537601/12/14 23:04ID:???
>>378
ありがとうございます。
試してみます。
PHPって関数多すぎてまだまだ勉強すること多いや。
0386名無しさん@お腹いっぱい。01/12/15 05:40ID:p+HxQSwn
> PHPって関数多すぎてまだまだ勉強すること多いや。
PHPは同じ機能を持った関数が結構多いと思うのですが、なぜでしょう?
splitとexplodeなど他にも色々。
一見同じに見えても違うのでしょうか?
0387名無しさん@お腹いっぱい。01/12/15 07:33ID:???
>>386
他言語ユーザーへの配慮では?
そもそもマニュアルでsplit==explodeって明記されてるし。
0388名無しさん@お腹いっぱい。01/12/15 10:43ID:GAroF9xA
エイリアスのリスト
http://jp.php.net/manual/ja/aliases.php

>そもそもマニュアルでsplit==explodeって明記されてるし
別の物。どこに明記されてんの?

splitは正規表現が使えるよ
>正規表現の機能を必要としない場合、正規表現エンジンのオーバーヘッ
>ドがないexplode()の方がより高速であるというこ とに注意して下さい。
0389名無しさん@お腹いっぱい。01/12/15 19:55ID:jR3GQyZC
>384
i-modeでgif以外を表示しようとしているわけではないよね(藁
039038601/12/15 23:29ID:MrXImnUo
>>387
>>388
ありがとうございます。
388の示してくれたロケーションは重宝しそうです。
0391名無しさん@お腹いっぱい。01/12/16 00:47ID:???
あるディレクトリの中にあるファイルをタイムスタンプでソートされた順番に並べたいのですが、
どのようにすれば良いでしょうか?
0392oh01/12/16 01:50ID:Lyip/EHr
>>389
違います。
しかも解決しました。
header("contect-type:image/gif")を入れ忘れてました。
それでもブラウザでうつったんで、混乱しました。
すんません。
0393名無しさん@お腹いっぱい。01/12/16 02:14ID:l0Ns02rZ
register_globalsがOffの時に
WEBからアップロードされたfileの元の名前など各項目は
どこを参照すればよいのでしょうか?
039439301/12/16 02:20ID:???
リファレンスを勘違いして読んでました。
track_varsがOnの時は$HTTP_POST_FILES[][]内に入ってました。
5分で気づく物を書いてしまって鬱だ、逝ってきます。
039539501/12/16 03:19ID:YMTKT1gA
>>389-390 89は違うけど
すいません
ちょっと気になったことがあるんですけど、
rtrimとchopだったらchopを使うようにするべきと読んだんですけど、この理解はあってるでしょうか?
なんか、日本語の読解力無くてすいません。
0396名無しさん@お腹いっぱい。01/12/16 03:53ID:???
素人な質問で恐縮なのですが…

www.zdnet.co.jp のように、「フレームっぽいけどフレームじゃ
ない」つまりクリックすると一部が変化するけど残り(右端の
「今日のニュース」など)は変化しないサイトは、PHP で作るの
が普通なのでしょうか。各サイト独自の CGI で動的生成します
か?(それだと遅そう) zdnet なら静的生成でも大丈夫そうです
が、slashdot.org のような、一部が掲示板形式の場合はどうで
しょうか。
0397名無しさん@お腹いっぱい。01/12/16 04:09ID:???
質問の意味がいまいち分からないけど、SSIでfileを読み込み。
そのfileの作成はperlか何かで作成。cronで一定時間で更新。

そういう意味じゃなくて?
0398名無しさん@お腹いっぱい。01/12/16 04:12ID:???
slashdot.orgはmod_perl+MySQLだYO!
mod_PerlはPHPに負けず劣らず高速。むしろ勝ってるような。

漏れはPHPマンセーなので偏った理屈であることは否定できないのだが、PHPのほうが開発効率いいしOOであまり違和感無いのが良い。
開発効率は言語の習得レベルにもよると思うけど。

ただ、基本的に負荷は、サーバのスペック強化・回線の増強・サーバ分散でカバーするのが普通。
039939601/12/16 05:15ID:???
>>397

そういう意味です。ただ、SSI で別プロセス上げるのは重そうなので、
PHP かなあと。

>>398

あ、mod_perl でしたか。というか、mod_perl はそんなに速いものだっ
たんですか。知りませんでした。試してみます。
0400名無しさん@お腹いっぱい。01/12/16 08:42ID:???
>>399
そういわれてみれば、そうだね。
<!--#include virtual="/inc/omanko.html"-->
readfile('/www/tinko/docs/inc/omanko.html')
どちらが良いのだろう?


400げっつ
0401名無しさん@お腹いっぱい。01/12/16 15:16ID:vm8g1tYf
配列の値だけソートするにはどうしたら良いのでしょうか?
0402名無しさん@お腹いっぱい。01/12/16 15:33ID:???
>>399
将来的に差し込み部分で何らかの処理をする可能性があれば、
PHPでincludeした方が何かと便利かと、
0403名無しさん@お腹いっぱい。01/12/16 16:07ID:E5IDnaRx
>>401
意味がわからない・・・
$ch[0] = 2;
$ch[1] = 15;
$ch[2] = 1;
$ch[3] = 1.5;
を
$ch[0] = 1;
$ch[1] = 1.5;
$ch[2] = 2;
$ch[3] = 15;
にしたいってこと?
040440101/12/16 18:30ID:vm8g1tYf
>>403
その通りです。
説明不足ですいません。
0405名無しさん@お腹いっぱい。01/12/16 18:52ID:???
PHPの正規表現で最短マッチってどうやってやるんですか?
0406名無しさん@お腹いっぱい。01/12/16 20:23ID:y05KzXt7
ApacheのBasic認証で、複数の*.phpファイルにアクセス認証をかける場合、
たとえば「skyboard」のように、認証機能のスクリプトをincludeするだけっていうのは
本当に安全なのでしょうか?
(「Skyboard」では、$HTTP_AUTH_USERがemptyの時に、DBからID/PWをSELECTしてきて照会していたような……)
他のファイルに遷移する時に、$HTTP_AUTH_USERを捏造するなどして、
別のユーザになりすますような可能性はないのでしょうか?
0407教えて君01/12/16 22:03ID:kfywa3BI
>>406
$HTTP_AUTH_USER を捏造できるもんならやってみてください。

ところで話は変わりますが、あるファイルの内容を文字列リテラルとして扱うのって、
やっぱ関数自前で用意しないとダメですかね。

要は外部ファイルにメールの本文をテンプレートとして置いておいて、

$body = ファイルを読み込みつつ変数展開してくれる関数(ファイル名);
mb_send_mail($to, $subject, $body);

ってなことを簡単にやりたいんですけど。
今はめんどくさいので、

include "body.txt";
mb_send_mail($to, $subject, $body);

とやっておいて、body.txt で

<?php
$body = "
こんにちは。

本文です。

以上よろしくお願いいたします。
";
?>

みたいにしているんですがちょっとカコワルーイので。
0408tobe01/12/17 03:25ID:bijrNO4M
>>407
確かに欲しいね。関数作っとくか、ヒアドキュメント
function file_read($f){
$fp = @fopen($f, "r") or die("ファイルが開けません $f");
$temp = fread($fp, filesize($f));
fclose($fp);
return $temp;
}
$body = file_read("body.txt");
0409名無しさん@お腹いっぱい。01/12/17 03:42ID:E2/QZjpC
>>391
おれはファイル名の連想配列作って、
その中にfilemtime()関数使ってタイムスタンプ入れてるよ。
んでasort。
041038001/12/17 09:24ID:HJkwjpmb
>>381
そのままコマンドを叩くと(mkdir(path,0700)など)必ず失敗しました。
@$test = mkdir(path,0700);
などとしてifから確認込みで実行すると、1回目は成功しても失敗として返します。
実際には1回目でちゃんと作成されているのに・・・。
ありがとうごさいました。
0411教えて君01/12/17 10:13ID:???
>>408
これって変数展開してくんないんじゃ...

$t = fread();
eval("$temp = \"$t\";");
return $temp;

ならいいんかもしれんけど
0412名無しさん@お腹いっぱい。01/12/17 19:39ID:???
>>404
まんまその関数ありますよ。
よう調べれ。
http://jp.php.net/manual/ja/function.sort.php
0413アーカード01/12/17 19:49ID:JOH+So8I
PDFlib 4.0.1を使ってPDFファイルをブラウザに
インライン展開したいのですが、マッシロケで表示なりません。
NNでソース表示したところ、PDFのデータはもらってきています。
原因おしえてください。
0414名無しさん@お腹いっぱい。01/12/18 05:30ID:Lx+vJVoD
PHPとPostgresなんですが、
単純なselect文
select * from urlmaster where title LIKE '%$phrase%' order by priority desc
で、
Supplied argument is not a valid PostgreSQL result resource
というエラーがでるときがあります。($phrase による)
でも、postgresを直接実行するとエラーになりません。
なお、Googleでこのフレーズを検索すると、エラーやらかしてるサイトばかりひっかかります。
これってどういうことなんでしょう?
0415名無しさん@お腹いっぱい。01/12/18 11:10ID:4HcAmrFr
>>414
falseのresult_idをそのまま使うとでるエラー。
本当の原因はpg_errormessageで
0416名無しさん@お腹いっぱい。01/12/18 11:41ID:ERCc5hYj
こんにちは

ひとつのフォームに同名のチェックボックスが複数あり、その中の複数を選択して送信します。

<input type="checkbox" name="check" value="1323">
<input type="checkbox" name="check" value="13fd">
<input type="checkbox" name="check" value="1sfd3">


すると$checkの中をみても最後の要素の値しか入っていません。
通常、同名チェックボックスの値を全て取得するにはどのような方法を使うのでしょうか?
それとも、同名チェックボックスのチェックした値を取得するのはは絶対に無理なのでしょうか?
0417名無しさん@お腹いっぱい。 01/12/18 11:59ID:???
逆に聞きたいのだが、$checkの中に何が入ってる事を期待してるのか
アプローチを間違えてると思わないか?
一応言っとくと、ブラウザはそれが全てチェックされた時全てを
name=value形式のペアで送っている
つまりサーバの標準入力までは値が入ってるわけだな
0418名無しさん@お腹いっぱい。01/12/18 12:07ID:RxudE2J2
>>417に追記。
要するに
<input type="checkbox" name="check" value="1323">
<input type="checkbox" name="check" value="13fd">
<input type="checkbox" name="check" value="1sfd3">
に全部チェックが入った状態ってのはPHPスクリプトの中で
$check = "1323";
$check = "12fd";
$check = "1sfd3";
ってやってるのと一緒ってこと。
0419名無しさん@お腹いっぱい。01/12/18 14:26ID:???
PHPではname="check[]"とするのが定石ですな。
042040401/12/18 14:41ID:???
>>412
すいません、403の通りじゃなかったです。

fruits[3] = apple;
fruits[2] = banana;
fruits[0] = lemon;
fruits[1] = orange;

を

fruits[0] = apple;
fruits[1] = banana;
fruits[2] = lemon;
fruits[3] = orange;

のようにしたいんです。
042140401/12/18 14:42ID:???
>>420補足
ちなみに、$fruitsの順番はアルファベット順になってるわけではありません。
0422名無しさん@お腹いっぱい。01/12/18 15:39ID:???
>>421
http://www.php.net/manual/ja/function.sort.php
で不満なら、
http://www.php.net/manual/ja/function.usort.php
で自前で比較関数書けばいいんじゃねーの?
0423名無しさん@お腹いっぱい。01/12/18 16:15ID:???
fruits[3] = apple;
fruits[2] = banana;
fruits[0] = lemon;
fruits[1] = orange;
の順番は一体どーやって出してんだ?
入力順なら最初から
fruits[0] = apple;
fruits[1] = banana;
fruits[2] = lemon;
fruits[3] = orange;
になってるはずだろ?
状況がつかめん。
0424tobe01/12/18 17:05ID:???
404はマニュアルの見方知らねぇのか?
042540401/12/18 22:21ID:OKk6SST0
すいません、情報が少なかったみたいです。
具体的に説明すると、

$imgs[0] = 'img5.gif';
$imgs[1] = 'img3.gif';
$imgs[2] = 'img15.gif';
$imgs[3] = 'img9.gif';
$imgs[4] = 'img34.gif';

のようになっているものをnatsortすると、キーも含めてソートされて

$imgs[1] = 'img3.gif';
$imgs[0] = 'img5.gif';
$imgs[3] = 'img9.gif';
$imgs[2] = 'img15.gif';
$imgs[4] = 'img34.gif';

のようになります。これを、キーは変わらないままにしておきたいんです。
というのは

for($i=0;$i<=4;$i++){
  echo $imgs[$i];
}

のようなことをしたいので。
0426名無しさん@お腹いっぱい。01/12/18 23:00ID:???
意味不明すぎる
0427名無しさん@お腹いっぱい。01/12/19 03:22ID:???
>>425
asortでよし。
マニュアルちゃんと読めよー。

http://php.online.bg/manual/ja/function.asort.php
この関数は、連想配列において各配列のキーと要素との関係を維持しつ つ配列をソートします。

だ。
042842701/12/19 03:49ID:???
あれ?書き込んでから気づくのもなんだけど、
425の最後の for〜〜って意味なくない?
ソートしてる意味ないじゃん。
要素順に表示したいんじゃないの?
そうだとしたら、

asort ($imgs);
reset ($imgs); // いらないかも
which (list ($name, $value) = each ($imgs)) {
  echo $imgs[$name];
}

だと思うけど、どう?
0429名無しさん@お腹いっぱい。01/12/19 06:18ID:???
>>427
natsortはasort同様キーと要素の関係を維持するよ。404はsortみたいに
キーとの関係をぶちきってほしいみたい。
ずばり usort($array, "strnatcmp"); が404の欲しい方法と見た。
043041601/12/19 06:33ID:fu8qqL9P
>>417-418
返答ありがとうございます。
アプローチは特別間違っているとは思いません。

>>419
ありがとうございます。
思っていた通りのことができました。
その定石が知りたかったんですよ。超感謝です。
043140401/12/19 08:22ID:DaAXyqaT
>>427
逆にキーと要素との関係を維持したくないんです。

>>428
今はそのような感じの方法で処理しています。

natsort ($imgs);
reset ($imgs);
$count=0
which (list ($name, $value) = each ($imgs)) {
  $count++;
if($count<100) continue;
  if($count>110) break;
  echo $imgs[$name];
}

ただ、この場合に
if($count<100) continue;←この部分の処理が冗長なので

for($i = 101;$i < 110;$i++){
  echo $imgs[$i];
}

のように出来たらなぁと思ってるんです。

>>429
usortでもキーとの要素は関係づけられませんか?
0432名無しさん@お腹いっぱい。01/12/19 21:15ID:???
>>431
> usortでもキーとの要素は関係づけられませんか?
ドキュメント読めよ。
キーと要素の配列を保持する関数はuasort。usortは保持しない。
0433名無しさん@お腹いっぱい。01/12/20 05:54ID:gE/sF2o5
PHP本家が冬バージョンになってるYO
■ このスレッドは過去ログ倉庫に格納されています