トップページ⇒php
585コメント154KB

PHP上級者が集まるスレ

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/01/14(日) 16:53:46ID:???
ここでは他のPHPスレよりもより一層と高いレベルでの情報交換・体験談などを行うスレです。 
我こそはPHPプロフェッショナルだという方の書き込みをお待ちしております。 
0002nobodyさん2007/01/14(日) 17:35:42ID:???
私こそが真のPHPの上級者だ!
だからこのスレッドは私のものだ……。
お前たちはここにくるべきではないのだ。




ところで、私は誰ですか?
0003nobodyさん2007/01/14(日) 18:19:36ID:???
mail関数を使うための設定がわかりません。WindowsXPです。よろしくおねがいします。
0004nobodyさん2007/01/14(日) 19:06:00ID:???
>>3
メールサーバーは何?
0005nobodyさん2007/01/15(月) 00:47:52ID:???
>>3
お前みたいな初心者はくだスレにでも引きこもってろ。
ここは上級者の集うスレだ。
0006nobodyさん2007/01/15(月) 01:19:02ID:???
final class PHP_Tensai
{
000732007/01/15(月) 02:34:36ID:???
>>4
メールサーバはxmailです。導入する前はWindows付属のSMTP使ってました。popも使いたいのでメールサーバとしてxmailを選択したのですがphp.iniのどこになんて記述したらいいのかわからなくて立ち往生してます。
0008nobodyさん2007/01/15(月) 03:00:36ID:???
3=1
糸冬 了
0009nobodyさん2007/01/15(月) 10:22:41ID:???
初心者乙
0010nobodyさん2007/01/15(月) 19:11:07ID:???
PHP上級者の定義、条件は何ですか?

例)
・PHP使用歴10年以上
・PECLを自作できる
・PHPを使って月収100万円以上
0011nobodyさん2007/01/15(月) 19:25:12ID:???
月収100万には届かないが、PHPを使って3ヶ月で240万円稼いだよ。
0012nobodyさん2007/01/15(月) 20:02:48ID:???
Zend certificationは受験料をもっと下げた方が人気が出ると思います。
1回の受験は3150円くらいがいいのではないでしょうか?

http://www.zend.co.jp/certification/
PHP開発技術者のスキル証明書
0013nobodyさん2007/01/15(月) 21:33:18ID:???
>>12
何でZend Japanにいわないの?
0014nobodyさん2007/01/16(火) 02:49:37ID:3Q1Caun+
ポイントが良心的なサイト
http://1107.cc/?af3390521
ワンクリじゃないから安心せぃ
0015nobodyさん2007/01/16(火) 03:01:09ID:???
こんな所に出会い系貼られてもなぁ
0016nobodyさん2007/01/16(火) 04:02:53ID:???
>11
人月80万の開発なんて普通じゃね?
0017nobodyさん2007/01/19(金) 02:52:59ID:ooNNw2ca
GETってセキュリティー的にはどうなの? 
POSTのほうがマシとかあるの? 
0018nobodyさん2007/01/19(金) 03:32:58ID:/UQbmip1
POSTにしとけば少なくともアドレスからのイタズラは無くなる。
受け取りに対策しとけば問題ないし、対策なしじゃどっちもアウト。
ブックマークを考慮するならGETのが良いし。
以上上級者スレの非常に高度なFAQでした。
0019nobodyさん2007/01/19(金) 07:41:27ID:???
QS問わず、排他制御の良い方法ないですか?
0020nobodyさん2007/01/19(金) 15:02:20ID:???
>>18
サニタイズ言うなキャンペーンは上級者向けの話題ですか?
0021nobodyさん2007/01/20(土) 14:31:19ID:c+1RvCEz
strtrって遅くない? 
何回計ってもstr_replaceの方が倍以上速い
0022nobodyさん2007/01/20(土) 16:18:49ID:???
>>21
用途が全然違うので、比べる意味などないですよ
0023nobodyさん2007/01/25(木) 12:45:50ID:HfWXyheO
[public_html] 
    | 
    |----[image]---index.php 
    | 
    |----index.php 

たとえばこんなディレクトリ構成が存在するとします。 
imageディレクトリのindex.phpにアクセスするとルート元の 
index.phpに飛ぶように処理したいのですが、 

imageディレクトリ内のindex.phpに次の記述をしました。 
header("Location: http://www.example.com/";); 

このheader関数内の書かれたURLをサーバによって書き換えないと 
いけないので、この面倒をなくすために自動で取得したいのですが 
なにかヒントをお願いいたします。
0024nobodyさん2007/01/25(木) 12:47:31ID:???
サーバー関数
0025nobodyさん2007/01/25(木) 15:10:11ID:???
>>23
header("Location: ../index.php");

じゃだめか?
0026nobodyさん2007/01/25(木) 16:02:12ID:???
>>25
rfc的にはだめだけどPCブラウザは対応してるからいいのかな
0027nobodyさん2007/01/25(木) 20:22:37ID:???
だからサーバー関数でホスト名等取得して連結しればいいだろ
0028nobodyさん2007/01/25(木) 22:40:09ID:???
>>27
どうやって取得するの?
0029nobodyさん2007/01/25(木) 22:50:58ID:???
>>28
print_r($_SERVER);
0030nobodyさん2007/01/25(木) 23:18:33ID:???
サーバー「関数」なのかそれ?
0031nobodyさん2007/01/25(木) 23:33:46ID:???
ここまでヒントでてんだからしらべれよ…なんで努力しないんだ?調べてわからなかったら聞けよ
0032nobodyさん2007/01/27(土) 03:46:34ID:???
>>10
PHSを使っている(旧名称 Personal Handy Phone=PHP)
0033nobodyさん2007/01/28(日) 08:01:15ID:???
ところで>>1は上級者なの?
0034nobodyさん2007/01/28(日) 08:38:55ID:???
たぶん違うと思うよ
0035nobodyさん2007/01/29(月) 05:44:17ID:???
>>1は背伸びしたいだけの厨房
0036nobodyさん2007/02/24(土) 20:36:33ID:???
1、id passを自由に記入して登録してもらい、 
2、その後、ログインする機能をつけたいと思っています 

1でフォームを通じてデータベースに登録するところまではできました 

2ではどうしたらいいのでしょうか  
ログインするページで、データベースから登録された全てのIDパスを読んで、フォームに入れられた情報が合致するかどうかをチェックしているのでしょうか? 
0037nobodyさん2007/03/06(火) 18:06:28ID:???
>>36
うそでしょ?
0038GoA ◆J2EE.GplLk 2007/03/06(火) 18:09:36ID:???
>>36
スレタイ読んでないよね?
だめだよ。スレタイはちゃんと読まなきゃ。
0039nobodyさん2007/04/16(月) 13:23:17ID:FLqOV9yP
>>36-38の流れに吹いた
0040nobodyさん2008/09/08(月) 06:58:47ID:YApPrX0L
関数は使用する行よりも前に書かないといけないのですか?
0041nobodyさん2008/09/08(月) 09:10:44ID:???
>>40
うそでしょ?
0042nobodyさん2008/09/10(水) 18:48:33ID:???
そんな低級言語、C/C++ぐらいだよw
0043nobodyさん2008/09/13(土) 16:19:57ID:???
わざわざPHP上級者と言っているということは、PHPについては上級者でも
プログラミング全般に関しては上級者ではないということですか?
0044nobodyさん2008/09/13(土) 17:56:13ID:???
ああ、いるいる。

PHPで

print "Hello!World";

はすぐ書けるくせにPerlになると書けない奴。

0045nobodyさん2008/09/13(土) 18:04:20ID:???
普通Helllo World!じゃないの?
0046nobodyさん2008/10/04(土) 11:48:16ID:???
Helo World!だと思ってたorz
0047nobodyさん2008/10/05(日) 22:54:10ID:???
Halo World - ディープインパクトの系譜 -
0048nobodyさん2008/10/06(月) 20:49:12ID:???
なんだ。
結局Hello Worldが書ければPHP上級者になるのか。
0049nobodyさん2008/10/08(水) 12:20:09ID:???
上級者じゃない俺はHello Worldも記述できないのか・・・
0050nobodyさん2008/10/09(木) 18:07:47ID:???
上級者の皆様に質問です。
文字列を50音順で並び替えたいのですが、
どうしたらよいでしょうか?
やはり一文字ずつ配列で確認した方がいいですか?
0051nobodyさん2008/10/09(木) 18:11:48ID:???
>>50
頭数文字を数値化して並べ替え後、同じ数値が並んでるかどうか比較して並べ替え。
0052nobodyさん2008/10/09(木) 18:16:32ID:???
>>51
頭数文字の数値化というのは、(あ)なら1で(い)なら2という意味ですか?
0053nobodyさん2008/10/10(金) 09:40:02ID:???
イイヨイイヨー
0054nobodyさん2008/10/31(金) 19:40:09ID:Eo+dqOlV
preg_match_all()で得られる結果の多元配列を、
count()に渡したときのカウント数について教えて頂けないでしょうか。
カウント数がどうにも解せないのです。

↓これを実行すると、なぜか結果として4が表示されてしまいます。
$s = "aaa111aaa222\naaa111aaa222\naaa111aaa222\naaa111aaa222";
preg_match_all('/(.+111)(.+222)/', $s, $match);
echo count($match[0], COUNT_RECURSIVE);

では、preg_match_all()が返す多元配列と同等の多元配列を作って、
それをcount()に渡してみます。

↓この結果は3になる。この結果は正しい。
$match = array(
array(0, 1, 2),
array(0, 1, 2),
array(0, 1, 2),
array(0, 1, 2)
);
echo count($match[0], COUNT_RECURSIVE);

preg_match_all()の返す多元配列は特殊なものなのでしょうか?
(うーん、そんな馬鹿な・・・)
0055nobodyさん2008/10/31(金) 20:45:48ID:???
質問スレがあるのにこんなところで聞くというセンスもどうかと思うが、
まずなぜ$match[0]をvar_dumpしてみようと思わないのかな
↓結果
array(4) {
[0]=>
string(12) "aaa111aaa222"
[1]=>
string(12) "aaa111aaa222"
[2]=>
string(12) "aaa111aaa222"
[3]=>
string(12) "aaa111aaa222"
}
0056nobodyさん2008/10/31(金) 23:58:11ID:???
レンザバでiconvを使おうとしたらモジュールに組み込まれてなくて
phpからJavaのJNIみたいに直接libiconv.soを呼び出せないかと思ったのですが
出来ますか?
0057nobodyさん2008/11/01(土) 00:08:17ID:???
やってみれば
0058nobodyさん2008/11/01(土) 00:20:57ID:???
できるならやってみます
0059nobodyさん2008/11/01(土) 00:23:11ID:???
どんだけ〜
0060nobodyさん2008/11/01(土) 07:37:24ID:/2wL5ARz
>>55さん
preg_match_all()の結果と同じ配列を作るには

$match[0]=array("全体1","全体2","全体3");
$match[1]=array("部分1","部分2","部分3");
$match[2]=array("部分A","部分B","部分C");

と、しないといけなかったんですね・・・。
ありがとうございます。なぞが解けました。
多元配列を正しく理解していませんでした。
0061nobodyさん2008/11/01(土) 11:28:32ID:???
>>60
何を言ってるんだ?
まとめて代入しても同じ
0062602008/11/01(土) 17:51:55ID:/2wL5ARz
>>61さん
すいません。どういう意味なのでしょうか?
0063nobodyさん2008/11/01(土) 18:09:48ID:???
>>62
61じゃないけど>>60のほうが意味わからない。
何を想定してどんなふうに想定外だったのかということがはっきりしないな。
0064602008/11/01(土) 18:17:53ID:/2wL5ARz
>>63さん
要するに、preg_match_all()でマッチしたときに返される多元配列と
同じ形の多元配列を自分で作るにはどうしたらいいのか?
ということがわからなかったです。
0065nobodyさん2008/11/01(土) 18:22:04ID:???
$match = array(array(array(...
0066nobodyさん2008/11/01(土) 18:44:31ID:???
>>64
array(4) {
[0]=>
string(12) "aaa111aaa222"
[1]=>
string(12) "aaa111aaa222"
[2]=>
string(12) "aaa111aaa222"
[3]=>
string(12) "aaa111aaa222"
}
のcountは4になって当然。
なのに3になると思ってたのはなぜ?
要点だけ言われても余計分からないから全部言ってくれ。
いや解決したんならもういいんだけど、単なる雑談として。
0067602008/11/01(土) 19:36:22ID:/2wL5ARz
サンプルコードをもう一度きちんと書きました。

//�@///////////////////////
$s = "aaa111aaa222\naaa111aaa222\naaa111aaa222\naaa111aaa222";
preg_match_all('/(.+111)(.+222)/', $s, $match);
echo count($match[0], COUNT_RECURSIVE).'<br>';

//�A///////////////////////
$match[0]=array("aaa111aaa222", "aaa111", "aaa222");
$match[1]=array("aaa111aaa222", "aaa111", "aaa222");
$match[2]=array("aaa111aaa222", "aaa111", "aaa222");
$match[3]=array("aaa111aaa222", "aaa111", "aaa222");
echo count($match[0], COUNT_RECURSIVE).'<br>';

//�B///////////////////////
$match = array(
array("aaa111aaa222", "aaa111", "aaa222"),
array("aaa111aaa222", "aaa111", "aaa222"),
array("aaa111aaa222", "aaa111", "aaa222"),
array("aaa111aaa222", "aaa111", "aaa222"));
echo count($match[0], COUNT_RECURSIVE).'<br>';
0068602008/11/01(土) 19:37:04ID:/2wL5ARz
>>66さん
たびたびすいません。
まだ解決していませんでした。

�@は4が出力されます。
�Aは3が出力されます。
�Bは3が出力されます。
私は�@�A�Bはすべて、3が出力されるのが正しいと思っていました。
なぜなら$match[0]に入っている配列要素は3つなので。

>>65さん
�Bのケースと同じでしょうか?
これだと�@と同じ結果にはなりませんでした。
申し訳ありませんが、もう少し具体的にお願いできないでしょうか?
0069nobodyさん2008/11/01(土) 20:19:34ID:???
>>68
いや66で書いたのと同じことを繰り返すことになるけど
�@の$match[0]に入っているのは
array(4) {
[0]=>
string(12) "aaa111aaa222"
[1]=>
string(12) "aaa111aaa222"
[2]=>
string(12) "aaa111aaa222"
[3]=>
string(12) "aaa111aaa222"
}
だろ?なんでそれが3になると?
正規表現を誤解しているのか、count関数の挙動を誤解しているのか、さっぱり分からん。
0070nobodyさん2008/11/01(土) 20:23:04ID:???
まさか$matchと$match[0]の区別がつかないとか・・・
0071nobodyさん2008/11/03(月) 02:12:33ID:???
PHP5.3 (PHP6)の新機能についていけないです
無名関数とかラムダ関数とかクロージャとか静的遅延束縛とか、
理解できないです
そういったキーワードを検索して楽しそうに書いてたり、
愚痴ったりしてるブログを見ると、理解できない自分が寂しいです
情報系の大学に行った方がいいんでしょうか
独学は無理っぽいです
0072nobodyさん2008/11/03(月) 02:23:37ID:???
大学はそんなこと学ぶとこじゃないと思うがw
0073nobodyさん2008/11/03(月) 22:29:26ID:???
>>71
PHPは手っ取り早くWebアプリを開発するためのツールという側面が強いから、
そこらへんのことを学びたいなら他の言語で勉強した方がいいと思う。
PHPは最初は取っつきやすいけど、プログラミングの本質を学ぼうとするとすぐに壁に突き当たる。
最近の言語ではPythonが学習に向いていると思うけど、なにしろ日本語の情報が少ないしな。
0074nobodyさん2008/11/06(木) 10:30:09ID:???
>>42
PHP3は、んなだったね
■ このスレッドは過去ログ倉庫に格納されています