PHP上級者が集まるスレ
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2007/01/14(日) 16:53:46ID:???我こそはPHPプロフェッショナルだという方の書き込みをお待ちしております。
0002nobodyさん
2007/01/14(日) 17:35:42ID:???だからこのスレッドは私のものだ……。
お前たちはここにくるべきではないのだ。
ところで、私は誰ですか?
0003nobodyさん
2007/01/14(日) 18:19:36ID:???0006nobodyさん
2007/01/15(月) 01:19:02ID:???{
00073
2007/01/15(月) 02:34:36ID:???メールサーバはxmailです。導入する前はWindows付属のSMTP使ってました。popも使いたいのでメールサーバとしてxmailを選択したのですがphp.iniのどこになんて記述したらいいのかわからなくて立ち往生してます。
0008nobodyさん
2007/01/15(月) 03:00:36ID:???糸冬 了
0009nobodyさん
2007/01/15(月) 10:22:41ID:???0010nobodyさん
2007/01/15(月) 19:11:07ID:???例)
・PHP使用歴10年以上
・PECLを自作できる
・PHPを使って月収100万円以上
0011nobodyさん
2007/01/15(月) 19:25:12ID:???0012nobodyさん
2007/01/15(月) 20:02:48ID:???1回の受験は3150円くらいがいいのではないでしょうか?
http://www.zend.co.jp/certification/
PHP開発技術者のスキル証明書
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:???人月80万の開発なんて普通じゃね?
0017nobodyさん
2007/01/19(金) 02:52:59ID:ooNNw2caPOSTのほうがマシとかあるの?
0018nobodyさん
2007/01/19(金) 03:32:58ID:/UQbmip1受け取りに対策しとけば問題ないし、対策なしじゃどっちもアウト。
ブックマークを考慮するならGETのが良いし。
以上上級者スレの非常に高度なFAQでした。
0019nobodyさん
2007/01/19(金) 07:41:27ID:???0021nobodyさん
2007/01/20(土) 14:31:19ID:c+1RvCEz何回計ってもstr_replaceの方が倍以上速い
0023nobodyさん
2007/01/25(木) 12:45:50ID:HfWXyheO|
|----[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:???0027nobodyさん
2007/01/25(木) 20:22:37ID:???0030nobodyさん
2007/01/25(木) 23:18:33ID:???0031nobodyさん
2007/01/25(木) 23:33:46ID:???0034nobodyさん
2007/01/28(日) 08:38:55ID:???0036nobodyさん
2007/02/24(土) 20:36:33ID:???2、その後、ログインする機能をつけたいと思っています
1でフォームを通じてデータベースに登録するところまではできました
2ではどうしたらいいのでしょうか
ログインするページで、データベースから登録された全てのIDパスを読んで、フォームに入れられた情報が合致するかどうかをチェックしているのでしょうか?
0039nobodyさん
2007/04/16(月) 13:23:17ID:FLqOV9yP0040nobodyさん
2008/09/08(月) 06:58:47ID:YApPrX0L0042nobodyさん
2008/09/10(水) 18:48:33ID:???0043nobodyさん
2008/09/13(土) 16:19:57ID:???プログラミング全般に関しては上級者ではないということですか?
0044nobodyさん
2008/09/13(土) 17:56:13ID:???PHPで
print "Hello!World";
はすぐ書けるくせにPerlになると書けない奴。
0045nobodyさん
2008/09/13(土) 18:04:20ID:???0046nobodyさん
2008/10/04(土) 11:48:16ID:???0047nobodyさん
2008/10/05(日) 22:54:10ID:???0048nobodyさん
2008/10/06(月) 20:49:12ID:???結局Hello Worldが書ければPHP上級者になるのか。
0049nobodyさん
2008/10/08(水) 12:20:09ID:???0050nobodyさん
2008/10/09(木) 18:07:47ID:???文字列を50音順で並び替えたいのですが、
どうしたらよいでしょうか?
やはり一文字ずつ配列で確認した方がいいですか?
0053nobodyさん
2008/10/10(金) 09:40:02ID:???0054nobodyさん
2008/10/31(金) 19:40:09ID:Eo+dqOlVcount()に渡したときのカウント数について教えて頂けないでしょうか。
カウント数がどうにも解せないのです。
↓これを実行すると、なぜか結果として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:???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:/2wL5ARzpreg_match_all()の結果と同じ配列を作るには
$match[0]=array("全体1","全体2","全体3");
$match[1]=array("部分1","部分2","部分3");
$match[2]=array("部分A","部分B","部分C");
と、しないといけなかったんですね・・・。
ありがとうございます。なぞが解けました。
多元配列を正しく理解していませんでした。
006260
2008/11/01(土) 17:51:55ID:/2wL5ARzすいません。どういう意味なのでしょうか?
0063nobodyさん
2008/11/01(土) 18:09:48ID:???61じゃないけど>>60のほうが意味わからない。
何を想定してどんなふうに想定外だったのかということがはっきりしないな。
006460
2008/11/01(土) 18:17:53ID:/2wL5ARz要するに、preg_match_all()でマッチしたときに返される多元配列と
同じ形の多元配列を自分で作るにはどうしたらいいのか?
ということがわからなかったです。
0065nobodyさん
2008/11/01(土) 18:22:04ID:???0066nobodyさん
2008/11/01(土) 18:44:31ID:???array(4) {
[0]=>
string(12) "aaa111aaa222"
[1]=>
string(12) "aaa111aaa222"
[2]=>
string(12) "aaa111aaa222"
[3]=>
string(12) "aaa111aaa222"
}
のcountは4になって当然。
なのに3になると思ってたのはなぜ?
要点だけ言われても余計分からないから全部言ってくれ。
いや解決したんならもういいんだけど、単なる雑談として。
006760
2008/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>';
006860
2008/11/01(土) 19:37:04ID:/2wL5ARzたびたびすいません。
まだ解決していませんでした。
�@は4が出力されます。
�Aは3が出力されます。
�Bは3が出力されます。
私は�@�A�Bはすべて、3が出力されるのが正しいと思っていました。
なぜなら$match[0]に入っている配列要素は3つなので。
>>65さん
�Bのケースと同じでしょうか?
これだと�@と同じ結果にはなりませんでした。
申し訳ありませんが、もう少し具体的にお願いできないでしょうか?
0069nobodyさん
2008/11/01(土) 20:19:34ID:???いや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:???0071nobodyさん
2008/11/03(月) 02:12:33ID:???無名関数とかラムダ関数とかクロージャとか静的遅延束縛とか、
理解できないです
そういったキーワードを検索して楽しそうに書いてたり、
愚痴ったりしてるブログを見ると、理解できない自分が寂しいです
情報系の大学に行った方がいいんでしょうか
独学は無理っぽいです
0072nobodyさん
2008/11/03(月) 02:23:37ID:???0073nobodyさん
2008/11/03(月) 22:29:26ID:???PHPは手っ取り早くWebアプリを開発するためのツールという側面が強いから、
そこらへんのことを学びたいなら他の言語で勉強した方がいいと思う。
PHPは最初は取っつきやすいけど、プログラミングの本質を学ぼうとするとすぐに壁に突き当たる。
最近の言語ではPythonが学習に向いていると思うけど、なにしろ日本語の情報が少ないしな。
0075nobodyさん
2008/11/07(金) 20:58:40ID:???Eclipse+phppluginは微妙に使いづらそうな印象を受けるし
sjisじゃないと文字化けするとか不穏な情報もある(古いが)
phpエディタはよさそうな印象だが使ってはいない
経験者情報plz
0076nobodyさん
2008/11/07(金) 21:00:43ID:???0077nobodyさん
2008/11/07(金) 21:41:19ID:???0078nobodyさん
2008/11/08(土) 00:26:17ID:???0079nobodyさん
2008/12/14(日) 00:39:45ID:???生産性という面で言うとやはりASP.netの方が高いのでしょうか?
0080nobodyさん
2008/12/14(日) 01:12:48ID:???0081nobodyさん
2008/12/14(日) 02:15:12ID:???0082nobodyさん
2008/12/14(日) 09:59:12ID:???あんた方本気で言ってるの?
ASP.netだと画面のデザインなんてマウスのドラッグで簡単に出来るよ。
であとはサーバ側の処理を記述するだけで完了する。
どう考えてもASP.netの方が生産性が高い、としか思えないのですが。
もっともASP.netの場合にはライセンス料とかの兼ね合いもあって
同じスペックのレンタルサーバを借りたとしても高いけどね。
0083nobodyさん
2008/12/14(日) 11:54:39ID:???0084nobodyさん
2008/12/14(日) 13:25:18ID:vrT8sAojformからアップロードしたzipファイルを解凍するスクリプト書いてるんですが、
解凍する前にzipファイルの破損をチェックするのってどうやったらできますか?
0085nobodyさん
2008/12/14(日) 14:07:31ID:???0087nobodyさん
2008/12/14(日) 14:32:36ID:???一概にいえないだろ。
PHPでもView部分はWebオーサリングソフト使ってテンプレートエンジンかませば同様に
GUIで画面のデザインできるし、だいたいView部分だけを根拠に「どう考えても」は飛躍しすぎ。
0089nobodyさん
2008/12/25(木) 06:13:30ID:???(PHP 5.2.3 + PostgreSQL 8.3.1です)
(1)書き込み(insert)時は、bindParamの第3引数にPARAM_LOBを指定して
正常に書き込める。
ex. $sth->bindParam(":data", $data, PDO::PARAM_LOB);
(2)読み出し(select)時は、bindColumnの第3引数にPARAM_LOBを指定すると
バイナリデータの読み出しが正常にできない(サイズが異なる)
ex. $sth->bindColumn(":data", $data, PDO::PARAM_LOB);
(2)でPDO::PARAM_LOBの代わりにPDO::PARAM_STRを指定すると正しく読み出せます。
これはPDOの不具合なんでしょうか?
それとも、これが仕様なのでしょうか?
0091nobodyさん
2009/01/08(木) 05:23:45ID:???PEAR::HTTP_Requestでは未サポートであることがわかりました。
PHPからwgetを起動する方法も考えましたが、シンプルな方法とは
いえないので、PHPだけで実現したいです。
良い方法をご存知の方、教えてください。
0092nobodyさん
2009/03/03(火) 01:30:53ID:hdsn1ZlDちょっと遅いレスだけどflags引数使え
PREG_PATTERN_ORDER
$matches[0] はパターン全体にマッチした文字列の配列、
$matches[1] は第 1 のキャプチャ用サブパターンにマッチした文字列の配列、
といった順番となります。
$match=array(
array('aaa111aaa222','aaa111aaa222','aaa111aaa222','aaa111aaa222',),
array('aaa111','aaa111','aaa111','aaa111',),
array('aaa222','aaa222','aaa222','aaa222',),
);
PREG_SET_ORDER
$matches[0]は 1 回目のマッチングでキャプチャした値の配列、
$matches[1]は 2 回目のマッチングでキャプチャした値の配列、
といった順序となります。
$match=array(
array('aaa111aaa222','aaa111','aaa222'),
array('aaa111aaa222','aaa111','aaa222'),
array('aaa111aaa222','aaa111','aaa222'),
array('aaa111aaa222','aaa111','aaa222'),
);
どっちかっていうとSET_ORDERの方が○行目の\1,\2みたいな感じで俺は好きだ
0093nobodyさん
2009/03/28(土) 02:06:29ID:???PHPのデバッグ実行を行おうとしているのですが、PHPスクリプト内に設定した
ブレークポイントで止りません。
一体どうすればブレークポイントを止める事が出来ますか?
【ブレークポイント上のエラー】
・ブレークポイントは、現在の設定ではヒットしません。
Unbound break point
【IEの設定】
次のチェックを外しています。
・スクリプトのデバッグを使用しない(Internet Explorer)
・スクリプトのデバッグを使用しない(その他)
【php.iniの設定】
[DBG]
debugger.enabled = true
debugger.profiler_enabled = true
debugger.JIT_host = 127.0.0.1
debugger.JIT_port = 7869
debugger.enable_session_cookie = true
extension=php_dbg.dll
;;;;;;;;;;;;;;;;;;;
; Module Settings ;
;;;;;;;;;;;;;;;;;;;
0095nobodyさん
2009/06/17(水) 22:51:20ID:???0096nobodyさん
2009/11/30(月) 18:40:16ID:???0097nobodyさん
2009/12/01(火) 22:13:32ID:???0098nobodyさん
2010/01/01(金) 22:37:35ID:???0099nobodyさん
2010/01/02(土) 00:26:34ID:???0100nobodyさん
2010/01/04(月) 03:31:33ID:???■ このスレッドは過去ログ倉庫に格納されています