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

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

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/07/27(金) 16:32:46ID:???
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

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

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

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

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

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0652nobodyさん2007/08/07(火) 18:54:04ID:???
>>651
php5インストールしたときの環境は同じ環境?

php.iniをdiffしてみるとか。
0653nobodyさん2007/08/07(火) 19:06:57ID:???
おい、なんで画像がグモなんだぜ?
0654nobodyさん2007/08/07(火) 19:20:08ID:2wg4iJ0g
最近、登録フォームのページ推移を旧式の
form.php→confirm.php→complete.php
に戻したのですが、別にセキュリティ的に問題ありませんよね?

今までは↓のようにしていたのですが、なんか使いづらくて・・。
index.php?page=inquiry_form
0655nobodyさん2007/08/07(火) 19:45:09ID:p4Sr4eD2
PHP5を使っています。

http://www.specters.net/cgipon/labo/it_emoji.html
の絵文字変換サブルーチン→パターンマッチ(置換文)をPHPに移植するとどうなるでしょうか?

試しに

$sjis = '[\x81-\x9F\xE0-\xF7\xFA-\xFC][\x40-\x7E\x80-\xFC]|[\x00-\x7F]|[\xA1-\xDF]';
$emoji = '[\xF8\xF9][\x40-\x7E\x80-\xFC]';
$str = preg_replace('/\G((?:$sjis)*)($emoji)/', "\\1".'?'.unpack('n',"\\2").';', $str);

としてみたのですが、 絵文字のバイナリコードを$strに渡してもスルーされてしまいます。
(実行後も$strは元のバイナリコードのまま)

絵文字を変換できればいいので、正規表現であることにはこだわりません。
どなたか教えてください。
0656nobodyさん2007/08/07(火) 19:55:09ID:MdqSrwDz
foreach($list as $key => $value){
echo "$key$value";
}
$keyは0から始まりますが、1から始まるようにすることはどうやってできますでしょうか?
0657nobodyさん2007/08/07(火) 20:04:06ID:???
>>656
if($key==0)continue;
0658nobodyさん2007/08/07(火) 20:09:29ID:MdqSrwDz
>>657
ありがとうございます。
0659nobodyさん2007/08/07(火) 20:17:00ID:???
どういたしまして
0660nobodyさん2007/08/07(火) 22:23:25ID:sWk5FzeF
セーフモードになっているのでファイルを作れないのですが、
cgiだとプロセス使って重くなるらしいので、
ファイル作成の部分だけを別離して、
if (!file_exists("filename")) {
//アクセスするだけでfilenameが作成されるcreate.cgiにアクセス
}
ということをしたいのですが、このcgiを呼び出す(アクセスする)ための関数みたいのありますか?
0661nobodyさん2007/08/07(火) 22:46:57ID:???
>>660
file_get_contents
0662nobodyさん2007/08/08(水) 01:14:15ID:???
>>661
暑さで頭がいかれてますね
0663nobodyさん2007/08/08(水) 01:29:50ID:???
> アクセスするだけでfilenameが作成されるcreate.cgiにアクセス
は満たしてるような
0664nobodyさん2007/08/08(水) 03:40:33ID:9os+tc0T
質問します(winXP + Apache2 + php5.2.3 です)
会員認証や、会員情報の登録を行うプログラムを作っているのですが、
セキュリティを高める為に、接続先DB関連の情報(ホスト名やsqlのuser、pass)を
宣言したPHPはhtdocsの外に置いてそれぞれ定数化するなどし、実行側PHPでは
それをincludeするなどしたほうがいいんでしょうか?

会員認証・情報登録のシステムを作る上で皆さんが行っている
セキュリティ向上の為の仕掛けやアイディアを教えてください。
よろしくお願いします。
0665nobodyさん2007/08/08(水) 03:50:01ID:???
>>664
DBの情報は、各ページのGETのパラメータで渡しているよ。
0666nobodyさん2007/08/08(水) 04:16:21ID:9os+tc0T
>>665
ありがとうございます
具体的にはどういうことでしょうか?
henkou.php?dbhost=www.aaa.co.jp&dbUser=uName&dbUser=dbPass
みたいな感じですか? (僕の誤解でしょうか)
失礼ですが、もしこういう意味なら、逆に危なくないですか?
(セッションに保存した方がよさそうな…)
それともそんなに気にかける必要ないといういみでしょうか?

こんな時間に済みませんが、また気が向いたら教えてください
他の方もよろしくお願いします
0667nobodyさん2007/08/08(水) 04:44:39ID:???
>>664
別にやらないよりはやったほうがいいんじゃない
大事なのはどの手法にどんな利点と欠点があるかを正しく把握することかと
0668nobodyさん2007/08/08(水) 04:57:16ID:???
>>666
おいおい、そうじゃないよw
GETパラメータを内部ターンで回せばって言っている。
.htaccess使っているなら、rewriteを使ってGETパラメータ渡しすれば、
管理も楽でセキュリティーもかなり強固になる。
0669nobodyさん2007/08/08(水) 05:20:50ID:???
>>667
ですね〜 知識不足なんで色々調べてみます
ありがとうごさいました

>>668
htaccessをつかうんですか。知りませんでした、まるきり勘違いですみません…
調べて試したいと思います
ありがとうごさいました!


他にも気が向いた方がいたら、ご意見よろしくお願いします
0670nobodyさん2007/08/08(水) 07:31:07ID:???
>.htaccess使っているなら、rewriteを使ってGETパラメータ渡しすれば

これはあんぜんなの?
0671nobodyさん2007/08/08(水) 07:58:39ID:???
だめでしょ。rewrite使う(使える)んだったら、一般的にダメダメな「GET」(Queryコンポーネント)
でなんか処理なんかしないよ。REQUEST_URIとかPATH_INFOのパスコンポーネント系で処理する。

0672nobodyさん2007/08/08(水) 08:43:05ID:???
>>665 >>668
むちゃくちゃすぎ
06736602007/08/08(水) 09:02:10ID:CLPnux1M
>>661
どうもありがとうございます。
しかしfile_get_contentsでは作成されませんでした。(書き方が悪いのかもしれませんが・・・)

a.php
$filename = realpath('./') . '/test.txt';
if (!file_exists($filename)) {
  file_get_contents('a.cgi');
}
?>

a.cgi
#!/usr/bin/php
<?php
include_once('a.php');
$handle = fopen($filename, 'x+');
fclose($handle);
?>

a.cgiに単独でアクセスするとちゃんと作られるのですが、
a.phpにアクセスしてもtest.txtが生成されません。(もちろんサーバ側にtest.txtはない状態です)

それとfile_get_contentsの本来の使い方とはだいぶ外れてるようですが、気にしないでいいですか?
もっと的確な関数や方法があれば是非アドバイスお願いします。
0674nobodyさん2007/08/08(水) 09:48:51ID:???
include とか
0675nobodyさん2007/08/08(水) 10:00:15ID:???
>>673
file_get_contentsはファイルのテキスト全文読み込み
includeはファイル読み込み
a.cgiをバックグラウンドで実行したいみたいだから
execかsystemじゃないのか??
0676nobodyさん2007/08/08(水) 10:22:42ID:KXoVBglR
すみません、>>655ですがどなたかヒントをいただけませんか?
0677nobodyさん2007/08/08(水) 10:44:50ID:???
>>676
たぶん正規表現の文字列のクオートをダブルクォートにする必要があるのと、
PHPのunpack()の返り値は文字列じゃなかったはず。
06786602007/08/08(水) 10:53:10ID:CLPnux1M
レスありがとうございます。

>>674
こちらも書き方が悪いかもしれませんが無理でした。

>>675
>execかsystemじゃないのか??
こちらの関数もセーフモードじゃ制限があるのでcgiでないと・・・orz
こちらでやるならcgiよりシェルスクリプトでも作ったほうがよさそうですね。

とりあえず別の方法を思いついたのでそちらを試して見ます。
(ファイルがなかったら全工程を記述したcgiにheader関数で飛ばすという荒業・・・)
0679nobodyさん2007/08/08(水) 11:02:21ID:???
>>671
>PATH_INFOのパスコンポーネント系で処理する

というのは、shusei.php?namae=yamada という表記を /shusei/yamada とする処理のことですか?
この処理の意味は「ファイル名をディレクトリのように見せる」ということだと思うんですが、
その効果としては.phpを直接ダウンロードさせないことがメインなんでしょうか?
0680nobodyさん2007/08/08(水) 11:22:13ID:???
>>678
ファイル_ゲット_コンテンツにhttp://から記入しなさい。
0681nobodyさん2007/08/08(水) 13:01:37ID:b5KxDrLF
Maximum execution time of 30 seconds exceeded
が発生したプロセスには死んでほしいのですが
なぜか固まって生き残ってしまいます。
この人たちに自殺させる方法を教えてください。
0682nobodyさん2007/08/08(水) 13:06:16ID:???
>ファイル_ゲット_コンテンツ
0683nobodyさん2007/08/08(水) 13:09:54ID:???
>>681
まずエラーメッセージはググレ
http://www.google.co.jp/search?q=Maximum+execution+time+of+30+seconds+exceeded&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&client=firefox
06846812007/08/08(水) 13:32:24ID:???
>>683
致命的エラーなのだから仕様上プロセスは終了するはずなのに
終了しないのはなぜですか
0685nobodyさん2007/08/08(水) 13:46:27ID:???
function hoge(){
$var=計算式
return $var;
}

$a=hoge();

こうすれば$aに$varが入るのは分かるんですが、2個以上の返り血をもらいたいときはどう書けば良いんでしょうか

function hoge(){
$var1=計算式
$var2=$aを使って計算
return ????
}

$va1や$var2を計算する文を毎度書いているのでなんとかしたいです
0686nobodyさん2007/08/08(水) 13:54:54ID:???
>>685
配列を使うとか
0687nobodyさん2007/08/08(水) 13:58:55ID:???
2つに分けりゃいいじゃん
0688nobodyさん2007/08/08(水) 14:00:12ID:???
クラスにして参照とか。
0689nobodyさん2007/08/08(水) 14:01:10ID:???
天皇陛下に対して失礼な言動は日本国民として慎むべきだろ
0690nobodyさん2007/08/08(水) 14:05:15ID:j6ELTh/z
質問です。くだらなすぎて申し訳ないのですが、

ini_set('session.use_only_cookies', 0);

ini_set('session.use_cookies' , 0);

ini_set('session.use_trans_sid' , 1);

で、セッションにクッキーを使わず、自動的にURLにセッションIDを付加させたいのですが、
リンク先に飛んでもIDを付加してくれません。
ほかになにか設定を変更する場所があるのでしょうか?
(リンク先にも同じ設定をしています。)
0691nobodyさん2007/08/08(水) 14:17:05ID:???
>>690
session_start( )してないだろ
0692nobodyさん2007/08/08(水) 14:23:53ID:j6ELTh/z
すみません、原因は更に下らないことでした。
ローカルのリンク先ではなくサーバーのリンク先になっていましたorz
0693nobodyさん2007/08/08(水) 14:53:34ID:???
あるあるww
0694nobodyさん2007/08/08(水) 15:00:00ID:2+jr8RRc
HTMLをパースするのをpreg_match使って正規表現でゴリゴリやってるんだけど、
もしかしてxml関係の関数で簡単にできちゃったりする?
0695nobodyさん2007/08/08(水) 15:07:43ID:???
xml !== html
0696nobodyさん2007/08/08(水) 15:28:29ID:2+jr8RRc
>>695
どうもありがとうございます。
ですよね。でも構造が似てるので、できちゃったりするのかな、と思いました。
それでいろいろ調べてみた結果、tidy関数というものがありました。
そこで、もう1つ質問で、
PEARって、インストールしていないPHP上でも動くようにできないんですかね?
例えば、tidyのライブラリ?を作ったものの同じフォルダに入れて、zipしたり。。。
つまり、なるべくどこでも動くようにしたいのです。
0697nobodyさん2007/08/08(水) 15:38:15ID:???
できる
0698nobodyさん2007/08/08(水) 15:41:52ID:???
>>673
だからできないみたいなレスをつけてやったのにおまえときたら
0699nobodyさん2007/08/08(水) 15:42:43ID:???
TidyはPEARじゃなくてPECLだけどね
PECLのインストールは管理者じゃないと無理
0700nobodyさん2007/08/08(水) 15:43:01ID:???
>>680
おまえどこまでバカなの?
0701nobodyさん2007/08/08(水) 16:22:03ID:9os+tc0T
質問です
$documentroot = dirname(__FILE__)."/";
require_once $documentroot.'../php_libs/config/config.inc.php';

上記のようなソースが今使っている本に書いてありました。
1行目は現ファイルの絶対パスに末尾に/を付けて変数に入れてるわけですが、
2行目は何をやっている処理なんでしょう?
require_onceが対象ファイルを読み込む関数ということはわかるんですが…

ファイル構造は
/htdocs/index.html(このファイル)
/php_libs/config/config.inc.php
という形になっています
0702nobodyさん2007/08/08(水) 16:28:37ID:???
>>700
そういうのもありかなと思ったけどね
リクエストがいってCGIは実行されるだろう
0703nobodyさん2007/08/08(水) 16:29:29ID:???
>>701
そこまで考えれたんならもうちょっとだろ

・require_onceが対象ファイルを読み込む関数
・$documentroot.'../php_libs/config/config.inc.php';
・$documentrootの中身
0704nobodyさん2007/08/08(水) 16:54:42ID:9os+tc0T
>>703
ありがとうございます  しかしわからないです
「.」 連結演算子?の理解不足なんですかね〜
現在の階層に相対パス(ファイル)をくっつけてる??? わけないか、、
本の文脈的には「config.inc.php」の中身を読みに行く処理だと思うんだけど…
見たことない書式なので…
0705nobodyさん2007/08/08(水) 16:56:38ID:???
>>704
echo $documentroot.'../php_libs/config/config.inc.php';

してみればいいんじゃない?
0706nobodyさん2007/08/08(水) 17:02:55ID:j6ELTh/z
HTTPリクエストでセッションIDを送信することってできますか?
mixiにログインして、自分のページの名前などを引っ張ってきたいのですが何か良い方法はないでしょうか
0707nobodyさん2007/08/08(水) 17:04:55ID:???
ためしてみましたか?
ためしてみてできなかったら質問してください。
0708nobodyさん2007/08/08(水) 17:06:22ID:j6ELTh/z
>>707
ログインを試しました
すると、ダミーページ?みたいなのがあって、そこでhome.plにジャンプする仕様でした
セッション維持できれば次にhome.plに飛ばすこともできるんですが、
どのようにすればセッションを扱えるのかなと
0709nobodyさん2007/08/08(水) 17:07:18ID:OHuigtha
我是中国人。我,PHP完全不能。能?告???
07106712007/08/08(水) 17:09:54ID:CQkJQVbI
>>679
>shusei.php?namae=yamada という表記を /shusei/yamada とする処理のことですか?
違う。それを一番シンプルなかたちでrewriteで書くなら
shusei/(..*)$ suisei.php?namae=$1
shuseiも隠したいなら(単なるyamada) ^(..*)$ suisei.php?namae=$1
この場合「GET」 OR QUERY_STRINGS値として取得される。

PATH_INFO,REQUEST_URI系と言ってるのは、
rewrite無しでも
shusei.php/yamada(あるいは直下のパスに意味を持たせたいならshusei.php/namae/yamadaとか)
yamada以下の部分はPATH_INFO、REQUEST_URIでなにもせずに処理可能

rewrite有りならさらにshusei.phpを全部隠しながら単なるyamadaでいい。
^(.*)$ shusei.php ←REQUEST_URI
^(.*)$ shusei.php/$1 ←PATH_INFO系
つまりはGET云々なんか無視してやればいいということ。
一番スマートなのは、apacheを使ってるならばREQUEST_URI系。
0711nobodyさん2007/08/08(水) 17:23:26ID:???
↑タイポがあります。許してね

>>708
cURLでcookie使うこと考えてみました?
0712nobodyさん2007/08/08(水) 17:28:31ID:2+jr8RRc
<.*>これが、
<h1>test</h1>
にヒットするのはわかるのですが、
<.*?>こうすると、
<h1>だけになる理由がわかりません。
?の意味は、0個、または1個のパターンというのはわかったのですが、
*か、>どちらにかかっているのでしょうか・・・?
0713nobodyさん2007/08/08(水) 17:33:46ID:???
>?の意味は、0個、または1個のパターンというのはわかったのですが、
違うだろ。直前のものがあってもなくてもいいってこと。
0714nobodyさん2007/08/08(水) 17:34:45ID:2+jr8RRc
?の次にくるものを優先させるという解釈でいいんでしょうか?
<.*?>でいうと、
.*(何でも文字列)があって、>が後ろにあるので、>までは許すよ〜って感じですかね??
0715nobodyさん2007/08/08(水) 17:36:35ID:2+jr8RRc
>>713
その解釈だと、
なくても、の場合
<>になるし×
あっても、の場合なら、
<h1>test</h1>
もOKってことになりません?
0716nobodyさん2007/08/08(水) 17:40:28ID:???
>>715
で、どうしたいわけ?
0717nobodyさん2007/08/08(水) 17:42:05ID:???
↑これは逃げだな
0718nobodyさん2007/08/08(水) 17:43:51ID:???
いやだって、ID:2+jr8RRcのレスとその前後みてみなよ。
いきなり正規表現の話出されても意味わからんで。
0719nobodyさん2007/08/08(水) 17:47:30ID:2+jr8RRc
では、もう理屈はなしで、やりたいことだけ書きます。
今、'/<(.+)[^>]*>(.+)(<\/\\1>)/si' こういう正規表現をつくりました。で、
例えば、
<p>test</p>
<p>test2</p>
この例だと、
<p>test</p>&<p>test2</p>として認識させたいのですが、
最初の<p>から、2行目の</p>まで全部認識してしまいます。
「<*>から、一番近い</*>まで」というのが目的です。
0720nobodyさん2007/08/08(水) 17:48:20ID:j6ELTh/z
>>711
cURLとは何でしょうか
検索してみたのですがCurlしかHitしません・・・。

mixiに対してどのようにCookieを生成すれば良いのでしょうか。
0721nobodyさん2007/08/08(水) 17:54:13ID:???
>>719
以下の正規表現を試してごらん。わかると思うよ。
<...*?>←.が3つ。この数までは<h1>マッチ
<....*?>←.が4つ以上。<h1>test</h1>にマッチ

>>720
別にCurlでもCURLでもいいよ。PHPのcurl関数マニュアル読んで下さい。使い方が書いてある。
0722nobodyさん2007/08/08(水) 18:01:23ID:2+jr8RRc
'/<(.+)[^>]*>([^(<\/\\1>)]+)(<\/\\1>)/si'
できたーうれしいー

>>721
え?なんで・・・?理解不能
0723nobodyさん2007/08/08(水) 18:03:34ID:???
ああ、下らんID出し厨の釣りに掛かってしまった。オヤスミ。もう来るなよ。
0724nobodyさん2007/08/08(水) 18:09:01ID:???
アンカーしてください
0725nobodyさん2007/08/08(水) 18:11:05ID:???
ああ、すまん。
ID:2+jr8RRcに対してだ。もう来るなよ。
0726nobodyさん2007/08/08(水) 18:12:46ID:???
>>705
そうですね!やってみます!
ありがとうごさいました
0727nobodyさん2007/08/08(水) 18:15:03ID:2+jr8RRc
>>725
理由をかいてね
0728nobodyさん2007/08/08(水) 19:04:56ID:???
もう来るなよ
0729nobodyさん2007/08/08(水) 20:54:22ID:???
でも、たまには顔出せよな
0730nobodyさん2007/08/08(水) 20:54:48ID:???
>>720
自動ログイン系を実装するなら実装する前に現状を把握するツールを使いこなせるようになることだ。
そこから話しを始めないと全く通じない。


IENaviTr ieHTTPHeaders

とか使ってブラウザのやりとりを可視化してみ。
0731nobodyさん2007/08/08(水) 21:04:02ID:???
長い処理を実行すると、
timeoutしてしまうんですが、
何か解決する方法はありませんか?
0732nobodyさん2007/08/08(水) 21:05:06ID:???
>>729
来なくていいよ。もう飽きた
0733nobodyさん2007/08/08(水) 21:34:19ID:OHuigtha
まぁまぁ、そう怒らずに自分のおならの臭いを嗅いでエクスタシー感じようよ
0734nobodyさん2007/08/08(水) 21:39:33ID:???
その話しは、さらに飽きてる
0735nobodyさん2007/08/08(水) 22:06:06ID:???
>>731
自己解決しました
set_timeout_limit
07367042007/08/08(水) 23:14:23ID:9os+tc0T
>>705
$documentroot = dirname(__FILE__)."/";
require_once $documentroot.'../dbsettei/settei.php';
の意味がわからないということで、アドバイスに従い
echo $documentroot.'../dbsettei/settei.php';
をやってみたんですが
C:\Program Files\Apache Group\Apache2\htdocs\samples\dbtest/../dbsettei/settei.php
と表示されただけでした

当たり前といえば当たり前なんですけど、これでいいのか?? って気分です
どうなってるんだろう…
0737nobodyさん2007/08/08(水) 23:30:32ID:???
>>736
そのファイルを移動させてもそのファイルがあるディレクトリからの
相対階層にあるファイルを読み込めるようにするため
dirname(__FILE__)の結果はそのファイルがある階層によって変わるから
OK?
07387042007/08/08(水) 23:55:10ID:???
>>737
ありがとうございます
require_once $documentroot.'../dbsettei/settei.php';
echo $sample;
//settei.phpに$sample = "hahaha";としてある

を実行したところ、 hahaha と表記されました
しかし、ディレクトリを一階層落としてそのまま実行したら(/a/index.html)I
表記されなくなりました
これはこれでしょうがないんですよね…?
そうなら、require_once "../dbsettei/settei.php"; として適宜「../」部分を編集するのと
同じでは、、と思うのですが。。
僕の手際が悪いんでしょうか?
0739nobodyさん2007/08/09(木) 01:13:31ID:???
>>738
あ、>>704の現在の階層に相対パスをくっつけているというのはそれで合っている
/a/b/c/../hoge.php というのは /a/b/hoge.php と同じファイルパス
この相対パスの説明をしたらよかったのかな
0740nobodyさん2007/08/09(木) 01:14:12ID:???
別に好きな方法でやりゃいいじゃん
0741nobodyさん2007/08/09(木) 01:27:45ID:???
>>738
別にこれが正解ってのはないよ
その本がその部分の前後でなにをやっていたのかしらないけど
絶対パスや相対パスについて説明している部分だったら
自分で悩んで理解しろことなのかもしれんし
0742nobodyさん2007/08/09(木) 01:32:53ID:???
>>738
いちいち適宜編集するのが面倒だからメインのファイルから
dirname(__FILE__)で相対位置として指定してるんだろうが
少しは考えろよ
0743nobodyさん2007/08/09(木) 01:44:09ID:???
>>732
>>740
http://2chart.fc2web.com/2chart/pic/naniwo.jpg
0744nobodyさん2007/08/09(木) 01:52:45ID:???
>>743
荒らしは帰れ
0745nobodyさん2007/08/09(木) 01:56:32ID:???
>>744

>>1
>>743
0746nobodyさん2007/08/09(木) 02:11:32ID:???
>>745
お前も無意味な投稿はやめろ
0747nobodyさん2007/08/09(木) 02:19:24ID:???
あなたもですよ

おれもふくめてね

とりあえず>>1をよくよめ
0748nobodyさん2007/08/09(木) 03:07:41ID:???
>>747
>>1
0749nobodyさん2007/08/09(木) 03:14:50ID:???
PHP用のユニットテスト自動化ツールっていうと
PHPunitぐらいしかない?

PHPunitの他に、
「他にもこういうのがあるよ」ってのある?
無料、有料問わず。
0750nobodyさん2007/08/09(木) 03:17:53ID:???
最近スレだったばかりのがあるから探せ
0751nobodyさん2007/08/09(木) 03:27:08ID:???
まじすか
まいったなぁ。一応スレ検索してみたんだけどな。
それらしきスレは見当たらなかった・・・
■ このスレッドは過去ログ倉庫に格納されています