【PHP】下らねぇ質問はここに書き込みやがれ 30
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2006/10/05(木) 01:38:25ID:y1WWhz/pまず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆質問する場合の注意
1. 自分のIDを表示させること。(メール欄に何も記述しないでください)
2. サーバーのOS、WebサーバーとPHPの種類やバージョン等を明記すること。
3. 己の行った操作、変更などを詳しく明記すること。
4. エラーメッセージはそのまま表記すること。「エラーが出ます」では絶対分かりません。
5. 質問者としても態度をわきまえること。
6. 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・質問者は必ずIDを表示させてください。(メール欄に何も記述しないでください。)
・2回目以降は最初に質問した際のレス番号を名前欄に入れてください。
(逆に回答者は質問者に対して>>(アンカー)をつけて答えてください。)
・解決しなくても回答をもらった場合はお礼を言う。
(荒らし、煽りは除く。逆に煽られたときも、無闇に反論せずスルーすべし)
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークはそれぞれの該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
・オブジェクト指向については良スレがないから本を買え。理解できないならムリに使うな。
・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
0522nobodyさん
2006/10/16(月) 19:39:11ID:4Z1hn7GPごめん、EOFなのかは分からないんだけど
[""]=> NULL
になっている。
インデックスが "" で、要素が NULL …。
array_pop( $array ) でvar_dumpすると、
「NULL」が返ってきた。
> 配列 array は、要素一つ分短くなります。
> array が空(または、配列でない)の場合、 NULL が返されます。
配列がおかしいのかな……?
0524nobodyさん
2006/10/16(月) 19:55:10ID:???arrayが空か配列でない場合、戻り値にNULLが返る。
arrayの最終要素の値がNULLだった場合も当然だがNULLが返る。
0525nobodyさん
2006/10/16(月) 19:57:45ID:4Z1hn7GParrayが空ってのは、引数にある変数の型がArrayでは無い場合のことかと思っていた。
じゃあ、こういう場合はどうしたらよいんだろう……。
0527nobodyさん
2006/10/16(月) 20:06:03ID:4Z1hn7GPえっ? 配列が返ってくるのを期待しているのに、NULLが返ってきたら
嫌だと思うでしょう。
とりあえず array_slice( $info, 0, -1 ) でイケました!
0528nobodyさん
2006/10/16(月) 20:12:04ID:cRZeyQ/b大量のincludファイルがあったときに困っています。
includ pathをgrepしたりしていると時間がかかってしょうがないですし・・。
他人のソースを除いてみて、ユーザ関数がどの外部ファイルに書かれているかわからない場合。
どのような方法が一般的なのでしょうか。
環境としてはサーバにあるファイルを直接viでいじっているような環境なので、eclipse等の便利なツールは使えません。
0530nobodyさん
2006/10/16(月) 20:18:31ID:???unset($array['']);のがよくね?
つーか521の言うように、EOFまわりのロジック見直したほうがいいと思うけど。
>>528
なんでgrepで時間がかかるの?
0531nobodyさん
2006/10/16(月) 20:24:16ID:cRZeyQ/bgrepが遅いのはハードのせいでしょうか、大量にありますし。
あとはできるだけ鯖に負荷をかけたくないのです。
grepが一般的なのでしょうか?
0532nobodyさん
2006/10/16(月) 20:32:18ID:???エディタでもなんでも使って見りゃいいし
ファイル名でだいたい想像つくだろ
0533名無しさん@お腹いっぱい。
2006/10/16(月) 22:18:14ID:TSmbOY92インデックス作成コマンドをsystem関数で入力するようにしたいんですけど
うまくいきません。
コマンドプロンプトでインデックスを作るとき
>mknmz -U -O C:\namazu\var\namazu\index "C:\Program Files\Apache Group
\Apache2\htdocs\dir\"
でよいのですが、
system関数では
system("mknmz -U -O C:\namazu\var\namazu\index C:\Program Files\
Apache Group\Apache2\htdocs\dir\");
とすると、mknmzまでしかコマンドを認識していないようなのです。
どなたか正しい指定の仕方をご教示願えませんか?
0535名無しさん@お腹いっぱい。
2006/10/16(月) 22:44:40ID:TSmbOY92"/[Cc]\\|/Program Files/Apache Group/Apache2/htdocs/dir/"
としてみたのですが、同じ結果になってしまいました。。。
0536nobodyさん
2006/10/16(月) 22:55:31ID:???> system("mknmz -U -O C:\namazu\var\namazu\index C:\Program Files\
> Apache Group\Apache2\htdocs\dir\");
> とすると
WindowsのPHPはよくしらんのだけど、
これだと「C:\Program」で切れちゃうんでは?
$cmd = 'mknmz -U -O C:\namazu\var\namazu\index "C:\Program Files\
Apache Group\Apache2\htdocs\dir\"';
system($cmd);
としてもだめなの?
0537nobodyさん
2006/10/16(月) 23:04:13ID:???array_popの戻り値は最初から配列じゃないだろ。
やりたいことはarrayの最後の要素を削りたいって話であって
削った内容がなんであるかなんて気にする必要ないじゃん。
>>529
おまえも分かってない。
0538名無しさん@お腹いっぱい。
2006/10/16(月) 23:19:05ID:TSmbOY92ご指摘の通りでした。ありがとうございました。
0539512
2006/10/17(火) 01:52:14ID:???インストールパスに対するヒントをくださってありがとうございます。
結果的には、XAMPPのインストーラー版をダウンロードしなおし、
デフォルトのパスでインストールしたところ、うまくPEARが動くようになりました。
0540nobodyさん
2006/10/17(火) 02:52:05ID:???他の方が書いた、よく使うクラスやメソッドという認識であってますか?
PHPのフレームワークを使ってみようと思うのですが、
誰でも簡単に使えるものなんでしょうか?
Mapleというものをダウンロードして使ってみよウと思ったのですが、
中にPHPのファイルがたくさんあって、どうしたらいいのかわからなくて・・・
あとPEARはライブラリなんでしょうか?
0541nobodyさん
2006/10/17(火) 05:02:33ID:???SQLインジェクション攻撃の仕方とか、XSS攻撃の仕方とか、
詳しく解説されてるサイトなんてないでしょうか?
もちろん悪用はせず、自鯖で自分が攻撃者になってチェックをするつもりです。
0542nobodyさん
2006/10/17(火) 06:58:24ID:lz+2vZ2Tサイトも書籍も大量にあります。
0543nobodyさん
2006/10/17(火) 07:03:55ID:???とりあえず以下のページは全て読んで理解しとけ。
http://www.asahi-net.or.jp/~wv7y-kmr/memo/php_security.html
0544541
2006/10/17(火) 07:20:30ID:???これは素晴らしいサイトを紹介して下さりありがとうございます。
大変参考になります。
これから早速熟読してまいります。
0545nobodyさん
2006/10/17(火) 08:21:00ID:???こちらへ。
【PHP】フレームワークについて語るスレ5【総合】
http://pc8.2ch.net/test/read.cgi/php/1159579507/
0546nobodyさん
2006/10/17(火) 10:21:18ID:???何か良いpearライブラリとかないでしょうか?
逆(要素からヘッダー作成)なら見つけたんですが、
求めるもの(メールファイルから各種要素、From:など取得)
が見つかりません。
自作でやってるんですが、
HTMLメールの処理とか添付ファイルがついてる場合の処理とかが
非常にしんどいです。
0548nobodyさん
2006/10/17(火) 11:33:27ID:G6d4HSq5open_basedir Race Condition Vulnerability
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-5178
これに対するパッチって{公式|非公式}に出てますでしょうか?
0549nobodyさん
2006/10/17(火) 14:09:36ID:???0551nobodyさん
2006/10/17(火) 14:40:05ID:???if文で単調に書く以外にシンプルでよい方法はないでしょうか?
if($a == "abc" || $b == "def" || $c="ghi"){・・・}
より見やすい書き方ないでしょうか。
上ならまだいいんですが、
「ある複数の値」の数が増えてしまうとかなりだるいことになります
0552nobodyさん
2006/10/17(火) 14:45:13ID:???0553nobodyさん
2006/10/17(火) 14:49:33ID:???0554nobodyさん
2006/10/17(火) 15:51:36ID:lz+2vZ2T配列使え
つforeach
つin_array
つpreg_grep
好きなので。
0555nobodyさん
2006/10/17(火) 16:22:32ID:???switch()を使って分岐をしようと思ったんですが、
submit ボタンの値って、ボタンの表示名になってしまいますよね。
あれ回避方法ないんでしょうか?
submitボタンの値ではなく、
submitボタンの名前で分岐をする必要が出て困ってます。
0556nobodyさん
2006/10/17(火) 16:44:20ID:???submitの値は使わない
がFA
0557nobodyさん
2006/10/17(火) 16:51:11ID:???0558nobodyさん
2006/10/17(火) 17:06:57ID:???押したボタン毎に複数の処理させたいときはどうすんの?
0559nobodyさん
2006/10/17(火) 17:10:39ID:???0560559
2006/10/17(火) 17:11:22ID:???0563nobodyさん
2006/10/17(火) 17:14:28ID:???submit値が無かったら無視かデフォルト処理、でいいじゃん。
>>555
何が困るのか分からない。nameの有無で判定すればよろしい。
0564nobodyさん
2006/10/17(火) 17:22:22ID:lz+2vZ2T0565nobodyさん
2006/10/17(火) 18:12:30ID:???0566nobodyさん
2006/10/17(火) 18:56:29ID:Q9ZQ0FiRというSQLがPHPの中にあって分からないんですが。
& はどんな意味があるんでしょうか?
phpでなかったらごめんなさい、sqlの構文かな・・
0567名無しさん@お腹いっぱい。
2006/10/17(火) 19:04:11ID:kJ5BDveO533の問題は解決したのですが、今度は
PHPで
$command = 'mknmz -U -O C:\namazu\var\namazu\index "C:\Program Files
\Apache Group\Apache2\htdocs\インデックス"';
system($command);
としたときはうまくいくのですが、
$index ="インデックス";
$command = 'mknmz -U -O C:\namazu\var\namazu\index "C:\Program Files
\Apache Group\Apache2\htdocs\$index"'; または\\index,\${index}
system($command);
などとすると、
"C:\Program Files\・・・\htdocs\$index"
という具合に変数のままになってしまいます。
どうか正しい指定の仕方を教えていただけないでしょうか?
0569nobodyさん
2006/10/17(火) 19:08:55ID:???$command = 'mknmz -U -O C:\namazu\var\namazu\index "C:\Program Files
\Apache Group\Apache2\htdocs\'.$index.'"';
0570nobodyさん
2006/10/17(火) 19:10:01ID:???http://www.php.net/manual/ja/language.types.string.php#language.types.string.parsing
$cmd = sprintf('mknmz -U -O C:\namazu\var\namazu\index "C:\Program Files
\Apache Group\Apache2\htdocs\%s"', $index);
とか
$command = 'mknmz -U -O C:\namazu\var\namazu\index "C:\Program Files
\Apache Group\Apache2\htdocs\'.$index.'"';
とかすればいいんじゃないかな
0571nobodyさん
2006/10/17(火) 19:17:07ID:???$command = "mknmz -U -O C:\namazu\var\namazu\index \"C:\Program Files
\Apache Group\Apache2\htdocs\$index\"";
とする手もあり。"〜" で括って途中の " は \" でエスケープ。
0572571
2006/10/17(火) 19:18:58ID:???$command = "mknmz -U -O C:\\namazu\\var\\namazu\\index \"C:\Program Files
\\Apache Group\\Apache2\\htdocs\\$index\"";
って途中の \ も全部エスケープしないといかんかも。
0573nobodyさん
2006/10/17(火) 19:20:52ID:???0574nobodyさん
2006/10/17(火) 19:29:44ID:CZNsLBp9何かいいクラスライブラリはないですかね。
phpocrを試してみたんですが学習型の様で…
0576名無しさん@お腹いっぱい。
2006/10/17(火) 20:36:50ID:kJ5BDveOの1つ目の方法以外はなぜかコマンドが通りませんでした。
それと、
$cmd = sprintf('mknmz -U -O C:\namazu\var\namazu\index "C:\Program Files
\Apache Group\Apache2\htdocs\%s"', $index);
に続けて、変数に日本語を格納して、$indexの下にもう1階層ディレクトリを
指定したいのですが(\htdocs\$index\$index2)、どのようにすれば良いのでしょうか?
0577nobodyさん
2006/10/17(火) 20:48:10ID:???\Apache Group\Apache2\htdocs\%s\%s"', $index, $index2);
こうしたいっていう意味かな?
0578nobodyさん
2006/10/17(火) 21:21:42ID:???せっかくヒントや関数を教えてもらったんだから
1度はその内容をマニュアルで確認してみようよ。
言われたとおりにしか書けないなんてちょっと最低だよ?
0580nobodyさん
2006/10/17(火) 21:27:46ID:rN63+8fU自習して、悩みに悩んだ上で聞けって話だ。
0581名無しさん@お腹いっぱい。
2006/10/17(火) 21:35:58ID:kJ5BDveOったので、ついつい見直しを怠ったり、すぐに質問をするといったことを
してしまいました。もうしわけないです。
0583nobodyさん
2006/10/17(火) 23:24:34ID:???0584nobodyさん
2006/10/17(火) 23:30:18ID:???自習して悩みに悩んだ上で聞くような人・・
それは、質問文書くためにあちこち検索して調べてたら自己解決しちゃうような人ですね。
0585名無しさん@お腹いっぱい。
2006/10/17(火) 23:45:01ID:kJ5BDveO進まないので焦って軽薄なことをしましたが、そんな逆ギレくん
ではありません。
0586nobodyさん
2006/10/18(水) 01:48:15ID:???入力された値が正しいURLじゃなかったらエラーを出したいのですがどうしたらいいでしょうか?
ちなみに
preg_match('/^(https?|ftp)(:\/\/[-_.!~*\'()a-zA-Z0-9;\/?:\@&=+\$,%#]+)$/', $url)
これだとうまくいきませんでした。
よろしくお願いします。
0588nobodyさん
2006/10/18(水) 02:55:36ID:???RFCに定められたとおりに全部を完全にやるのはかなり大変。
http://www.din.or.jp/~ohzaki/perl.htm#httpURL
http://www.din.or.jp/~ohzaki/perl.htm#ftpURL
ある程度妥協が必要。
0589nobodyさん
2006/10/18(水) 03:12:59ID:???>>586の正規表現はそのページにある「実用版」の内容だよ。
> さて,ここまで長々と書いてきましたが,正確に正規表現を書くことをあきらめて,
> もっと簡単でいいやという人のための http URL の正規表現が以下になります.
> s?https?://[-_.!~*'()a-zA-Z0-9;/?:@&=+$,%#]+
これ↑
0590nobodyさん
2006/10/18(水) 12:52:03ID:kRDgnrctMysqlを使うために設定するextensionにdllが載っておりませんでした。
このバージョンでは使えないのでしょうか?
また使う方法があればご教授ねがいます。
0593nobodyさん
2006/10/18(水) 15:20:36ID:???マジで? (**[**()**]**)なのに?
俺これでURL自動リンク作って普通に動いてるけど…
/s?https?:\/\/[-_.!~*'()a-zA-Z0-9;\/?:\@&=+\$,%#]+/
0594nobodyさん
2006/10/18(水) 15:27:56ID:???. ィ
.._ .......、._ _ /:/l!
:~""''.>゙' "~ ,、、''‐'、| _
゙、'、::::::ノ:::::::_,.-=. _〜:、 /_.}'':,
``、/:::::::::__....,._ `゙'Y' _.ェ-、....._ /_゙''i゙ノ、ノ
,.--l‐''"~..-_'.x-='"゙ー 、`'-、 ,:' ノ゙ノブ
" .!-'",/ `'-‐'') /\ `/ でノ-〈
.-''~ >'゙:: ‐'"゙./ ヽ.,' ~ /
//::::: ', / ,:'゙
0595nobodyさん
2006/10/18(水) 15:34:10ID:???その処理の中ではstdinを読んで
メールの送信元など、メールの内容を把握しようと思っています。
・送信元、送信先の取得
・メールのタイトルや本文中に”ほげほげ”の文字が含まれているかチェック
等をやりたいのですが、どのように記述すればよろしいでしょうか?
よろしくお願いします。
0597nobodyさん
2006/10/18(水) 15:56:47ID:???「処理をしています」何の処理をしているんでつか?
どこまで出来ていて、何が判らないのでつか?
>・送信元、送信先の取得
>・メールのタイトルや本文中に”ほげほげ”の文字が含まれているかチェック
ソレだけだったら、どちらも簡単な正規表現で可能でつ。
0599nobodyさん
2006/10/18(水) 17:30:55ID:???0600nobodyさん
2006/10/18(水) 19:06:45ID:kRDgnrcthtmlファイルも読み込んで問題ありますでしょうか?
0602600
2006/10/18(水) 19:13:16ID:kRDgnrct0603nobodyさん
2006/10/18(水) 19:30:48ID:kRDgnrct入力するとアクセスされてしまいます。
htaccess以外にこの行為を制限したいのですが何かヒントをいただけませんでしょうか?
ためしてみたのがPOSTとGET、リファラチェックでやってみましたが、
requireが読み込みませんでした。
0604nobodyさん
2006/10/18(水) 19:43:16ID:???0606nobodyさん
2006/10/18(水) 20:03:09ID:V2QN5PpqPHPを学べるPC学校教えて下さい(神奈川県内、できれば横浜市内)
0607nobodyさん
2006/10/18(水) 20:07:49ID:???自分と名前が違ったら拒否するとかいうのもありかね?
0609nobodyさん
2006/10/18(水) 20:19:30ID:GXIHNsCX画像をリサイズする際にJPEG, PNGは正常にリサイズ出来ますが
アニメGIFのリサイズはどの様に行えばよいでしょうか?
色々なクラスライブラリを使用してみましたが
アニメGIFをリサイズするとリサイズはされますが静止画のGIF画像
に変換されてしまいます。
0611606
2006/10/18(水) 20:56:19ID:V2QN5Ppqでも、授業料たけーーーーーーーーーーーーーー
アルバイトして貯めないと
PHP学ぶのに20万〜40万ぐらいだった、どこも
0612nobodyさん
2006/10/18(水) 21:14:48ID:???ずぶの素人さんでも良い本が1冊2冊あればそれで何とかなると思うが。
0613nobodyさん
2006/10/18(水) 21:32:58ID:???基礎がないとphp-usersの某氏のようになる
0614606
2006/10/18(水) 21:36:20ID:V2QN5Ppqまじかよ
ホームページ作成数30個ぐらい
ブログ作成数5個ぐらい
動画編集、画像編集、めちゃくちゃ経験あり
2ちゃん暦プロ並ちょい下
これぐらいのPC暦だが、自宅サーバ、CGI、PHP、さっぱりわからない
0615nobodyさん
2006/10/18(水) 21:39:12ID:???0616nobodyさん
2006/10/18(水) 21:43:16ID:???どんなふうに動作するのかが予想できない。
だから設計するときも、まるで数学の方程式を解いているみたいだ。
まあ趣味(自分のウェブサイトで使う)でやっている程度だし、コーディングが気持悪くても
人にソースはみせないし、動けばいいかな、と。
0617606
2006/10/18(水) 22:11:33ID:V2QN5Ppq今、話題かどうかわからないけど、俺の中では超話題の
ブログのRSS配信、いろいろ探してみたり検索してみたけど
ジャバスプリクト?っていうのか、あれで他人のブログのRSSを取得して
自分のブログで配信するのは、できるんだが、1つ欠点がある
続く・・・
0618nobodyさん
2006/10/18(水) 22:15:42ID:???0619606
2006/10/18(水) 22:15:58ID:V2QN5Ppqジャバスプリクトでやると、検索エンジンから検索されない
例)他人のブログが「ゆうこりんのスカトロプレイ激写」
という記事を更新したとする
俺のブログでも、どこどこのサイトが何時何分に「ゆうこりんのスカトロプレイ激写」
という記事が投稿されましたと表示される
のだが・・・・・・・・・・・・・・・・
それが、検索エンジンでは引っかからないんだ
続く・・・・・・・・・・・
0620606
2006/10/18(水) 22:20:02ID:V2QN5Ppqそこで俺は調べまくった、、、、、何日もかけてというか、1日で調べた
ジャバスプリクトだと、検索されないが、、、
PHPだと検索せれるということなんだ、
例)他人のブログが「ゆうこりんのスカトロプレイ激写」
という記事を更新したとする
俺のブログでも、どこどこのサイトが何時何分に「ゆうこりんのスカトロプレイ激写」
という記事が投稿されましたと表示される
ここまでは同じだが、ここからがすごい
ヤフーやグーグルで「ゆうこりんのスカトロプレイ激写」というキーワードが
俺のブログから検索されるのだ
なので、俺はRSS配信のPHP版の無料ソフトやら、有料ソフトを探しまくった
続く・・・・
0621nobodyさん
2006/10/18(水) 22:20:15ID:???■ このスレッドは過去ログ倉庫に格納されています