くだすれPHP(超初心者用)4
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/06/13(金) 20:32:36ID:???もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。
PHP使いが優しくコメントを返しますが、
お礼はPHPの布教と初心者の救済をお願いします。
PHP Home Page
http://www.php.net/
http://jp.php.net/
前スレ: くだすれPHP(超初心者用)3
http://pc11.2ch.net/test/read.cgi/php/1193295871/
適当に関連スレ(マルチはだめぽ)
【PHP】下らねぇ質問はここに書き込みやがれ 69
http://pc11.2ch.net/test/read.cgi/php/1211879073/
0261nobodyさん
2008/09/14(日) 12:14:00ID:???0262nobodyさん
2008/09/14(日) 13:35:42ID:???車輪の〜って言われるだろうが、利用するかはともかく仕組みを考えて実装することに意味がある
と、言いつつ愛用してるが・・・
0263nobodyさん
2008/09/14(日) 21:23:06ID:jIYlcJD1が理解できるようになったとき。
あとショッピングカートとかブログとかその辺
のアプリができたとき。
0264nobodyさん
2008/09/14(日) 22:46:57ID:B7I6GMpn観念的で曖昧な質問に答えてくださってありがとうございます。
ちょっと(いや、かなり)質問の仕方が悪かったかもしれません。
「コレを頑張ったら結果をより早く導出できるようになった」という体験を伺ったのです。
「頭打ち状態からブレイクスルーした」という体験はありませんでしょうか?
>>262さんのレスを参考に「フレームワーク 車輪の」でググってみました。
「車輪の再発明」ということですね。
自分でもそういうことをしてしまっている可能性があるので参考になりました。
ありがとうございます。
0265nobodyさん
2008/09/14(日) 22:54:51ID:???0266nobodyさん
2008/09/14(日) 23:41:45ID:???メール送信でPHPが標準でsendmailしか使わんことに気付いた時
大量に送信するにはオーバーヘッドがウザいからSMTP送信をしたいのに出来ない・・・
仕方なくpopenで実装って時にSMTPっつうプロトコルの仕組みを知ってて良かった〜ってことはあった
0267nobodyさん
2008/09/15(月) 00:02:57ID:???0268nobodyさん
2008/09/15(月) 00:03:46ID:???0269nobodyさん
2008/09/15(月) 22:32:29ID:???中の仕組みを知っていたほうが良いのは当然だな。
ある程度理解していればプロトコルの詳細はRFC斜め読みでなんとかなる。
0270nobodyさん
2008/09/17(水) 12:48:50ID:JTQWTwl/substrとか これなんだっけ ってなる
0271nobodyさん
2008/09/17(水) 12:52:42ID:???0272nobodyさん
2008/09/17(水) 12:57:46ID:???プログラミングの勉強となると紙のノートじゃなくPCに依存して勉強したくなるよね
でもメモソフトと紙のノートには雲泥の差の自由度があるから勉強のためのメモとしてはあまり利用出来ないよね
0273nobodyさん
2008/09/17(水) 12:59:19ID:???0274nobodyさん
2008/09/17(水) 16:13:37ID:???0275Noone
2008/09/17(水) 16:59:26ID:???0276nobodyさん
2008/09/18(木) 00:02:52ID:X0thX7wZ0277nobodyさん
2008/09/18(木) 07:48:56ID:eOfu22hGファイルのアップロードをしているんですが、php.iniやhttpd.confが直接いじれなくて
.htaccessに
php_value post_max_size 100M
php_value upload_max_filesize 100M
php_value memory_limit 100M
と書いてそれぞれの値を変更しています。
問題は、これらの値がページをリロードする度にサーバのデフォルト値である
post_max_size 32M
upload_max_filesize 32M
memory_limit 90M
になったり、
post_max_size 100M
upload_max_filesize 100M
memory_limit 100M
になったりすることです。
こういった現象を経験された方いらっしゃいませんか?
各値の確認は、
ini_get()関数で確認しています。
0278nobodyさん
2008/09/18(木) 08:58:15ID:???0279nobodyさん
2008/09/18(木) 09:48:54ID:eOfu22hGレンタルサーバが、リソースが不足している場合.htaccessが有効にならないような設定がされているということでしょうか?
0280nobodyさん
2008/09/18(木) 09:51:27ID:???プロセスが別なのにPARDIRのディレクティブが上書きされるなんて聞いたことがない
0281nobodyさん
2008/09/18(木) 10:42:43ID:???これの真ん中の||とissetの前の!はどういう意味?
0282nobodyさん
2008/09/18(木) 10:50:24ID:???! は反転を意味する。
issetは「初期化されていればtrue」で調べたいことは「定義されていない場合」だからfalseとなるところを!で反転して評価してるんだな
0284nobodyさん
2008/09/18(木) 10:54:39ID:???!は反転するということなんですね。
0285nobodyさん
2008/09/18(木) 12:44:53ID:???0286nobodyさん
2008/09/18(木) 13:27:00ID:???// 値がセットされてなければecho
echo '';
}
こういうことですよね?
0287nobodyさん
2008/09/18(木) 13:37:33ID:???0288nobodyさん
2008/09/18(木) 13:50:01ID:???> // 値がセットされてなければ
empty() と isset() の説明や比較例を見ると良いです。
?aaa=&bbb=hoge というクエリが飛んできた場合、isset($_GET['aaa'])==TRUE。
言われてるように急がずにゆっくり取り組めばいいと思うよ。
0289nobodyさん
2008/09/18(木) 13:51:32ID:???isset($_GET['aaa'])がTRUEだと言いたいんだろうがその説明の仕方はだめだw
0290nobodyさん
2008/09/18(木) 14:20:02ID:???言いたかったことはその通りなので、「isset($_GET['aaa']) は TRUE を返す」に訂正します。
0291nobodyさん
2008/09/18(木) 14:34:48ID:???0292nobodyさん
2008/09/18(木) 14:42:09ID:eOfu22hGレンタルサーバの会社に問い合わせたところ詳しくは教えてもらえませんでしたが
>>277で書いたような負荷がかかることはことはしないでくれとのことでした。
根本的な解決はできませんでしたが、こういった現象もあるってことで・・・
しかし、今度はどうやって高負荷時は.htaccessを無視するようなことができるのか
そっちに興味がわいてきました。
Apacheの設定にそういうことができるようなオプションがあるのかな?
0293nobodyさん
2008/09/18(木) 14:46:31ID:???0294nobodyさん
2008/09/18(木) 14:56:27ID:???基礎を勉強したいと思います
0295nobodyさん
2008/09/18(木) 15:14:50ID:???0296nobodyさん
2008/09/18(木) 15:15:16ID:???0298nobodyさん
2008/09/19(金) 03:16:00ID:???サーバー側が php4 → php5 にしますよ
と言ってきました。
バグってどれくらい出るものでしょうか。
移行された人いらっしゃいますか?
0299nobodyさん
2008/09/19(金) 05:25:52ID:???そんなんアプリによってまちまちとしか言えん
ていうか手元で移行検証くらいしようよ
0300nobodyさん
2008/09/21(日) 15:55:59ID:G8wZRX1Estrip_tags()を使用してコメントタグだけを残したい場合はどうしたらよいでしょうか?
$html = strip_tags($html, "<!---->");
という書き方だとコメントタグも削除されてしまいます。
0301nobodyさん
2008/09/21(日) 16:35:13ID:???プログラミング経験は無いわけではなくC,C++でマルコフ連鎖モンテカルロ法
の実験などを大学の研究でしたりもしているのですが、最近なんとなく
PHPのようなウェブアプリを簡単に作れる言語に興味があります。
が何を作ったらいいかわかりません。
自作で、実用レベルまで比較的に簡単に作れるもの、
というとどういうものがあるでしょうか。お願いいたします。
0302nobodyさん
2008/09/21(日) 16:36:57ID:???まぁ何にするにせよ実用性とは程遠いだろうが気にするな
0303nobodyさん
2008/09/21(日) 17:51:38ID:???何かのウェブアプリを作りたいからphp学びたいんじゃないの?
せめて作りたいものの目標くらい無いとモチベーション続かないと思うんだけど。
なんか目的と手段が逆になってるような気がする。
0306nobodyさん
2008/09/21(日) 18:30:48ID:???マニュアルに書いてあるぞ、無理ってな
strip_tagsの前後でHTMLコメントの置き換えて逃げるしかないだろうな
0307nobodyさん
2008/09/21(日) 18:31:56ID:???誤:strip_tagsの前後でHTMLコメントの置き換えて逃げるしかないだろうな
正:strip_tagsの前後でHTMLコメントを置き換えて逃げるしかないだろうな
0308nobodyさん
2008/09/21(日) 20:19:14ID:uUB1weY6.htmlファイルの中に
<?php
include('file.php?pass=123');
?>
としましたが、includeが実行されません
拡張子は常に.phpでなければいけないんでしょうか?前に試した出来たような気がしたんですが、、
また、上記のようなインクルードファイルに引数をつけた場合、
file.phpの中で$_GET['pass']としてを解釈することは出来るでしょうか?
どなたかご回答お願いします
0309nobodyさん
2008/09/21(日) 20:28:27ID:???0310nobodyさん
2008/09/21(日) 20:29:10ID:???俺の経験では出来ない。
file.phpの中に関数f_fileを書いて以下の様にすればいい。
<?php
include('file.php'); f_file('123');
?>
0311308
2008/09/21(日) 20:49:34ID:uUB1weY6ありがとうございました
phpは .htmlの拡張子のファイルでは動かないということでいいでしょうか?
また、二つ目の質問に関しては
http://okwave.jp/qa4336105.htmlという解決法を見つけました
>>310さんの答えと合わせて考えたいと思います
0313300
2008/09/21(日) 22:14:17ID:G8wZRX1Eありがとうございます。
自分の持ってるPHP辞典には記載されてなかったでわかりませんでした。
なんとも中途半端な仕様ですね。
0314nobodyさん
2008/09/21(日) 22:33:44ID:aDAFCUyFttp://jp.php.net/manual/ja/functions.arguments.php
> 注意: PHP 5以降、デフォルトで値はリファレンス渡しとなります。
の、主語というか目的語というか、ナニのデフォルトが参照渡しになるんでしょか。
function alter($str){
$str = $str . '!';
}
$nya = 'nya';
alter($nya);
echo $nya;
は PHP 5.2.0-8+etch9~bpo31+1 (cli) では $strを 変更せずに nya が表示されました。
0315nobodyさん
2008/09/21(日) 23:03:33ID:???原文読むといいかと。
http://jp.php.net/manual/en/functions.arguments.php
0316nobodyさん
2008/09/21(日) 23:22:56ID:???やってみれば分かるが&付けなくても参照元の値も変わるぜ
余談だが
PHP4では 「&$arg=null」なんてデフォルト引数が使えないんだが、PHP5から問題なく通る
呼び出し時に引数指定したかどうかでスイッチしてんだろうなぁ
0318nobodyさん
2008/09/22(月) 01:05:35ID:???変数$aに1が入ってる時だけ変数$bに入ってるIP以外からのアクセスがあった場合にifコマンド使って、
他の内容を表示するの。
0319nobodyさん
2008/09/22(月) 01:09:02ID:???0320318
2008/09/22(月) 01:10:00ID:???これ使っていけるかな・・・・・・?
0322318
2008/09/22(月) 02:51:53ID:???どうすればよいですか?
0323nobodyさん
2008/09/22(月) 03:00:08ID:???0324318
2008/09/22(月) 03:15:17ID:???<?php
$ip = $_SERVER['REMOTE_ADDR'];
$str = "$ip";
$len = strlen($str);
$handle = fopen('ip.txt','r');
$contents = fread( $handle, $len );
fclose( $handle );
echo $contents."<br />\n";
if($ip==$contents){
echo "成功";
}
else{
echo "失敗";
}
?>
ipアドレスの文字数分引っ張り出して比較することで回避できた。
0325nobodyさん
2008/09/22(月) 03:21:01ID:???0327318
2008/09/22(月) 03:27:42ID:???処理が終われば解除されるようなかんじで。
0328nobodyさん
2008/09/22(月) 03:39:53ID:???と
212.134.32.143
0330nobodyさん
2008/09/22(月) 12:43:54ID:???0331nobodyさん
2008/09/22(月) 15:10:26ID:EKIEGJ690332nobodyさん
2008/09/22(月) 15:12:32ID:???http://www.nintendo.co.jp/ds/amcj/
0333nobodyさん
2008/09/22(月) 15:19:02ID:EKIEGJ690334nobodyさん
2008/09/22(月) 16:42:16ID:???0335nobodyさん
2008/09/22(月) 16:44:51ID:???ショッピングカートの基本はセッションを上手く扱うことだと思う
具体的なカート作成のサイトはなくてもセッションに関する記事は多いから、そこから学べば良いかと
どうせ学習目的とかでしょ?
0336nobodyさん
2008/09/23(火) 01:10:46ID:KzC+qHTkありがとうございます! 助かりました!
0337nobodyさん
2008/09/23(火) 12:55:10ID:BK/ZFWc80338nobodyさん
2008/09/23(火) 12:59:43ID:???0340nobodyさん
2008/09/23(火) 13:08:38ID:???まず何が目的で特定IP以外からのアクセスを制限したいかが不透明
内容からするに何らかの処理をしている期間は別の接続者を拒否したいって意味のようだが
その処理ってのが何度もリクエストを受けて完了するもだとしたら
---
アクセスがある
↓
閲覧者IPのデータを確認する─(IP記録なし)→閲覧者IPを記録し結果表示
↓<(IP記録がある)
IP比較─(一致)→結果表示
└(不一致)→拒否
---
こんな感じでコード書けばいいだろ
記録IPをいつ削除するかは知らんけど、この処理書くどこで詰まってるの?
もし、一回のリクエストの結果表示までにすべて処理が終わってしまうようなものだったら
ファイルロックとかの方法でも調べれれ。IPを比較する意味ない
あとどうでもいいけど改行の削除は置換を使えよ
0341nobodyさん
2008/09/23(火) 13:10:56ID:???echo(">>331\n");
echo("このサイトを見れ\n");
echo("http://www.nintendo.co.jp/ds/amcj/");
?>
つまりこういうことだな
0342nobodyさん
2008/09/23(火) 14:16:43ID:???0343nobodyさん
2008/09/23(火) 14:20:41ID:???0344nobodyさん
2008/09/23(火) 18:25:40ID:???えーこと聞いた
0345nobodyさん
2008/09/23(火) 19:38:04ID:???複数のURLに対して並列に処理を行いたいんだけど
どういう風にやればいいですかね?
最悪参考になりそうなサイト教えてください。
0346nobodyさん
2008/09/23(火) 19:52:08ID:???0347nobodyさん
2008/09/23(火) 20:59:24ID:???ブロック?とはどういうことでしょうか?
並列処理に向いているfopenに代わる関数を
教えていただけるとありがたいです。
0348nobodyさん
2008/09/23(火) 21:01:16ID:???0349nobodyさん
2008/09/23(火) 21:05:07ID:???並列処理を行うにはどうすればよいでしょうか?
というかPHPでそんなことするなってことでしょうか?
0352nobodyさん
2008/09/23(火) 22:13:13ID:???とりあえずその方向でググったりしてなんとかしてみます
ありがとうございました
0353nobodyさん
2008/09/24(水) 23:43:55ID:???$b=9;
$c=3;
「bが一番大きいです。」
と表示させたいのですが、maxだと数値しか返ってこないし・・・
教えていただけると幸いです。
0354nobodyさん
2008/09/25(木) 00:11:02ID:???変数名を取得することは出来ないから値の管理方法を変えよう
出来ないなら諦めるしかないと思う
例: 連想配列
$var = array(
'a' => 1,
'b' => 9,
'c' => 3,
);
0355nobodyさん
2008/09/25(木) 00:19:45ID:???0356nobodyさん
2008/09/25(木) 00:20:07ID:???0357nobodyさん
2008/09/25(木) 05:09:05ID:???連想配列の場合、
$var = array(
'a' => 1,
'b' => 9,
'c' => 3,
'd' => 9,
);
この場合、どうなるんだろ?
0358nobodyさん
2008/09/25(木) 05:29:20ID:???$var = array('a'=>1, 'b'=>9, 'c'=>3, 'd'=>9);
$keys = array_keys($var, max($var));
var_dump($keys);
0360nobodyさん
2008/09/25(木) 06:21:43ID:???■ このスレッドは過去ログ倉庫に格納されています