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

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

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2006/11/23(木) 00:27:02ID:???
PHPに関するくだらねぇ質問用スレです。ここならお前の下らない質問に回答があるかも知れません。

まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

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

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

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

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

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ http://pc8.2ch.net/php/subback.html
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで http://pc8.2ch.net/db/subback.html
・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
 しかし初心者が目的も定めずに速度を気にしたところでほとんど意味は無いぞ
0052nobodyさん2006/11/23(木) 12:17:04ID:???
>>51
PHP5
0053nobodyさん2006/11/23(木) 12:51:25ID:???
>>51
鯖が対応しているPHPで最新のもの
0054nobodyさん2006/11/23(木) 12:59:15ID:???
PHP3マジオススメ
0055nobodyさん2006/11/23(木) 13:06:36ID:???
3.47がいいな
0056nobodyさん2006/11/23(木) 14:37:44ID:Ja3fMNWU
htmlファイルもincludeできるよね?
<?include "1.html";?>って感じで。

自分で試したら表示されたけど、特に問題ないよね?
0057nobodyさん2006/11/23(木) 14:38:45ID:???
>>56
ないよ
0058nobodyさん2006/11/23(木) 14:44:56ID:???
>>57
ありがとう。
0059nobodyさん2006/11/23(木) 14:50:16ID:6gP1lOLG
.txtでも.incでもとにかくなんでも読み込め!
0060nobodyさん2006/11/23(木) 14:51:28ID:KbYHTiqi
変数の中身のファイルを開くにはどうすれば?
$test = 'abc';

abc.txtを$testをつかって指定したいんですが・・
0061nobodyさん2006/11/23(木) 14:55:29ID:???
そして顧客も呼び込め!

>>60
file_get_contents("{$test}.txt");

php4ならfopenで開くしかないのでは?
0062nobodyさん2006/11/23(木) 14:56:12ID:???
>>60

fopen($test . ".txt")
0063nobodyさん2006/11/23(木) 15:27:48ID:???
Linux + Apache + PosgreSQL + php でやってた Web を故あって
Windows2003 Server + Apache + SQL-Server + php でやる羽目に
なってしまった。

で、移植しててはたと困ったのが、新規のレコードを挿入した時に
挿入したばかりのレコードが特定できない。

PostgreSQL の時は、pg_last_oid で挿入しレコードを特定できた
のだけど、SQL-Server には該当の機能がなさげ。

登録画面で登録された情報を元に、こんな風に登録されましたと
表示するなんてことはありがちだと思うけど、SQL-Server + php
の人はどうやってるんでしょうか?
0064nobodyさん2006/11/23(木) 15:36:43ID:J3FVLRFg
>62,63
ありがとうございました
あともうひとつ
テキストファイルに10つの数字が入っているのですが
それらの数字を配列にひとつづつ格納するにはどうすれば?
このようにやったらarray[9]にしか格納されていませんでした・・
$file = fopen(abc.txt','r');
for($i=0;$i<10;$i++){
$number = fgetc($file);
$array = array($i =>$number);
}
print_r($array);
0065nobodyさん2006/11/23(木) 15:39:37ID:???
abc.txtの中身を晒してくれ
0066nobodyさん2006/11/23(木) 15:41:35ID:???
$file = fopen(abc.txt','r');
$array = array();
for($i=0;$i<10;$i++){
$number = fgetc($file);
$array[] = $number;
}
print_r($array);
0067nobodyさん2006/11/23(木) 15:43:22ID:I5R9DF47
データベース名:A  テーブル名:ABC レコード:phrase1,phrase2,phrase3,phrase4
として、

テーブルにレコードを新たに加える際に、
1・既に格納されているレコードと1つでも共通項があった場合、既に格納されて
  いるレコードに統合したい。
2.レコードを統合する際に、共通項のあったレコードに差分をプラスする。

共通項があれば統合、なければ新たに格納ということで、PHPも必要だと思いまして。
しかし、これをどのように記述すれば良いのか分からなくて。。。
どうかお教え願えないでしょうか?
0068nobodyさん2006/11/23(木) 15:48:34ID:???
>>67
データベースの話だと思うけどphrase1にプライマリを設定しておいてインサートで失敗したら
アップグレードすれば良いんじゃね?
0069nobodyさん2006/11/23(木) 15:55:41ID:rtAYuH71
>62,63
ありがとうございました
あともうひとつ
テキストファイルに10つの数字が入っているのですが
それらの数字を配列にひとつづつ格納するにはどうすれば?
このようにやったらarray[9]にしか格納されていませんでした・・
$file = fopen(abc.txt','r');
for($i=0;$i<10;$i++){
$number = fgetc($file);
$array = array($i =>$number);
}
print_r($array);
0070nobodyさん2006/11/23(木) 16:09:41ID:YEDH6+Ub
↑ごめんなさい、間違いました
abc.txtの内容は1231231231
と数字並べてあるだけです
66さんありがとう
0071672006/11/23(木) 16:12:59ID:I5R9DF47
phrase1,phrase2,phrase3,phrase4 はレコードでなく、フィールドでした。
>>68
フィールドでなく、テーブルの全ての要素が一意のものでなければ
いけないので。。。
0072512006/11/23(木) 17:24:58ID:???
>>52>>53>>54>>55
ありがとうございます。PHP3はないのでPHP5でやってみます。
0073nobodyさん2006/11/23(木) 17:57:15ID:???
PHP勉強すれば彼女ができるんだ!
0074nobodyさん2006/11/23(木) 18:52:04ID:???
10つ ←これなんて読むの?じゅっつ?
0075nobodyさん2006/11/23(木) 19:23:21ID:???
つ旦
0076nobodyさん2006/11/23(木) 19:25:28ID:???
「ですよ♪」
0077nobodyさん2006/11/23(木) 19:28:02ID:jopFxTUo
配列で$2ch[0] $2ch[1] $2ch[2]とかやらないで
読み込んだ全部の配列を単語として出すにはどうすればいいですか?
0078nobodyさん2006/11/23(木) 19:34:37ID:???
>>77
は? 何を言っているんだ?
0079nobodyさん2006/11/23(木) 19:37:54ID:???
joinでくっ付けてみたら?
0080nobodyさん2006/11/23(木) 19:44:52ID:jopFxTUo
$2ch[0-10]

みたいなのありませんか?
0081nobodyさん2006/11/23(木) 19:47:05ID:???
つimplode
0082nobodyさん2006/11/23(木) 19:54:57ID:???
>>78
>>79
>>81
レスありがとうございます。
implode 使ってみたんですが、たとえば、文字列をエンコードする場合
個別に切り取ってからじゃないと出来ないみたいなんですがなんでですか
0083nobodyさん2006/11/23(木) 19:57:22ID:???
>>82
>implode 使ってみたんですが、たとえば、文字列をエンコードする場合
>個別に切り取ってからじゃないと出来ないみたいなんですがなんでですか

何のエンコードかな?。文字コードなら長い文章のままエンコできますよ。
0084nobodyさん2006/11/23(木) 20:41:33ID:???
20061123194606こういう文字列を

2006-11-23 19:46:06

こういう時間形式に変換したいのですが、できますでしょうか?

$jikan = "2006-11-23 19:46:06";$TimeStamp = strtotime("$jikan");
これはうまくいくのですが、
$jikan = "20061123194606";$TimeStamp = strtotime("$jikan");
こうなるとうまくいかないもので、、

わかる方がいましたらよろしくお願いします。
0085nobodyさん2006/11/23(木) 20:46:57ID:???
>>84
$date = "20061123194606";
$yyyy = substr($date, 0, 4);
$mm = substr($date, 4, 2);
$dd = substr($date, 6, 2);
$hh = substr($date, 8, 2);
$ii = substr($date, 10, 2);
$ss = substr($date, 12, 2);

$date = "$yyyy/$mm/$dd $hh:$ii:$ss";
0086nobodyさん2006/11/23(木) 20:54:41ID:???
>>84-85
1時を01時とか常に桁数を合わせてくれるなら、sscanfで一発で分解→再結合でよくね?
0087nobodyさん2006/11/23(木) 20:54:46ID:6gP1lOLG
>>77
例えかもしれんが変数名の始めに数字は使えないんじゃなかった?配列はいいんだっけ?
0088nobodyさん2006/11/23(木) 21:04:18ID:???
>>87
ムリ
0089nobodyさん2006/11/23(木) 21:05:50ID:???
>85
うまくいきました。ありがとうございました。
>86
sscanfも調べてみます。

どうもでした。
0090nobodyさん2006/11/23(木) 21:17:27ID:???
>>85
そんなめんどくさいことしないで

DATE_ 使えばいいよ  PHP 5.1.1 以降ね
0091nobodyさん2006/11/23(木) 21:29:59ID:???
ちょっとありえないコードだな
0092nobodyさん2006/11/23(木) 22:21:16ID:???
85には感動した。
石器人だ。
0093nobodyさん2006/11/23(木) 22:22:39ID:???
$t = '20061123194606';
echo preg_replace('/(....)(..)(..)(..)(..)(..)/', '\1-\2-\3 \4:\5:\6', $t);

こういうのはどう
0094nobodyさん2006/11/23(木) 22:50:15ID:???
<ひとりごと>
Smarty使っていたら、便利な修正子が沢山用意されていると思っていたんですYo!
そしたらSo!!

自分で関数を定義してやらなきゃならないんですねぇ……。
</ひとりごと>
0095nobodyさん2006/11/23(木) 23:00:34ID:???
>>94
<チラ裏>
むしろ自分で追加できる柔軟性に感動せよ。
</チラ裏>
0096nobodyさん2006/11/24(金) 00:17:41ID:???
PHPで作成されたアップローダを探しているのですが
日本語ファイル名を扱えるやつを教えてください。
できれば AutoIndex みたいなのが希望っす。

0097nobodyさん2006/11/24(金) 00:24:12ID:???
知らんけどAutoIndexとやらを日本語ファイル名に対応させるのはそんなに難しいの?
0098nobodyさん2006/11/24(金) 00:26:46ID:???
どっちかっつーとその日本語はSJISなのかEUC-JPなのか、
その上でそのアップローダはどのOS上で動かすつもりなのか、
が重要なんじゃあるまいか?
0099962006/11/24(金) 00:46:58ID:???
>>97
スキルないっす。
アップロードした時点で、フォルダを除くと文字化けしているんで
move_uploaded_file のところで mb_convert_encoding をしてみたん
うまくいきませんでした。
(ファイル保存時は文字化けしなくなりましたが)

>>98
そうですね。環境を晒していませんでした。
アップローダ&サーバ(Apache)共に Win2000 です。のでファイル名は
SJIS になるかと。。

0100nobodyさん2006/11/24(金) 00:52:22ID:???
PHPで作成された日本語ファイル名を扱えるアップローダなんてごまんとあると思うけど
0101nobodyさん2006/11/24(金) 00:53:56ID:???
【CGI】こんなCGI探してますver.21
http://pc8.2ch.net/test/read.cgi/hp/1154177468/

まあポログラミングしないとなると板違いなんで向こうでどうぞ
0102962006/11/24(金) 00:58:22ID:???
たしかに板違いですね。
情報ありがとうございます。
0103nobodyさん2006/11/24(金) 01:03:39ID:???
>>101
そのスレの存在意義ってテンプレだけだよな
0104nobodyさん2006/11/24(金) 02:14:25ID:yAUAJcwD
当方開発環境はWindows上でPHP5.2.0使用。
PHPUnit2を使いユニットテストを組みながら開発しています。
Singletonなクラスを作成したのですが、そのユニットテストを行おうとしたところ、
インスタンスが共有されているため独立したテストが行えずテストが上手く行えません。
そこで、インスタンスを記録しているprivateなstatic変数をTestCaseからtearDownで
初期化したいのですが、アクセス権を無視して書き換える手段はありますでしょうか。

クラス/オブジェクト辺りの関数やリフレクションを漁っては見たのですが、特にリフレクションには
> 注意: privateまたはprotectedクラスプロパティの値の取得または設定を 行うと、例外がスローされます。
とまで書かれてしまっており...

複数人で開発しているわけでもありませんので、publicにしてしまうなり、
テストを行う際だけ書き換えるなりしてもさほど問題はありませんが、
何か良い方法をご存知でしたらよろしくお願いします。
0105nobodyさん2006/11/24(金) 02:17:41ID:3W6tCrEf
>>83
↓こんなかんじでやってみたのですがエラーでます
$data = array("あ","い","う","え","お");
$data = mb_convert_encoding($data,"SJIS", "ASCII,JIS,UTF-8,EUC-JP,SJIS");
echo implode("#",$data);

間違ってますか?
0106nobodyさん2006/11/24(金) 02:25:35ID:???
>>104
Runkitでテスト時のみのイニシャライザをくっつけるとか?
なんか他にいい方法がありそうな気もするけどよくわかんねっす

>>105
mb_conv...の第一引数は文字列 http://jp2.php.net/mb_convert_encoding
0107nobodyさん2006/11/24(金) 02:36:42ID:C3XLERtZ
$obj =& new HogeClass;
というようにnewを参照で受け取ることの意味や有用性って、
どんなことがありますか?
0108nobodyさん2006/11/24(金) 02:55:57ID:3W6tCrEf
>>106
どうもありがとうございます。
連想配列とかいうのでやってみたらエンコできました。
0109前スレ9822006/11/24(金) 03:05:01ID:???
亀レスですみません!
前板982で質問した者です。

■質問した内容↓
質問します!
windowsでPHPを使用しているのですが、
ローカル環境で
<? include("../home/httpd/html/template/top.html"); ?>
の相対パスを
<? include("/home/httpd/html/template/top.html"); ?>
に変えて表示する事ってできるのでしょうか?

windows環境で、includeするファイル指定を相対パスを絶対パスに
変えて表示する事はできるのでしょうか?という質問でした。
意味不明ですません;;
0110nobodyさん2006/11/24(金) 03:09:39ID:???
>>107
ないね
0111nobodyさん2006/11/24(金) 03:10:05ID:???
>>109
どういうフォルダ構成になってるか分からないので何とも言えないが、
普通に考えたら
../home/httpd/html/template/top.html
と
/home/httpd/html/template/top.html
は絶対に同じ場所を指さないと思うんだが…となれば別のファイルが表示されるだけかと。
それは相対パスを絶対パスにしたとは言わないだろう。別の場所を指定してるんだから。
そもそも相対パスと絶対パスってどういうものなのか分かってて言ってる?

そもそも何でそんなことしたくなったのか分からないと回答は難しいよ。
「別のファイルを表示しても同じように表示されますか?」という質問にしか聞こえない。
0112nobodyさん2006/11/24(金) 03:14:26ID:???
>>111
カレントが第二階層にあるなら ../ と / は同じになるじゃないかな
とするとWindowsでドライブレターを省略した絶対パスが有効かという質問かなあと思うけど
わざわざ聞くようなことでもないしなあ謎だわ
01131042006/11/24(金) 03:15:15ID:yAUAJcwD
>>106
おお、素晴らしい。
__autoload('SingletonClass');
echo runkit_method_add('SingletonClass', 'initializesingleton', '',
    'self::$instance = null;',
    RUNKIT_ACC_PUBLIC
);
...
protected function tearDown()
{
    SingletonClass::getInstance()->initializeSingleton();
}
といった感じでテスト対象のファイルを弄ることなく初期化することが出来ました。
# 作成するメソッド名に大文字を混ぜてしまって一時嵌りましたが
どうもありがとうございました。
0114前スレ9822006/11/24(金) 03:36:06ID:???
documentrootを例えばE:\abc\にしてまして、
その後に続くのがそのディレクトリなんです。
なのでimgを読み込む時は、
/img/aaa.gif
で読み込めるのですが、(../img/aaa.gifでも読み込めます。)
includeで同じように指定してもできません。
includeだと分けが違うんでしょうか。
最近学んだ者であまり分かってません。
もうしわけないですorz

E:\abc\main\
の中にincludeを指定してるファイルがありまして、
E:\abc\home\httpd\html\template\top.html
を、絶対パスで読み込みたいんです。

なぜ、
<? include="/home/httpd/html/template/top.html" ?>
で読み込みたいかというと、本サーバーの環境がこの指定で
読み込まれるのに対して、 ローカル環境でできない状態でいるんです。
なので、htmlファイルをそのまま上げる事ができなく、
ローカル環境でコーディングをコピペして、
それを本サーバーにあげるという
めんどくさいことをしています。
ローカル環境と本サーバー環境を限りなく近づけて
作業を簡素化したかったのです。
現状では、本サーバーの環境を変える事は、
できない状態でして、ローカル環境を本サーバーの環境に
合わせる事になります。

申し訳ないですが、もう少しご教授のほうをお願いいたします。
0115nobodyさん2006/11/24(金) 03:42:23ID:???
もうすこし話を整理して書くことから始めようか
0116nobodyさん2006/11/24(金) 03:52:42ID:???
httpdのドキュメントルートはファイルシステムのパスとは関係なし

ハードコーディングせず、パスは定数にしておけば多少楽になるだろう
プラットフォームはPHP_OSで取得できるから自動でパスを切り替えるようなこともできるし
01174392006/11/24(金) 04:00:22ID:???
「htmlspecialchars」を毎回書くのが大変なので
以下のファンクションでサニタイズしているんですが
普通に「htmlspecialchars」したほうがいいでしょうか?

function outhtml($str) {
 $str = htmlspecialchars($str);
 return $str;
}
0118nobodyさん2006/11/24(金) 04:02:46ID:???
普通にってなんじゃ
0119nobodyさん2006/11/24(金) 04:07:07ID:???
普通にってゆうとろうが
01204392006/11/24(金) 04:12:46ID:???
>>118
分かりにくくってすみません。
スピード的にはあまり大差なかった(私の感覚で)のですが
保守やこの業界の普通というか常識ではあまりやらない手法だ等お教えいただけたらと思っております
0121nobodyさん2006/11/24(金) 04:13:14ID:???
なんで竹原スレになってんだよw
0122nobodyさん2006/11/24(金) 04:41:21ID:???
http://framework.zend.com/manual/ja/coding-standard.coding-style.html#coding-standard.coding-style.functions-and-methods

Zendコーディング規約では、メソッドの引数で値の参照渡しができないようなのですが、
滅多にしないとはいえ、これって結構な制限になりませんか?
0123nobodyさん2006/11/24(金) 04:45:09ID:???
例えば?
0124nobodyさん2006/11/24(金) 04:55:46ID:???
例えば、メソッドの引数を参照で取りたいときに困る。
0125nobodyさん2006/11/24(金) 04:57:13ID:???
引数に値がセットされるなんて、preg_matchとsscanfとfsockopenでお腹いっぱい。
ユーザー定義関数でなんて絶対使いたくないっす。
値を複数返すなら配列で返してlistで受け取るっす。
0126nobodyさん2006/11/24(金) 04:59:23ID:???
>>124
それは普通にできる
122は実行時参照渡しの話でしょ
0127nobodyさん2006/11/24(金) 04:59:47ID:???
>>122
はいはい、君は早とちりしているようだ。
Zendコーディング規約では、メソッドの引数で値の参照渡しを禁じているわけではない。

値の参照渡しは、"関数宣言"においてのみ可能です。
class Foo
{
 public function bar(&$baz) ←関数宣言
 {}
}
注意:"実行時"の参照渡しは禁止されています。
0128nobodyさん2006/11/24(金) 05:17:27ID:???
>>114
あー。仮想のパスと実際のパスの違いが理解できてない上に
サーバー環境とローカル環境を違う状態にして開発してるんだ。
そりゃー面倒だわ。

画像とかHTMLとかのリンクのパスはサーバーの外に対しての指定で
ブラウザが解釈するもの。そしてブラウザの要求をWEBサーバーが
仮想パス→DOCUMENT_ROOTを基準にした実際のパスに変換して
内部では正しいフルパスで扱われる。
それに対してPHPで使われるincludeのパスってのはPHP自身が
サーバー内部の仕組みであるため、「最初から実際のパス」で扱われる。

対処方法としては、よくやる手法ではPHP内部でのディレクトリ指定を
DEFINEまたは変数での定義にしてしまって、定義ファイルの差し替えで
簡単に切り替え可能にしてしまう方法。これは汎用性が高い。

ただ、目的が画像みたいにDOCUMENT_ROOT基準にしたいだけなら、
include "$_SERVER[DOCUMENT_ROOT]/template/top.html";
みたいにして、DOCUMENT_ROOTの値を使ってパスを補完しちゃうのもアリだよ。
0129nobodyさん2006/11/24(金) 05:19:11ID:???
>>120
普通何度もタイプするような状況にはならないけど、
まあ面倒ならコード補完できるエディタを使うかな
0130nobodyさん2006/11/24(金) 05:22:05ID:???
>>126 >>127
なるほど、それなら全く平気です。

http://phpspot.org/blog/archives/2006/05/zend_framework_2.html
↑最初にここの22を見て誤解しちゃいました。
0131nobodyさん2006/11/24(金) 05:24:55ID:???
>>120
前に同じようなことしてるらしい書き込みをここか旧本スレの過去スレで見たよ。
でもhtmlspecialcharsは画面によっては使用頻度が激しくなるから
俺の感覚では速度的に受け入れがたい手法かなぁ…Cのマクロならともかく。
俺はその手のはエディタの補完機能で入力を楽にしてる。
困るほど使用頻度が激しいならクリップボードツールの類で定型ワード化すれば?とか思う。
0132nobodyさん2006/11/24(金) 05:28:50ID:???
速度的にはほとんど誤差程度じゃないかな。
htmlspecialchars() は見た目で長いのも視認性が悪くてよくない。
よく使う関数にこんな長い関数名をつけたのはバカだよ。
0133nobodyさん2006/11/24(金) 05:38:48ID:???
そんなときこそコレだ!

$h = 'htmlspecialchars';
echo $h('<hoge></hoge>');
0134nobodyさん2006/11/24(金) 07:42:42ID:???
HTMLSpecialChars()おすすめ
0135nobodyさん2006/11/24(金) 08:18:37ID:???
htmlSpecialChars()派
0136nobodyさん2006/11/24(金) 09:01:37ID:???
2chには PHP Extension 開発者が集まるようなスレッドはないですか?
0137nobodyさん2006/11/24(金) 09:37:56ID:???
ないんじゃね?
Zend_APIのリファレンスってロハじゃ手に入らんだろ?
0138nobodyさん2006/11/24(金) 10:32:34ID:???
長い関数名をタイプミスる事無く1〜3秒で一気に入力出来るとちょっと嬉しいじゃない
0139nobodyさん2006/11/24(金) 10:59:39ID:???
俺はより入力を楽に&セキュアにするため、こうしてる。

function h($str) {
$str = htmlspecialchars($str, ENT_QUOTES, 'EUC-JP');
return $str;
}
// http://blog.ohgaki.net/index.php/yohgaki/2006/03/ を参照のこと
0140nobodyさん2006/11/24(金) 11:20:54ID:???
error処理してる訳でもないのになんで一旦変数に入れるの?
return htmlspecialchars($str, ENT_QUOTES, 'EUC-JP');
でいいような希ガス。
0141nobodyさん2006/11/24(金) 11:54:47ID:???
>>136
基本的にインターフェース部分だけ、マニュアルを参照しながら作法通りに書くだけで、あとは普通にCで書くだけだしな。
win上(cygwin)でトライしたときは、コンパイルがうまくいかなくて投げ出した記憶があるが、linux上なら無問題。
0142NAME IS NULL2006/11/24(金) 12:35:14ID:LYtHrh60
Array ( [0] => タイトル [1] => ツール [2] => カメラ [3] => ユーザー[4] => カメラ [5] => カメラ
[6] => データベース [7] => ユーザー [8] => アプリケーション [9] => アプリケーション [10] =>データベース
[11] => パソコン [12] => カメラ [13] => Java [14] => API)

このように文書中の語句を抜き出し、配列に格納しております。
そして、同じ要素の語句の個数をカウントして、降順に並び替えて
表示したいのですが、どのようにすれば良いでしょうか?
例えば、カメラ 4,ユーザー 2,データベース 2  といった感じにしたいの
ですが。。。
0143nobodyさん2006/11/24(金) 12:42:03ID:???
>>142
そんな関数があるよ
0144nobodyさん2006/11/24(金) 12:43:09ID:???
>>142
array_count_values+arsort
01451422006/11/24(金) 13:04:34ID:LYtHrh60
なるほど。ありがとうござりまする。
0146nobodyさん2006/11/24(金) 13:57:24ID:???
>>142
まだやってたのかw
しかもたいして進んでないようなw
0147nobodyさん2006/11/24(金) 14:14:35ID:bDJYivQE
設計について質問です。

画像アップロードが出来る掲示板を作ろうと思っているのですが、
登録→確認→完了

という3つの手順を踏まえるとして、確認画面で画像を表示させたい場合、
一旦サーバに画像を登録しないと駄目ですよね?
しかし、登録しなかったり前に戻ったりする場合、その画像がサーバに蓄積
されていって無駄になります。

どういう構成の方が効率よくできるのでしょうか?
それともPHPの組み方にもよるのでしょうか?アドバイスお願いします。
0148nobodyさん2006/11/24(金) 14:17:37ID:???
>>147
「登録」の時に、確認画面用にテンポラリでサーバに保存してるファイルの
タイムスタンプ見ていって古いファイルを削除すればいい
0149nobodyさん2006/11/24(金) 14:23:37ID:???
テキストの5つ目のデリミタ(例えばカンマ)の所を取得して表示したいのですが、

a,b,c,d,e,f,g
上の例だとfを表示。

どのようにソースを書けばいいのか検討がつきません。
正規表現で置き換えをしようと思いましたが、どのように書けばいいかわかりません。
どなたかわかる方教えていただけませんでしょうか?
01501472006/11/24(金) 14:25:35ID:???
>>148
すみません、いまいち構造の意味が分からないのですが、、、

確認 → クッキーを発行してファイルのパスを保存
登録 → そのクッキーを読んで現在の時間より古ければファイル削除

と言うことですか?
0151nobodyさん2006/11/24(金) 14:31:40ID:1uBVtpeJ
テキストファイルの中身をすべて表示させるには?
なぜか日本語が文字化けして・・・
■ このスレッドは過去ログ倉庫に格納されています