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

【PHP】下らねぇ質問はID出して書き込みやがれ 79

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2009/01/13(火) 21:48:25ID:???
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 78
http://pc11.2ch.net/test/read.cgi/php/1230026935/

◆質問用テンプレ
【OS名】vine linux
【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
【質問内容】

◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)

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

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
05775762009/01/22(木) 19:06:15ID:???
ごめん。sageたらID出ない板だった orz
ageます。
0578nobodyさん2009/01/22(木) 19:11:15ID:???
ageてないし

>>576
普通に値で代入すればcloneと同じ動作するでしょ
0579nobodyさん2009/01/22(木) 20:21:43ID:MSLv2QA+
40歳前で他業界から入ってきた人って過去に例がありますか。
0580nobodyさん2009/01/22(木) 20:31:55ID:???
自己紹介乙
0581nobodyさん2009/01/22(木) 20:35:00ID:???
XAMPP叩いてるやつは雑魚
作業効率悪いんだろうなぁ〜〜(w
0582nobodyさん2009/01/22(木) 23:10:22ID:b9TqSffK
$text = "フジテレビ";
mb_convert_kana($text,"KV","SJIS"); 
としたんですが、文字化けします
$text="こんにちはフジテレビ"; のように、前後に全角文字を入れればちゃんと全角かなに変換されます
半角カタカナのみだと動作しないものなんでしょうか?
0583nobodyさん2009/01/22(木) 23:15:27ID:LyXoyyr9
[JavaScript+PHPでアカウントIDチェック]

入力フォームの一部(アカウントID)に入力された値を別ウィンドウ
で別プログラム(PHPでDB参照して重複あるかないかechoする)に渡して
チェックしたいんですが、簡単にできるやりかたわかる方ご教授ください。

window.open("about:blank","MyName","width=400,height=130,menubar=no,titlebar=no,toolbar=no,scrollbars=no,resizable=no");
document.form1.target = "MyName";
document.form1.method = "post";
document.form1.action = "useridcheck.php";
document.form1.submit();

とかすると、今度はsubmitの「登録送信」ボタンも useridcheck.php に
いってしまいます・・・ orz
0584nobodyさん2009/01/22(木) 23:25:11ID:RJ5BK886
一部スレ違いな内容が入ってしまいますがDigest認証について教えてください。
通常のDigest認証だと認証用ウィンドウが出てきますが、これが嫌なので、
フォームにユーザ名とパスワードを入力してDigest認証をするために
以下のようなプログラムを作成しました。
一応プログラム的には動作していますが、
セキュリティ的に間違っていないか心配です。
御指南願います。

[1] サーバ側(PHP)
(1) 変数realm, nonce, uri, qop, methodを用意し、適当な値を設定する。
(2) ユーザ名、パスワードを入力するためのフォーム1を作成する。
(3) クライアントがresponseを作成するために必要な情報(realm, uri, method, nonce, qop)
  をhiddenでフォーム2に埋め込む。
(4) クライアントがサーバに認証情報(username, nc, nonce, cnonce, responce)渡すための
  フォーム3をhiddenで用意する(まだ空)

[2] ユーザ側(Javascript)
(1) ユーザ名とパスワードが入力されログインボタンが押されたらJavascript関数が呼ばる。
(2) 関数中でユーザ名、パスワード、フォーム2の情報を元にresponseを得る。
(3) 関数中でフォーム3に認証で必要な情報をセットする。
(4) submit関数を呼び、フォーム3の情報をサーバにPOSTする。

[3] サーバ側(PHP)
(1) POSTされたユーザ名からそのユーザのパスワードをDBから取ってくる。
(2) POSTされた情報(username, nc, nonce, cnonce)とパスワードからhogeを生成する。
(3) hogeとPOSTされたresponceとを比較し、一致したら認証完了。

※ ユーザ側でのresponce、サーバ側でのhogeの生成方法は
  Digest認証(Wikipedia) にある方法に沿っています。
0585nobodyさん2009/01/23(金) 00:07:54ID:???
>>582
下記を実行した結果が TRUE なら出力先がエンコーディングの判断ミスをしてるだけ
FALSE なら mbstring 関数のバグ

$han = "\xcc\xbc\xde\xc3\xda\xcb\xde"; // Shift-JIS表現の "フジテレビ"
$zen = "\x83\x74\x83\x57\x83\x65\x83\x8c\x83\x72"; // 同 "フジテレビ"
var_export(mb_convert_kana($han, 'KV', 'SJIS') === $zen);

>>583
スレ違い。JavaScript スレ行き

>>584
HTTPヘッダでのやりとりをHTTPボディに移すだけよね、問題無いないかと
ケチをつけるならそれはDigest認証じゃなくて”RFC 2617を流用したオレオレ認証”
05865842009/01/23(金) 00:49:47ID:7cLFem7v
>>585
ありがとうございます。

>通常のDigest認証だと認証用ウィンドウが出てきますが、これが嫌なので、
このために>>584を考えたのですが、
もっとスマートな方法ってありますか?
0587nobodyさん2009/01/23(金) 01:32:24ID:Dv21c52a
ereg_replaceでマッチしなかったらそのまま返してくれるんはいいけど
ひらがなだけなぜか文字化けの?で返ってくる
全部utf-8にしてるんだけど、これが原因か?
漢字は大丈夫
0588nobodyさん2009/01/23(金) 01:45:56ID:???
mb_ereg_replaceでやってみたら?
0589nobodyさん2009/01/23(金) 01:59:12ID:Dv21c52a
>>588
今やってみた、けど同じで、
全角ひらがな一文字が、(黒に白字)??になる
0590nobodyさん2009/01/23(金) 02:04:15ID:Dv21c52a
あ!ちゃんとマニュアルどおりにやったら
mb_ereg_replaceでできた!勉強になりました
ありがとうございます
0591nobodyさん2009/01/23(金) 02:08:05ID:Dv21c52a
あれ、何度もすまん!
やっぱりできなかった
>>589の通りになる
0592nobodyさん2009/01/23(金) 02:12:50ID:Dv21c52a
しまった。mb_convert_encodingでやってた
mb_regex_encoding("UTF-8");でmb_ereg_replace
やったら、ひらがな文字化け直った
ありがとうございました
0593nobodyさん2009/01/23(金) 02:50:20ID:???
>>586
Digest認証してブラウザに Authenticate ヘッダを送信させたいのか、
認証用ID、パスワードの平文を隠したいのかで変わる
前者ならブラウザが認証が必要かどうか判断できないので機能しない
後者ならそれでいい。Yahooなんかも非SSL環境で似たようなやり方をしてたと思う
0594nobodyさん2009/01/23(金) 03:44:20ID:ufSOhBv2
<?php
print rand();
?>

このスクリプトをF5連打で実行しまくったら、
どうやら次のことがわかった。

(1)正の数しか出てこない
(2)小数はでてこない。整数のみ。
(3)35000くらいが上限らしい...?

そこで、上記のスクリプトを10回実行して、
その結果を、どんどん配列に入れていくような
スクリプトを作って、上記の仮説を検証してみたい。

どのようなコードをかけばよいか。
0595nobodyさん2009/01/23(金) 03:47:00ID:ufSOhBv2
<?php
$a[]= rand();
$a[]= rand();
$a[]= rand();
$a[]= rand();
$a[]= rand();
$a[]= rand();
$a[]= rand();
$a[]= rand();
$a[]= rand();
$a[]= rand();
$a[]= rand();

print_r ($a);
?>

とりあえず、自分の知識で上記のコードを書いてみた。
randを実行した結果がノーマル配列$aに順次、格納され、
最後にprint_rで出力されている。

今度は、この中のMAXの要素を表示したい。
どう書けばよいか?
0596nobodyさん2009/01/23(金) 03:47:32ID:ufSOhBv2
それと、

$a[]= rand();
$a[]= rand();
$a[]= rand();
$a[]= rand();
$a[]= rand();
$a[]= rand();
$a[]= rand();
$a[]= rand();
$a[]= rand();
$a[]= rand();
$a[]= rand();



この部分も、ループを使って書き直したい。
0597nobodyさん2009/01/23(金) 03:51:08ID:ufSOhBv2
<?php
for ($i = 1; $i <= 100; $i++) {
$a[]= rand();
}

print_r ($a);
?>

自分で調べて、上記のように、
forループを使って書き直すことができた。
今度は配列の要素の中の、MAX値を抜き出したい。
どうすればよいか。
0598nobodyさん2009/01/23(金) 03:56:43ID:ufSOhBv2
<?php
for ($i = 1; $i <= 100; $i++) {
$a[]= rand();
}
$b=max(($a));
print_r ($b);
?>

ついに完成に近づいてきた。

ランダムに100個の数値を生成し、
それらをすべて、配列に格納し、
その中の、最大値だけ抜き出して表示することに
成功したのだ。

これでrand関数の性質を調べることができるだろう。
0599nobodyさん2009/01/23(金) 03:58:54ID:ufSOhBv2
$i <= 100 の時は、値にかなりのバラツキがあった。
ところが、
$i <= 100000
にして実験してみると、
32767
で固定されることがわかった。
つまり、rand関数の仕様は、
何も引数に指定しなければ、最大値は32767だということだ。
06005842009/01/23(金) 04:00:22ID:7cLFem7v
>> 593
ありがとうございます。
私の場合Digest認証をしているではなく、
”パスワードの平文を隠した認証”をしている、と言った方が良いですね。

思い付きの認証ですが、
世間から大きく脱線していない方法のようなので安心しました。
0601nobodyさん2009/01/23(金) 04:04:48ID:ufSOhBv2
ちなみに、上記コードのmaxをminに変えて実行してみると、
最小値は0であることが確認できる。つまり、
randは0−32767の、合計、32768通りの数値を
生成するということだ。

この条件のとき、ランダムに100個の値を生成したときに、
最大値の32767が偶然、生成される確率はいくつであろうか?

実際に実験したかぎりでは、かなり低い数値だと体験的に理解しているが、、、

また、100、000(10万)個の値を生成したときに、32767がそのなかに
含まれる確率はいくつであろうか?

実際に実験してみたかぎりでは、ほぼ99.9999999%の確率で
(つまり全部の試行で)32767がMAX値として表示されたのだが、、、、

これを数学的に「○パーセント」と導き出すことはできるのだろうか?
0602nobodyさん2009/01/23(金) 04:05:40ID:???
ID:ufSOhBv2
日記ならチラシの裏かブログにかけ
自己満足検証なんてこんなとこに書かなくていい
マニュアル見れば書いてあるのにご苦労なことだ
0603nobodyさん2009/01/23(金) 04:07:48ID:???
>>602
お前は暗号センターに勤めたことはないのか?
0604nobodyさん2009/01/23(金) 04:12:34ID:???
>>601は失笑もんだな
こんなこと書いて恥ずかしくないのだろうか・・・
>>603
何が暗号センターだよ笑わせるな
意味不明もいいところだ
0605nobodyさん2009/01/23(金) 04:30:52ID:???
俺も暗号センター勤めたてたよ?
0606nobodyさん2009/01/23(金) 04:38:53ID:???
擬似乱数がどうこういいたいんだろw
確かにこりゃ失笑もんだなwww
0607nobodyさん2009/01/23(金) 04:43:10ID:???
おまえがもし100年前に生まれていたら、
「脚気という病気は細菌によるものである」
って教科書に書いてあったら、調べもせずに
そのまま信じ込むんだろうな。
0608nobodyさん2009/01/23(金) 04:44:37ID:???
<?php
for ($i = 1; $i <= 100000; $i++) {
$a[]= rand();
}
$b=array_sum($a) / count($a) ;
print_r ($b);
?>


0から32767までの数値を、
10万個ランダムに生成し、
それらの生成された数値を
全部配列に格納し、
その平均値を求めるプログラムである。

これを実行しF5を連打すると、
平均値が安定しないことがわかる。
0609nobodyさん2009/01/23(金) 04:48:30ID:???
>>607
医学解明とただの関数解析はレベルが違いすぎる
お前のはただの自己満足
だから恥ずかしいといわれる
それでも恥ずかしいこと書きたきゃブログでやれ
高度なことを書きたいのならまずはアセンブラを勉強しろ
それとスレ違い
0610nobodyさん2009/01/23(金) 04:55:21ID:???
まぁそろそろ2.3ヶ月居着いてスレ違いなこといい続けてるし、
質問も連投してただ荒らしてるだけだし、
報告してみるといいかもしれないね。
この程度じゃ規制はされないだろうけど、注意の目はくるだろう。
0611nobodyさん2009/01/23(金) 05:03:07ID:???
>>610
警察に通報しました。
0612nobodyさん2009/01/23(金) 05:03:58ID:???
<?php
for ($i = 1; $i <= 100000; $i++) {
$a[]= rand();
}
$b=array_sum($a) / count($a) ;
$c=floor($b);
print($c);
?>

先ほどのコードで、
小数点以下がウザかったので、
floor関数を使って、切り捨てて、整数にしたみた。
0613nobodyさん2009/01/23(金) 05:06:31ID:???
ああ、こいつにはこれがあったな。
1行コピペ荒らしで報告すればいいかもしれない。

まぁそんなことはさておき、
マニュアルを信用できないのならプログラムやめちゃいな。
それかPHPみたいにCでの実装とかじゃなく、
自分でスクラッチから言語作ってそれを使いな。
アセンブラレベルでコンピュータの制御が信用できないならもうどうしようもないけどw
0614nobodyさん2009/01/23(金) 05:07:09ID:???
>>613
警察に通報しました
0615nobodyさん2009/01/23(金) 07:15:36ID:ufSOhBv2
http://72.14.235.132/search?q=cache:VURwFeVu9vwJ:5x2.info/211+http://5x2.info/211

このページで

「1つの場合:fetchを使いつつ、一応LIMIT 1も指定してみる」
とアホな無意味なことをやっているのはなぜ?
バカだから?
0616nobodyさん2009/01/23(金) 07:21:11ID:ufSOhBv2
PDOでデーターベースから値を持ってくるときに、
bindParamとbindValueの、どちらを使うべきなのか?
0617nobodyさん2009/01/23(金) 07:21:43ID:???
まちがえた、変数をバインドするときに、だった。
0618nobodyさん2009/01/23(金) 07:22:49ID:ufSOhBv2
PDOで値を持ってくるときに、
fetchを使うべきなのか?

そのときの、パラメーターはどうすればいいのか?
0619nobodyさん2009/01/23(金) 07:25:43ID:ufSOhBv2
もしかして、ANDとORとXORを駆使すれば、
複雑なド・モルガンの問題も、ボタン一発で解ける?
0620nobodyさん2009/01/23(金) 08:13:06ID:???
わざわざsageてるとこがキモイ
0621nobodyさん2009/01/23(金) 08:15:30ID:???
規制申請してくるか
0622nobodyさん2009/01/23(金) 08:15:51ID:???
>>620
警察に通報しました
0623nobodyさん2009/01/23(金) 08:16:26ID:???
>>621
警察に通報しました
0624nobodyさん2009/01/23(金) 08:23:12ID:???
ど素人のくせに、ちょっと知ってるとこがあるとエラそうに答えちゃうとこがキモイ
(しかも、思いこみで間違ってる内容多数)
0625nobodyさん2009/01/23(金) 08:26:12ID:???
>>624
警察に通報しました
0626nobodyさん2009/01/23(金) 08:38:48ID:???
これ本当に1人でやってるならすげえとおもうわ・・・
1日何時間張り付いてるんだよ
0627nobodyさん2009/01/23(金) 08:47:32ID:???
>>626
警察に通報しました
0628nobodyさん2009/01/23(金) 09:17:11ID:???
自覚はしてるんだね。
0629nobodyさん2009/01/23(金) 09:34:42ID:???
冷静なツッコミに吹いたwwwwww
06305762009/01/23(金) 10:35:48ID:Qlph62AH
>>578
本当だ!代入でコピーされてました。
arrayはインスタンス返すもんだと思ってた。どうやらオブジェクト脳すぎたようだ・・・

<?php $a=array('hage', 1234); $b = $a; $a[0] = TRUE; var_dump($a, $b); ?>
array(2) {
[0]=>
bool(true)
[1]=>
int(1234)
}
array(2) {
[0]=>
string(4) "hage"
[1]=>
int(1234)
}
0631nobodyさん2009/01/23(金) 10:50:20ID:Qlph62AH
【OS名】windows/linux
【PHPのバージョン】PHP 5.2.5(windows)
【質問内容】
恐縮ですが、質問させていただきます。

DateTimeクラスを用いて、日付と日付の比較するよい方法はありませんでしょうか?
やりたいことは、ある日付が今日から何時間経過していたら、処理をやめる、というようなことをやりたいのです。

DateTime::modifyとDateTimeどおし比較ができれば、いけると思ったのですが、
date_diffやDateTime::diffは実装されていないようですし、
比較演算子は定義されていないようですし、上手い方法がわかりません。

また、DateTimeのリファレンスのようなものも見つけられませんでした。
皆さんはどのように比較されているのでしょうか?
0632nobodyさん2009/01/23(金) 11:09:16ID:???
>>631
上手い方法はunixtimestampで計算
もしかして、クラスに依存するのが上手い方法だとでも?
オブジェクト指向マンセーってか。言語をなめてんの?

アンケートなら他所でやるべき
おれはZend_Dateだけどw
0633nobodyさん2009/01/23(金) 13:21:57ID:G0q2tgbP
jspというのを勉強しているのですが、
<html%>というコードが出てきて、%の意味が分からないので教えてください。
0634nobodyさん2009/01/23(金) 13:24:15ID:???
読みは”パーセント”
意味は百分率でぐぐれ
06356332009/01/23(金) 13:46:36ID:???
それはわかるのですが、ブラウザがどういう解釈をするのか知りたかったのです。
0636nobodyさん2009/01/23(金) 14:16:16ID:???
スレ違いじゃねーの
06376332009/01/23(金) 14:31:34ID:???
jspとtomcatの本を買えといわれたそうします。
ありがとうございました。
0638nobodyさん2009/01/23(金) 14:43:35ID:???
>>595
aa
0639nobodyさん2009/01/23(金) 15:27:11ID:???
SQLiteManagerでの質問です。 INSERT INTO addressbook ( id , name , zip , address , create_at )
VALUES ( NULL , 'test' , 1234567 , '東京都' , '2008-07-17 01:10' ) SQLからこのリクエストを実行すると東京都の部分が文字化けするのですが
どなたか対処方法を教えて下さいませ。
ちなみに挿入からだと文字化けしません。
0640nobodyさん2009/01/23(金) 15:37:29ID:???
質問者は>>1を読んでね
0641nobodyさん2009/01/23(金) 17:07:46ID:mpwi3WFw
再帰を使って、同じファイル名のファイルが存在すれば
先頭に「copy_(数字)」を付けたいと思います

以下のようなソースを書いたのですが、
copyの箇所が複製されたファイル名になります「copy1_copy_test.html」
どこを修正すればいいのでしょうか?

function fileMake($to_dir,$f_name,$i){

$new_file = $to_dir."/".$f_name;

if(is_file($new_file)){
$f_name = "copy".$i."_".$f_name;
$num = $i+1;
fileMake($to_dir,$f_name,$num);
}else{
touch($new_file);
}
}
$to_dir = realpath(".");
fileMake($to_dir,"test.html","");
06426412009/01/23(金) 17:16:44ID:???
すみません、自己解決しました
名前を変更したファイル名を再指定して再帰しているから
「copy+数字+変更したファイル名」になってしまっていました。
0643nobodyさん2009/01/23(金) 19:03:27ID:???
>630
PHP5にはSPLという、C++でいうSTLの出来損ないみたいなのが存在する。
そいつに含まれるArrayObjectは、おまいの想定しているような動作をする。

<?php
$a = new ArrayObject(array('hage', 1234));
$b = $a; $a[0] = true; var_dump($a, $b);
?>
object(ArrayObject)#1 (2) {
 [0]=>
 bool(true)
 [1]=>
 int(1234)
}
object(ArrayObject)#1 (2) {
 [0]=>
 bool(true)
 [1]=>
 int(1234)
}
0644nobodyさん2009/01/23(金) 19:57:05ID:???
phpとかcgiのuploaderで、パスワード付きのみるけど
あれって、単にランダムなフォルダ名のフォルダ作って
ファイル入れてるだけじゃね?
フォルダ名ばれたらファイルまでの絶対パスもばれて
パスワードも意味ない気がするけど、そこまでシビアじゃないのかな
例えば、サイトの階層ごと丸ごとダウンロードみたいなツールで
検索かけられても大丈夫なのか
0645nobodyさん2009/01/23(金) 20:20:06ID:???
と思ったけどほぼ自己解決しました
0646nobodyさん2009/01/23(金) 20:56:44ID:???
http://takeshima.2ch.net/test/read.cgi/news4vip/1232701402/

お前ら
0647nobodyさん2009/01/23(金) 21:13:17ID:???
>>644
>あれって、単にランダムなフォルダ名のフォルダ作って
なんじゃそりゃ?
0648nobodyさん2009/01/23(金) 21:23:41ID:???
>>647
たとえば、うpろだってサイトだと
パスワード付けたら、ttp://www.uploda.org/
の下にファイル名+適当な文字列のフォルダの下に画像ファイルが入ってる
けど、こういうのて、画像ファイルの絶対パスで接続されたら
パスワード打ち込む必要がないから、なんか条件が軽いなぁと思った
0649nobodyさん2009/01/23(金) 21:28:48ID:???
URLのクエリがそうだからって実際にディレクトリが作られてるとでも思ってるの?
0650nobodyさん2009/01/23(金) 21:33:56ID:???
getみたいに?でやってるんじゃないの
0651nobodyさん2009/01/23(金) 21:45:04ID:???
>>649
そんな風な設定がどこかでできるのかな
>>650
いや、例えば、パスワードありだと、こんな感じでのurlが生成される
ttp://www.uploda.org/uporg1454584.jpg_5gsPPFWAFEGWYfwafWAXr/uporg1454584.jpg(ダミーurl)

/uporg1454584.jpg_5gsPPFWAFEGWYfwafWAXr/
が、649が言うようにできるのかよくわからないのと、
これ含めた絶対urlパスで接続すると、画像が見れちゃうのをもっと厳しくできないかなと
0652nobodyさん2009/01/23(金) 21:47:45ID:???
無法地帯だな
0653nobodyさん2009/01/23(金) 22:24:40ID:???
>>651
基礎知識を勉強してから出直して来い
0654nobodyさん2009/01/23(金) 22:36:41ID:???
ムホッ
0655nobodyさん2009/01/23(金) 22:44:06ID:???
「困ったな僕」とか言ってたらママが助けてくれたんだろうな。
かわいそうに。将来性ないわ。
0656nobodyさん2009/01/23(金) 23:06:29ID:???
PHP@プログラム板
http://pc11.2ch.net/test/read.cgi/tech/1232712334/
0657nobodyさん2009/01/23(金) 23:37:27ID:???
ひゃひゃ。もう戻って来ないで^^ってかんじ
0658nobodyさん2009/01/23(金) 23:43:34ID:???
>>653
いや、上でも言ってるように
ほぼ解決はしたんだけど、あまりにも段階踏みすぎというか。
他のuploaderとかみてても大体そんな感じなんだよね
0659nobodyさん2009/01/23(金) 23:51:24ID:???
お前、全然わかってないだろ
0660nobodyさん2009/01/23(金) 23:55:26ID:???
>>658
http://thumb2.uploda.org/file/uporg1958030.jpg
0661nobodyさん2009/01/24(土) 00:17:02ID:???
>>659
omaemona
0662nobodyさん2009/01/24(土) 00:21:50ID:???
>>661
おまえ、「できるのかな」とか「わからない」しか書いてないのに、
>>658で「上でも言ってるようにほぼ解決」とか、ワケワケメ

# PATH_INFOとかmod_rewriteとかAddHandlerなんかでググったりするなよ。スレチだし。
0663nobodyさん2009/01/24(土) 01:16:54ID:???
横からで悪いが、>644が無知なだけだな。

ttp://pc11.2ch.net/test/read.cgi/php/1231850905/
とか
ttp://www.amazon.co.jp/dp/4894712288/
とか
ttp://www.nicovideo.jp/ranking/mylist/daily/animal
とかがディレクトリを指しているとでも思っているのだろうか。
何億ディレクトリ作ってるんだよAmazon。
0664nobodyさん2009/01/24(土) 01:25:06ID:kFWBnpyA
http://www.ibm.com/developerworks/jp/opensource/library/os-php-5.3new2/?ca=drs-jp
このリスト 7. オブジェクトの中にあるクロージャーって
クロージャ生成と同時に実行されてませんか?
$closure = $dog->greet("Hello");
$closure();
なら分かるのですが。
何故こういう動作になるのですか?
0665nobodyさん2009/01/24(土) 01:30:18ID:???
試してみたら?
0666nobodyさん2009/01/24(土) 01:40:09ID:???
>>664
たしかに、そんな感じする。
0667nobodyさん2009/01/24(土) 02:07:27ID:lTAVuTjG
PHP5を勉強中です。
タイプヒンティングがググッても理解できません。
バカな私に優しく説明して下さい
0668nobodyさん2009/01/24(土) 02:15:53ID:???
理解できないなら必要ないということだ。
0669nobodyさん2009/01/24(土) 02:28:03ID:+XZf0oGO
ある変数に指定した数字が入っていたら違うページに飛ぶってできますか?
IDとパスワードがあってたら違うページに飛ぶみたいなの作りたいんですけど

どうしたらできますか?
0670nobodyさん2009/01/24(土) 02:28:14ID:???
マニュアル読めよ
0671nobodyさん2009/01/24(土) 02:28:43ID:???
>>669
header
0672nobodyさん2009/01/24(土) 02:29:53ID:???
>>669
header
0673nobodyさん2009/01/24(土) 02:30:44ID:???
被った…のか?
俺のミスかな。
0674nobodyさん2009/01/24(土) 02:38:34ID:???
>>669
header
0675nobodyさん2009/01/24(土) 02:47:36ID:+XZf0oGO
headerを一番上に書いときますよね?
で、条件式としてはどんな感じになるんでしょうか?
0676nobodyさん2009/01/24(土) 02:57:11ID:???
>667
function hoge(PDO $var)
と宣言すると、関数hogeにPDOクラス(もしくはその継承クラス)のインスタンス以外の引数を渡すとエラーになる。
配列もしくはクラスしか指定できないけどな。

「この関数には配列を渡せ、文字列とか渡す屑は俺が殺す」
とコメントに書く事は、非常に良くあることだと思う。
タイプヒントを使うと、意図しない型の引数を渡す相手に対しエラーを発生させて本当にぶち殺せるようになる。

インターフェイスも指定できるし、指定されたクラスの子クラスでも通る。
引数がおかしい事が事前に分かるので「悪いのは俺様のメソッドじゃなくててめえの脳味噌だ」と容易に主張でき、
貴重な時間を脳に障害のある糞の書いたコードのデバッグに使わなくとも良くなるのが利点。

タイプヒントを使わないと実装できない機能は何一つとして無い。分からないなら放置でいい。
PHPの強みを殺す側面もあるから、「デキる奴はこれを使う」ってわけでもないしな。
■ このスレッドは過去ログ倉庫に格納されています