【PHP】下らねぇ質問はID出して書き込みやがれ 115
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
2012/01/20(金) 05:43:23.62ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 114
http://kohada.2ch.net/test/read.cgi/php/1325437405/
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0002nobodyさん
2012/01/20(金) 05:43:58.75ID:???【PHP】下らねぇ質問はID出して書き込みやがれ 113
http://kohada.2ch.net/test/read.cgi/php/1322564127/
【PHP】下らねぇ質問はID出して書き込みやがれ 112
http://hibari.2ch.net/test/read.cgi/php/1320005469/
【PHP】下らねぇ質問はID出して書き込みやがれ 111
http://hibari.2ch.net/test/read.cgi/php/1317232566/
【PHP】下らねぇ質問はID出して書き込みやがれ 110
http://hibari.2ch.net/test/read.cgi/php/1314692611/
【PHP】下らねぇ質問はID出して書き込みやがれ 109
http://hibari.2ch.net/test/read.cgi/php/1311803617/
【PHP】下らねぇ質問はID出して書き込みやがれ 108
http://hibari.2ch.net/test/read.cgi/php/1309599473/
【PHP】下らねぇ質問はID出して書き込みやがれ 107
http://hibari.2ch.net/test/read.cgi/php/1307228162/
【PHP】下らねぇ質問はID出して書き込みやがれ 106
http://hibari.2ch.net/test/read.cgi/php/1304064660/
【PHP】下らねぇ質問はID出して書き込みやがれ 105
http://hibari.2ch.net/test/read.cgi/php/1300302034/
【PHP】下らねぇ質問はID出して書き込みやがれ 104
http://hibari.2ch.net/test/read.cgi/php/1297669559/
【PHP】下らねぇ質問はID出して書き込みやがれ 103
http://hibari.2ch.net/test/read.cgi/php/1295956018/
0003nobodyさん
2012/01/20(金) 05:44:10.97ID:???■本家マニュアル http://www.php.net/manual/ja/
■日本PHPユーザ会 http://www.php.gr.jp/
■PEARマニュアル http://pear.php.net/manual/ja/
■メーリングリスト http://ns1.php.gr.jp/mailman/listinfo/
■ZFマニュアル http://framework.zend.com/manual/ja/
■Smartyマニュアル http://www.smarty.net/manual/ja/
(以下英語)
■Zend本家 http://www.zend.com/
■Zend Framework http://framework.zend.com/
■php | architect http://www.phparch.com/
■Smarty http://www.smarty.net
■Smartyマニュアル http://smarty.php.net/manual/en/
■PECL本家(英語) http://pecl.php.net/
0004nobodyさん
2012/01/20(金) 05:44:31.66ID:???1.文字コードは何を使えばいいの?
→1.UTF-8 2.EUC-JP のどちらか。迷うようなやつはShift_JISは使っちゃダメ。
2. このスレに書き込むときに自分のサイト名を晒したくない
→ http://example.com/が例文などのために予約されている。hogehoge.comは使っちゃダメ。
3. ブラウザに何も表示されないんだけど・・・
→ Apacheの設定を見直せ。ファイルの拡張子は何にしてて、その拡張子でPHPを呼ぶようになっているか?
4. 記号の意味がわからないけどググりようがない
→ 「@」 エラー表示を抑制、「->」 オブジェクトのメンバにアクセス、「::」 静的なメソッド呼び出し、
「==」は暗黙の型変換をしてゆるい比較、「===」は型情報も含めた厳密な比較
5. echo "$arr['hoge']['fuga']"; と書いたらエラーになった
→ {おっぱい括弧}でくくって"{$arr['hoge']['fuga']}"にする
6. 一定時間ごとに自動的に何かしたいんだけど
→ cronかタスクスケジューラを使え。
7.extractって危険なの?
→変数上書き&初期化忘れなどで危険。楽だからという理由だけで安易に使わない。
8. include/requireに「〜.php?a=b&c=d」のようなパラメータをつけたい
→ URL呼び出しなら可能だけど、普通のファイル呼び出しではできません
9.include/requireでURLを指定しても何も起きない
→ .phpの拡張子のファイルをURLで呼び出すと、1度PHPプログラムとして実行された結果になる。
0005nobodyさん
2012/01/20(金) 05:44:44.71ID:???→ 確認すべきはPHPのconfigureの引数、php.iniの内容と置き場所、
Webサーバの設定(Apacheならhttpd.conf)、起動&再起動あたり
11. SQLの質問はどこで?
→ データベース板に誘導されるのが嫌ならPHPにうまく関連させて質問する
12. 文字列のなかに、英字のみとか数字のみとか記号が入っちゃいやんとかはどうしたらいいの?
→ ctype_〜()が手軽。複雑なパターンはpreg_〜()あたりで正規表現を使う。
13. $a1, $a2, $a3 ... のような変数名をうまく扱いたい
→ 可変変数で実現できるけど、むしろ配列を使って$a[1], $a[2], $a[3]等とするのがベター
14. echoとprintってどう違うの?
→ よく議論される話題であるが基本的に両者とも同じ。 以下ちょっとした議論。
http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40
15. クッキーの情報をユーザから隠したい
→ セッション使え。ただしクッキーとセッションは仕組みが違うから同じように扱うな
16. strip_tags()で削除しないタグを複数指定したい
→ strip_tags($html, '<a><p><font>'); // htmlspecialchars()も検討すべし
17. CSVやTSVのファイルをスマートに扱いたい
→ まずはfgetcsv()。ただし日本語を含むと正常に動作しない場合があるので注意だ。
18. 値渡しと参照渡し(「&」を使う)のパフォーマンスの違い
→ C言語じゃないので、パフォーマンス目的で使いわけたらダメ。参照渡しにすると逆に遅くなったりする
参照渡しは引数に戻り値を設定したり引数を関数内で変更するなど、正しい目的に使うこと
19. ファイル入出力関数(fopen等)でリモートファイル(http://〜とか)を扱う際の限界
→ fsockopen()でソケット通信 or PEARのHTTP系 or CURLで解決
必要ならHTTPをはじめとする各種プロトコル(どんなデータを送受信するか)はRFCなどで調べる
20. PHPからPOSTリクエストしたい
→19.を参照
21. 画像処理一般 or GDの限界
→ ImageMagick(PECLのやつ or シェルから実行)
22. 画像・音・動画はファイルで保存?DBに保存?
→ 好きにしてください
0008nobodyさん
2012/01/20(金) 10:31:56.57ID:2Tx7MEP0{
return rand()/(getrandmax()+0.1);
}
$in=0;$N=1000;
for ($i=0;$i<$N;$i++){
$x=frnd();
$y=frnd();
if ($x*$x+$y*$y<1.0)
$in++;
}
$pai=4*$in/$N;
echo "π=".$pai."\n";
phpの本に載ってたモンテカルロ法による円周率の求め方の質問
何故、getrandmax()+0.1としているのですか?
rand()/(getrandmax()で0〜1の範囲で乱数を発生させたらいいと
思うのですが、この0.1が加算されているのが分かりません。
C言語でやったときは rand()/RAND_MAXとしました。
0009nobodyさん
2012/01/20(金) 11:11:32.41ID:???x=1のときyに依存しないで円外になるからかな。
どっちもやって誤差がどうなのか見てみれば?
0011nobodyさん
2012/01/20(金) 19:26:14.79ID:yvoFKIu/php.iniでmemcached.soを記述してプログラムを動かしたところ、
PHP Warning: Module 'memcache' already loaded in Unknown on line 0 という警告が出たのですが、
これをどう理解したら良いのかわかりません
php.iniの指定以外にもどこかで起動していたということですよね?
自分ではそんなプログラムを書いた覚えないのですが、どんな原因が考えられるでしょうか?
サーバのサービスとしてのmemcachedはstatus:running状態だったのですが、
その場合php.iniの拡張モジュールとしての記述は不要ということでしょうか?
0012nobodyさん
2012/01/20(金) 20:01:22.32ID:???0013nobodyさん
2012/01/20(金) 21:04:10.91ID:ObSPH0mR↓みたいなhtmlエンティティ化された日本語を戻すのはどうしたら良いでしょうか?
?????
ちなみにこれは「あいうえお」です。
print html_entity_decode("?????");
としても変化ありませんでした。
よろしくお願いします。
001413
2012/01/20(金) 21:05:59.96ID:???↓これです。&は半角です。
&#12354;&#12356;&#12358;&#12360;&#12362;
また化けてたらすいません。
0016nobodyさん
2012/01/20(金) 21:19:29.86ID:x5waH9K4次期バージョンが出ているようですが、
PHPで使えるのか良くわかりません
TTの方はPECLから簡単に導入出来ると思うのですが、
実際使っている方にお聞きしますが、やっぱ今から導入するにはKyotoの方でしょうか?
それともPECLにありマニュアルも完備されているTokyoの方がいいのでしょうか?
0017nobodyさん
2012/01/20(金) 21:20:31.05ID:ObSPH0mRただのあいうえおですって。
どうやってデコードするのか教えてください。
0019nobodyさん
2012/01/20(金) 21:44:23.61ID:???html_entity_decodeはめんどくさい。
0021nobodyさん
2012/01/20(金) 21:47:28.03ID:???mb_convert_encoding()にそんな引数あったんですね。
知りませんでした。
ありがとうございます。
002311
2012/01/20(金) 23:08:17.49ID:yvoFKIu/ありがとうございました!
/etc/php.dっていうディレクトリの中に***.iniがある場合、それはphp.iniで
拡張モジュール指定しなくても良いんですね。知りませんでした
/etc/php.dはどういうタイミングで作られる&更新されるんでしょうか?
>>12
ありがとうございました
0024nobodyさん
2012/01/20(金) 23:31:21.75ID:x5waH9K4マニュアルのこのページなのですが、
この--with-tokyo-tyrant[=DIR]などは、PHPをソースコードから入れる場合に
./configure時に指定しろという事でしょうか?
良く分からないのですが・・・
導入例を色んなサイトで見たのですが、書かれていないような気がします
tyrantとcabinetを入れた後にPECLでモジュールを入れればいいのかなと思っていたのですが
0025nobodyさん
2012/01/20(金) 23:37:39.24ID:x5waH9K4PHPの時はおかしいと思っておりました
PECLモジュールをphpizeで入れるときのオプションだとhelpを見て分かりました
0026nobodyさん
2012/01/21(土) 00:06:03.40ID:zlJukRTP【PHPのバージョン】5.3
【連携ソフトウェア】MySQL
【質問内容】
入出力のサニタイズの質問です。
名前とメールアドレスを入力してもらい、次の画面で確認表示して、
確認後にDBに格納します。また、あとでDBから取り出して画面に表示します。
このとき、どのようにバリデートとサニタイズを行うのがいいでしょうか。
次の流れで、(2)と(3)のサニタイズは必要でしょうか。
行わなければ、ぜい弱性になりえますか?
利用者から名前とメールアドレスを受け取る
↓
mysqli_real_escape_stringでサニタイズ(1)
↓
長さが1以上、かつ、メールアドレスは適切
↓
(1)をhtmlspecialchars でサニタイズして表示(2)
↓
利用者が確認
↓
(1)の結果をDBに格納
あとで、
DBから名前とメールアドレスを取り出す
↓
htmlspecialchars でサニタイズして表示(3)
0027nobodyさん
2012/01/21(土) 00:06:54.20ID:zlJukRTP利用者から名前とメールアドレスを受け取る(a)
↓
(a)の長さが1以上、かつ、メールアドレスは適切
↓
(a)をhtmlspecialchars でサニタイズして表示(b)
↓
(b)を利用者が確認
↓
(a)をmysqli_real_escape_stringでサニタイズ(c)
↓
(c)をDBに格納
0028nobodyさん
2012/01/21(土) 00:13:57.76ID:???ただのエスケープの話だったでござる
0029nobodyさん
2012/01/21(土) 00:25:53.11ID:zlJukRTPまだ確認画面を作ってないのですが、
セッション変数で渡してしまおうと思っています。
今の仕様だと確認画面がないので、セッションは不要なんですが。
0030nobodyさん
2012/01/21(土) 00:28:45.42ID:mz2KZcw3管理者にメール送信させたいと思っています。
それで、それに関することを調べていたら「複数のプロセスが発生しないように云々」とありました
これについて聞かせてください
・メール送信する処理をこの場合のプロセスとして考える
・同時に複数のプロセスが動くのは望ましくない(サーバの負荷がかかる)
・そうならないための仕組み(排他制御とはこのことですか?)を考えるべき
ってことですか?
どうやって、現在管理者向けのメールを送るプロセスが起動してるかを判定できるんでしょうか?
簡単な例を教えてもらえると嬉しいです。よろしくお願いします。PHP5.3です。
0032nobodyさん
2012/01/21(土) 00:32:30.90ID:???どうやるのを想定していますか?
それに関することのソレがわかんないし、貴方の思ってる方法と
ソレがあっているか分かんないし、なんで複数のプロセスが発生しちゃだめなのかがつながらない。
答えるとすると、ただの想像になるので、貴方の役に立たないかもしれません。
0033nobodyさん
2012/01/21(土) 00:33:42.41ID:???同時に複数のプロセスが動くのは普通だよ
リソースを共有してて同時にいじったら問題が発生するときは排他制御かけるけど
0034nobodyさん
2012/01/21(土) 00:39:35.47ID:zlJukRTPありがとうございます。
それぞれ対策することにします。
0035nobodyさん
2012/01/21(土) 00:52:11.08ID:???言葉足らずで申し訳ありません
イメージとしては exec();を利用してメールを送信するsendmail.phpを実行しようと思っています
排他制御というのを実行して、たとえばユーザA,ユーザB,C,D...が大勢いっぺんにメールを送るようなことに
ならないようにしないとサーバが重くなってしまうのかなぁと思ってましたが、
そんなことないんでしょうか?
よくわからないのですが、sendmail.phpの中で以下のようなことをするのかと自分は思っていましたが…
if(!file_exists('./mailsending')){
//現在メール送信中なのを示すロック用のファイルを作る
mkdir('./mailsending',0777);
//メール送信処理
〜〜
unlink('./mailsending');
}else{
sleep(5);
//このあとこの処理を頭からもう一回実行する
}
>>33
プロセスというのがそもそもよくわからないのですが
mail();の実行でメール送信のプロセスが起動するわけですよね?
それはいくつも同時に動いて問題なくて、一つ動いてそれが送信完了したらそのプロセスは消えるんでしょうか?
003633
2012/01/21(土) 01:17:13.33ID:???execで外部メールプログラムにパイプで渡すのか
mailでメールサーバに渡すのかどっちなんだ?
どうやろうとしてるのか情報がないので分からないけど普通はメールキューに溜まるんでないの?
0037nobodyさん
2012/01/21(土) 02:10:54.17ID:???0039nobodyさん
2012/01/21(土) 04:59:51.97ID:eRKOygVB$func = function ($a) {};
$func("あ");
で呼び出すのって違いありますか?
0040nobodyさん
2012/01/21(土) 05:02:29.98ID:???0041nobodyさん
2012/01/21(土) 05:27:34.12ID:???感動しました!
0042nobodyさん
2012/01/21(土) 05:32:01.60ID:???0043nobodyさん
2012/01/21(土) 11:07:42.28ID:FSMglBTDどのようなものがありますか?
0044nobodyさん
2012/01/21(土) 11:31:19.49ID:???0045nobodyさん
2012/01/21(土) 16:25:18.51ID:jFN3iVio通常はutf-8で統一するのでしょうか?(php,mysql,xhtml)
携帯の場合はsjisだと思いますが、その場合はsjisで
(php,mysql,xhtml)で統一するのでしょうか?
0046nobodyさん
2012/01/21(土) 16:34:35.91ID:???0047nobodyさん
2012/01/21(土) 16:57:04.13ID:???まぁsjisにするにしても内部コードはutf8にするのが鉄則
内部コードがsjisってだけで問題起きるからな
0048nobodyさん
2012/01/21(土) 17:00:29.88ID:???へえ、携帯向けもUTF-8でいいんですか。
化石のような携帯を使ってる奴らを相手にするつもりはないので。
0049nobodyさん
2012/01/21(土) 17:43:30.86ID:???スマホ相手だったらUTF-8で問題ないよ。
0050nobodyさん
2012/01/21(土) 18:01:38.09ID:CB8OXbyxソケット通信のプログラムに興味があって勉強してるのですが、
stream_set_timeoutで設定するタイムアウトは実際にどのようなときに
発生するんでしょうか?
例えば10秒のsleepを設定してある外部のphpプログラム(HTTPアクセス)に、
stream_set_timeoutで5秒を設定したプログラムからアクセスしても
タイムアウトが発生せず10秒しっかりと待たされてしまうのですが、
そもそもstream_set_timeoutで設定するタイムアウトの解釈が間違ってますか?
0051nobodyさん
2012/01/21(土) 18:07:22.46ID:mW1ztqvoforeach ($h as $key => $val) {
echo "h[" . $key . "] = " . $val . "<br>";
}
で出力すると
h[2] = 2
h[3] = 5
h[4] = 14
h[5] = 11
h[6] = 14
h[7] = 17
h[8] = 14
h[9] = 5
h[10] = 8
h[11] = 6
h[12] = 4
となるサンプルが本に載ってましたが、
$h=array(2=>0,0,0,0,0,0,0,0,0,0,0);は
$h=array(2=>0,3=>0,4=>0,5=>0,・・・が
略記と考えていいのですか?
0052nobodyさん
2012/01/21(土) 18:09:31.65ID:mW1ztqvo配列hを$h=array(2=>0,0,0,0,0,0,0,0,0,0,0);したとき、
foreach ($h as $key => $val) {
echo "h[" . $key . "] = " . $val . "<br>";
} で
0
0
0
0
0
0
0
0
0
0
0
でした
0053nobodyさん
2012/01/21(土) 21:11:00.04ID:MGOT7geSphpもやったほうが捗る?
他の言語の方が捗ったりして
0054nobodyさん
2012/01/22(日) 00:24:53.85ID:UXyrzgYXクラスってどういうときにどんなかんじで使うの?
普通にファンクションじゃダメなの?
0056nobodyさん
2012/01/22(日) 00:57:25.79ID:UXyrzgYXいや業務で使わないといけないから
月曜までに理解しとかないとまずい
0057nobodyさん
2012/01/22(日) 01:40:38.96ID:???class ningen
じつはこれこのままだと動かない、人造人間
なのでスイッチ入れます
$hito = new ningen();
この人造人間、ミサイル発射機能が実装されてる
$hito->missile();
デフォルトだとミサイル1発に設定されてるけど5発でも出せるよ
$hito->setAmmo(5);
$hito->missile();
髪型だって変えられるイカシタやつなんだ
$hito->setHair('hage');
こんな感じ
classの中にはmissle,setAmmo,setHairってfunctionがある
スイッチを入れた$hitoはインスタンスと呼ばれるオブジェクト
インスタンスからそのクラスが持ってるメソッドを呼び出したり、インスタンスの髪型変えたり
考えてもあまり意味ないから、簡単なソースを真似て自分で書いてみれ
0058nobodyさん
2012/01/22(日) 01:49:25.23ID:???http://www.php.net/manual/ja/language.types.array.php
キーを省略した場合、整数添字の最大値が使用され、 新しいキーはその最大値 +1 となります。
整数値は負の数とすることができ、 負の添字についても同様となります。例えば、最高時の添字が
-6 の場合、次のキーは -5 となります。 整数添字がまだ存在しない場合、キーは 0 (ゼロ) となります。
値が既に代入されているキーを指定した場合、元の値は上書きされます。
006059
2012/01/22(日) 05:28:11.30ID:???スルーしてくれ
0061nobodyさん
2012/01/22(日) 08:13:40.99ID:bGbbffT4public_htmlの権限を707(または706など)にして書き込み可能にする必要があるんでしょうか?
またその場合外から書き込みなることは危険ではないんでしょうか?
006261
2012/01/22(日) 08:16:15.48ID:bGbbffT4すみません
書き込みなることは〜→書き込み可能になることは
に読み替えてください
0063nobodyさん
2012/01/22(日) 09:42:04.56ID:???出力するファイルの親ディレクトリに書き込み権限を与える必要がある
親ディレクトリがpublic_htmlならpublic_htmlに与える必要があるが
public_html/hoge/に出力する場合public_htmlまで遡らず
単にhogeに書き込み権限を与えればよい
>またその場合外から書き込みなることは危険ではないんでしょうか?
ディレクトリやファイルを操作するスクリプトに脆弱性がある場合は
余計な権限を与えてると問題が起きる可能性はあるが
権限を与えること自体に危険性はない
0070nobodyさん
2012/01/22(日) 13:24:42.98ID:MxVymtCiこの2つなら思いつきますが、他にオススメがあればお願いします。
1.echoでHTMLを出力する
2.?>でPHPを閉じて、HTMLを書いて<?phpでまたPHPを書く
0071nobodyさん
2012/01/22(日) 13:26:53.23ID:???0072nobodyさん
2012/01/22(日) 13:29:50.28ID:MxVymtCiヒアドキュメントですね。忘れていました。
それをechoで出力すればいいですね。
0073nobodyさん
2012/01/22(日) 13:48:53.45ID:???echo "
<p>aa</p>
<p>aa</p>
";
echo '
<p>aa</p>
<p>aa</p>
';
0074nobodyさん
2012/01/22(日) 14:05:51.50ID:MxVymtCi改行が入ってもクオートは閉じなくていいんでしたか。
ありがとうございます。
0075nobodyさん
2012/01/22(日) 14:18:37.17ID:oj78u6X0(警告メール/エラー報告メール/新着情報メールなど)
今までswitch文で一つのファイルにまとめて各パターンの文章を書いてたんですが、
その文面を外部化してテンプレート的に読み込ませた方が良いと思い始めました
しかし、そのメールのテンプレートの作り方がわかりません
最低限下記を知りたいです
・テンプレートの拡張子(というかファイルタイプ)はどうすべきか
・そのファイルから文章を読み込ませる方法
・ユーザ名を自動的に置き換えて送信できるようにする方法
(「こんにちは ****さん」的な…)
どうしたらいいんでしょうか
処理の流れとして、上記のメール送信する処理を書いた.phpファイルを mailsend.class.phpとして
以下のようにしてメールの種類と送信先ユーザ名を渡して送信処理することを考えています
require(mailsend.class.php);
$mail = new mailsend();
$mail->sousin($mailType, $userName);
0076nobodyさん
2012/01/22(日) 14:32:21.99ID:???もうちょっと初歩的なところからやったほうがいいのでは?
質問の答えとしては
>・テンプレートの拡張子(というかファイルタイプ)はどうすべきか
プレーンテキストだしなんでもいい
>・そのファイルから文章を読み込ませる方法
file_get_contents etc
>・ユーザ名を自動的に置き換えて送信できるようにする方法
そういう情報を集めたデータベースなりが必要でしょう
0077nobodyさん
2012/01/22(日) 16:12:54.41ID:ySnaTQRiマニュアル
http://www.php.net/manual/ja/class.tokyotyrant.php#tokyotyrant.constants.types
に書かれているTokyoTyrant::TTE_SUCCESSなどはどのようにして使うのですか?
実行結果によってエラー処理など、分岐させたいのですが、
memcachedのMemcached::getResultCodeのように実行結果のコードを取得するような関数もありません
教えていただけませんでしょうか?
007861, 62
2012/01/22(日) 16:55:34.47ID:bGbbffT4丁寧に答えて下さりありがとうございます
仰るとおり、調べた結果safemodeでした
ディレクトリを新しく設け、そこに置くファイルは最小限にして実装しました
ありがとう!
0079nobodyさん
2012/01/22(日) 17:16:32.51ID:UXyrzgYXわかりやすい例えどうもです!
0081nobodyさん
2012/01/22(日) 20:10:43.98ID:ySnaTQRiなるほど、お答えいただきありがとうございます
日本のマニュアルは、英語と比べて遅れている(差がある)ようで、
先ほど初めて知ったのですが、TokyoTyrantExceptionというのがあると知りました
他にもIteratorといったクラスがあるようで・・・
今Windows環境でLinuxが手元にないので試せないのですが、
keyからput、getなどする際は、try~catchのtry内で行えということですね?
0082nobodyさん
2012/01/22(日) 21:28:18.69ID:???そういう事だね
マニュアルにない事はソースに頼る方が確実
tokyo_tyrant.c
> /* {{{ int TokyoTyrantTable::put(string pk, array row);
> put a row. if pk = null new key is generated
> @throws TokyoTyrantException if not connected to a database
> @throws TokyoTyrantException if get fails
> */
> PHP_METHOD(tokyotyranttable, put)
> {
0084nobodyさん
2012/01/22(日) 23:30:07.77ID:ySnaTQRi本当にありがとうございました
しかしPHP・・・だけでなく他言語としてもTokyoTyrantの情報って出てきませんねw
調べてもマニュアルの転用ばかりが出てきます
皆さん何を使ってらっしゃるんですか?
APCやmemcachedがやはり多いんですかね?
それかCassandraとか
それともこういうのは使わずに、DBとかcache機能とかなのですかね
0085nobodyさん
2012/01/23(月) 05:35:43.09ID:???それでも使いたいってなら頑張って調べるしかないからね
めんどくさいし情報が豊富なmemcachedでいいってなるわ
0086nobodyさん
2012/01/23(月) 08:34:14.66ID:???で、なんとなくクラスの使い方がわかりました。ありがとうございます。
でも、今自分の作っているもののうち、どういうものをクラスに作ったらいいのか
まだいまいち把握できません。どんなときにクラスにするんですか?
0087nobodyさん
2012/01/23(月) 09:40:19.55ID:???0089nobodyさん
2012/01/23(月) 10:22:28.44ID:???全部クラスにしないといけないそういう言語もあるんだぞ
というわけでオブジェクト指向の概念を勉強したいなら
一度JavaなりC#の初心者向けサイトを訪問してきな
0091nobodyさん
2012/01/23(月) 18:09:04.87ID:NlIjtP0L【PHPのバージョン】5.3.9
【連携ソフトウェア】Apache 2.2.21
(php.ini)
mbstring.internal_encoding = UTF-8
mbstring.http_input = UTF-8
mbstring.encoding_translation = On
不正な UTF-8 を出来る限り防ぎたいと思っています
htmlspecialchars のように無効な文字を削除する関数で、'<' (小なり) や '>' (大なり) を変換しない関数は無いでしょうか
$str = htmlspecialchars_decode(htmlspecialchars($str, ENT_COMPAT, ''), ENT_COMPAT) のように書くのが適切でしょうか
0092nobodyさん
2012/01/23(月) 18:15:58.21ID:???htmlspecialcharsは 無効な文字を削除する関数ではありませんし。
009391
2012/01/23(月) 18:47:20.79ID:NlIjtP0Lすみません
PHP 5.2.12 / 5.3.2 以降の htmlspecialchars で、冗長なUTF-8表現などが含まれると空文字を返す機能のことです
0095nobodyさん
2012/01/23(月) 19:17:30.77ID:HHu7F5nF何かを行った際にその時の現在時刻を取得し、DBなどに格納しておいて、
その後に、3日以上経っていたら削除するような事をしたいのですが、
どのように書けばいいのでしょうか?
自分はまず先にdate('Y/m/d H:i:s');でDBに格納
->次に(3日以上経ったとして)、現在時刻を取得し、DBに格納した値と比較
と考えたのですが、計算方法が分かりません
strtotime()とか考えたのですが、解決には至りませんでした
0096nobodyさん
2012/01/23(月) 19:21:52.27ID:???009791
2012/01/23(月) 19:23:42.04ID:NlIjtP0Lありがとうございます
PHP 5.4 では、5〜6 バイト表現を mbstring 系でブロック出来るようですが
PHP 5.3 では、htmlspecialchars を使うしかないのでしょうか
0098nobodyさん
2012/01/23(月) 19:34:36.35ID:???2、dbにタイムスタンプtime()でいれて、 現在時刻のタイムスタンプから3日前の値より小さかったら消す。
time() - 3 * 24 * 60 *60 な
0099nobodyさん
2012/01/23(月) 19:52:48.40ID:???自分で取り除いてやるしかないね
RFCに許容するシーケンスがあるから簡単に出来ると思うよ
http://tools.ietf.org/html/rfc3629#section-4
010091
2012/01/23(月) 20:12:10.22ID:NlIjtP0Lhtmlspecialchars と htmlspecialchars_decode を通すことにします
ありがとうございました
0101nobodyさん
2012/01/23(月) 21:08:58.00ID:FIQlOImmそれを呼ぶことで出力する方法と、直接埋め込み式で書き連ねていく方法が
あると思うのですが、どのようにするのがよいのでしょうか?
内容はfor文やメソッド呼び出しがこまめに使われてて150行ぐらいです
インクルードファイルまで見ないといけないということを考えると、
やはり多少複雑になってもそのまま直に書くのが望ましいのでしょうか?
0102nobodyさん
2012/01/23(月) 21:16:13.86ID:HJ0fqWO2<?php
$a = 2;
if ( $a == 1 ) { ?>
hogehoge<br />
<?php
} else {
die();
}
?>
0103nobodyさん
2012/01/23(月) 21:16:59.61ID:???スタイルは人それぞれだからなんとも言えない
好きなようにせい
書いてるうちにだんだん変移してそのうち自分にぴったりな方法が見つかるさ
俺も最初はスクリプトに<<<EOF〜EOF;ってかんじに書いてたが
今じゃ全部テンプレートよ
0106nobodyさん
2012/01/23(月) 23:02:15.95ID:HJ0fqWO2ありがとうございます。
コードは汚いけど便利です。
HTMLの文法チェックも働くし。
0107nobodyさん
2012/01/24(火) 15:34:10.51ID:ZLZzoB2pたとえば、アパッチのログファイルを常に読み込み(監視)して、変更があればクライアントに伝えたいです。
0108nobodyさん
2012/01/24(火) 16:10:40.82ID:???0109nobodyさん
2012/01/24(火) 16:33:52.13ID:???0110nobodyさん
2012/01/24(火) 16:41:15.31ID:???0111nobodyさん
2012/01/24(火) 17:20:37.04ID:???0112nobodyさん
2012/01/24(火) 19:40:41.93ID:QFJ8TOos0113nobodyさん
2012/01/24(火) 19:40:57.76ID:QFJ8TOos0116nobodyさん
2012/01/24(火) 20:56:19.19ID:???0117nobodyさん
2012/01/24(火) 20:56:56.54ID:???0118nobodyさん
2012/01/24(火) 21:01:38.07ID:???0119nobodyさん
2012/01/24(火) 23:25:13.13ID:???0120nobodyさん
2012/01/25(水) 00:33:12.95ID:???http://www.php.net/manual/ja/book.inotify.php
ぶっちゃけこれ入れるぐらいならinotify-toolsでよくね?ってなるけど
0121nobodyさん
2012/01/25(水) 02:14:37.08ID:ElXWLH0vで、$s[0]と呼び出すと'f'が返りますが
これは比較的新しいバージョンでの対応でしょうか。
以前はこうは書けなかったような記憶もあり・・
0122121
2012/01/25(水) 02:36:53.81ID:ElXWLH0vhttp://www.php.net/manual/ja/language.types.string.php#language.types.string.substr
特にバージョンの注記はないようなので、前からできたのかもですね
0123nobodyさん
2012/01/25(水) 04:10:38.16ID:???0124nobodyさん
2012/01/25(水) 15:48:03.14ID:e1p5NWxBが1の値になることってありますか?
pid1はUNIXでは特別な番号らしいのですがLINUX上のPHPでも
getmypid()は1にはならないですか?
0125nobodyさん
2012/01/25(水) 16:03:02.66ID:???でもそれを聞いてどうすんだ
0126nobodyさん
2012/01/25(水) 16:15:08.29ID:e1p5NWxB処理後→1
で処理前から処理後までの一時的な番号をpidで付与しようと思ってまして
確認させてもらいました。
0127nobodyさん
2012/01/25(水) 17:54:45.67ID:vhcdno6Fインストールしている途中で問題が発生し、先に進めなくなってしまいました。どなたかアドバイスをお願いいたします。
PHPに関しては、PATHの設定をするところまでは終わっています。
Apacheに関しては、単独で動かせばルートディレクトリが正常に表示される状態です。
ここで、Apacheのhttpd.confにPHPのphp.iniのディレクトリを指定し、
Apacheを起動しようとすると以下のメッセージが表示され、Apacheが起動しません。
Invalid command 'PHPIniDir', perhaps misspelled or defined by a module not included in the server configuration
php.iniの記述内容は、php.ini-developmentのデフォルトの内容のままです。
ApacheとPHPそれぞれのインストールしたバージョンは以下の通りです。
Apache 2.2.21
PHP 5.3.9
どうかよろしくお願いいたします。
0128nobodyさん
2012/01/25(水) 18:05:32.63ID:???とりあえずエラーメッセージを機械翻訳するところから始めようか
> Invalid command 'PHPIniDir', perhaps misspelled or defined by a module not included in the server configuration
ミススペルしてね?もしくはモジュール読み込めてなくね?
0129127
2012/01/25(水) 18:15:05.58ID:vhcdno6Fモジュールの追加をしていないことが原因でした。
これからは、エラーメッセージをしっかり読みます。
どうもありがとうございました。
0130nobodyさん
2012/01/25(水) 19:41:39.09ID:???本に書いてある手順をトレースするのが勉強か?
0132nobodyさん
2012/01/25(水) 22:17:35.21ID:???自分で調べて解決でき始めたらもう初心者じゃねぇ
後ろで宣言した変数を前に表示させることってできますか?
0134nobodyさん
2012/01/25(水) 22:44:32.95ID:???0135nobodyさん
2012/01/25(水) 22:52:57.29ID:???あとに出力したいものを、あとで出力するようにするか
出力処理を後半にまとめる
<?php
いろいろ処理
?>
いろいろ出力
<?php echo $コメントの数 ?>
いろいろ出力
<p>コメント数(<?php echo $x; ?>)</p>
<?php
// 掲示板のプログラム
$x // コメント数の変数
?>
ってのがあったときプログラムの下で宣言している変数を上で使いたい場合ってどうすればいいのかなと
htmlのなかにphpを書いてると思ってください
やっぱりそうするしかないんですかね
コメント数をwhile文のなかに入れて数えているんですが
処理を分けると2回同じ事をしなくてはならないので冗長な感じがします
0138nobodyさん
2012/01/25(水) 23:12:03.21ID:???whileのなかで数えつつ、カウント以外の出力データを変数にためていけばいいよ。
while
カウント
出力データ作成(追加)
カウント出力
出力データ出力
できました
ありがとうございます!
0141nobodyさん
2012/01/26(木) 01:51:46.71ID:???0142nobodyさん
2012/01/26(木) 03:48:43.25ID:LhppUY8Rvar_dumpしたオブジェクトと生xml(html)ソースを見比べて目的の要素までのパスを探してるけど、
めっちゃ面倒くさいわ
var_dumpしたときに->もついてればいいのに
0143nobodyさん
2012/01/26(木) 03:49:24.15ID:???0144nobodyさん
2012/01/26(木) 03:53:21.83ID:???0145nobodyさん
2012/01/26(木) 04:02:43.02ID:ZvFchlGT$string = 'あ'; // utf-8
if ($string == 0xe38182) {
}
これがtrueにならないのは何故でしょうか?
0146nobodyさん
2012/01/26(木) 04:11:57.67ID:???0147nobodyさん
2012/01/26(木) 04:15:56.06ID:???0148nobodyさん
2012/01/26(木) 04:19:08.44ID:???0149nobodyさん
2012/01/26(木) 04:21:38.30ID:???0150nobodyさん
2012/01/26(木) 08:38:28.76ID:???今朝から海外(たぶんアメリカ)の鯖に繋がらないんだが・・・
0151nobodyさん
2012/01/26(木) 08:40:56.82ID:???0152nobodyさん
2012/01/26(木) 08:41:27.06ID:???ということはOCNの経路障害か
0153nobodyさん
2012/01/26(木) 08:42:15.72ID:???http://awabi.2ch.net/test/read.cgi/poverty/1327533899/
0155nobodyさん
2012/01/26(木) 13:33:32.38ID:S/vWMEY80156nobodyさん
2012/01/26(木) 14:29:50.07ID:???mbstringが入っていないと使えないということでしょうか?
0158nobodyさん
2012/01/26(木) 16:04:40.67ID:???0159nobodyさん
2012/01/26(木) 16:23:22.22ID:tvfPoK0+0160nobodyさん
2012/01/26(木) 16:36:17.38ID:???php ver 5.3.8
os xp
教えてください。
$str には文字列が入っています
下の 'あいうえお' のところに
$strの文字列をいれたいのですが
どうしたらいいでしょうか?
'$str' といれても 文字列ではなく
$strが入ってしまいます。
$ex->abc = 'あいうえお';
0162nobodyさん
2012/01/26(木) 16:42:52.94ID:tvfPoK0+php ver 5.3.8
os xp
教えてください。
$str には文字列が入っています
下の 'あいうえお' のところに
$strの文字列をいれたいのですが
どうしたらいいでしょうか?
'$str' といれても 文字列ではなく
$strが入ってしまいます。
$ex->abc = 'あいうえお';
0163nobodyさん
2012/01/26(木) 16:49:51.12ID:???シングルクオテーションではなくダブルクオーテーションを使わないといけない
0165nobodyさん
2012/01/26(木) 17:11:57.96ID:9mO7LzsIコマンドでは php deamon.php となりますが、これをPHPプログラムから起動したいです。
その時にクライアントにデーモンを起動したことを伝えたいので、起動後にPHPプログラムの方は終了させたいです。
0166nobodyさん
2012/01/26(木) 17:39:32.93ID:+EnTjdmH$active = null;
// ハンドルを実行します
do {
$mrc = curl_multi_exec($mh, $active);
} while ($mrc == CURLM_CALL_MULTI_PERFORM);
while ($active && $mrc == CURLM_OK) {
if (curl_multi_select($mh) != -1) {
do {
$mrc = curl_multi_exec($mh, $active);
} while ($mrc == CURLM_CALL_MULTI_PERFORM);
}
}
上記のように書かれていますが、挙動が理解できません
何故全く同じdo~whileを2回も行わなければいけないのでしょうか?
$mrcをvar_dump()などしてみたのですが、追えませんでした
while ($active && $mrc == CURLM_OK) {
if (curl_multi_select($mh) != -1) {
が何をしているのかも分かりませんでした
単に入れたいだけなら
$ex->abc = $str;
0170nobodyさん
2012/01/26(木) 21:05:45.47ID:KeppCWacmb_convert_encodingだとなぜかうまくいきます。
この2つの関数って同じ挙動にならないもんなんでしょうか?
$s="ああああ";
mb_convert_variables('EUC-JP','UTF-8',$s);
print $s;
$s="ああああ";
$s=mb_convert_encoding($s, 'EUC-JP','UTF-8');
print $s;
0171nobodyさん
2012/01/26(木) 21:52:18.90ID:???$ip = gethostbyname("ドメイン");
if($fp = @fsockopen($ip, 5121,$un,$sinn,2)) {
echo("Map:<font color="#00DD00">online</font>");
fclose($fp);
} else {
echo("Map:<font color="#DD0000">offline</font>");
}
if($fp = @fsockopen($ip, 6121,$un,$sinn,2)) {
echo(" Char:<font color="#00DD00">online</font>");
fclose($fp);
} else {
echo(" Char:<font color="#DD0000">offline</font>");
}
if($fp = @fsockopen($ip, 6900,$un,$sinn,2)) {
echo(" Login:<font color="#00DD00">online</font>n");
fclose($fp);
} else {
echo(" Login:<font color="#DD0000">offline</font>n");
}
?>
複数のサーバーのオンライン状況をチェックできる鯖ステを作りたいのですが、このソースじゃダメみたいで
エラーが出てしまいます。
Parse error: syntax error, unexpected T_STRING in : eval()’d code on line 5
0173nobodyさん
2012/01/26(木) 21:59:53.07ID:???マジレスわすれてた。
> echo("Map:<font color="#00DD00">online</font>");
エスケープしてないから。
0174nobodyさん
2012/01/26(木) 22:10:24.57ID:Rab6N0OA0175nobodyさん
2012/01/26(木) 22:19:23.72ID:???0176nobodyさん
2012/01/26(木) 22:29:51.83ID:???ポートから察するにラグナロクオンラインみたいだけど
DOS攻撃もいいところだわ
自分の鯖だったらエミュ鯖だろうからそれはそれで問題だけどな
0178nobodyさん
2012/01/26(木) 22:32:09.91ID:???0179nobodyさん
2012/01/26(木) 22:37:11.28ID:???0181170
2012/01/26(木) 22:43:39.42ID:KeppCWacまったく変換されてないです。
$s="ああああ";
print $s;
と同じ結果になります。
あ、実際$sの中身はsimplexml_load_file($url)でRSSから持ってきた文字列です。
これ、なんか関係ありますかねぇ?
0182nobodyさん
2012/01/26(木) 22:44:41.41ID:???嘘書くな
0183nobodyさん
2012/01/26(木) 22:48:56.17ID:???下のはいいというのはよくわからないけど、RSSの文字だと、そもそも文字コードの変換が
出来ないような文字かもしれないよ。
変換前のとかを、ソースでみてみ。
0184170
2012/01/26(木) 23:04:19.58ID:KeppCWacおっしゃるとおりですね。すみません(´д`;)
>>183
mb_convert_encodingだと問題なく変換されます。
↓この人と同じ状態です。解決できてないっぽいけど・・・
http://okwave.jp/qa/q4403628.html
0187nobodyさん
2012/01/27(金) 00:07:52.97ID:???エミュ鯖は犯罪だから
0188nobodyさん
2012/01/27(金) 00:18:59.00ID:???0189nobodyさん
2012/01/27(金) 00:35:24.65ID:???0190nobodyさん
2012/01/27(金) 00:37:01.03ID:???今著作権に厳しいからな。
0191 忍法帖【Lv=5,xxxP】
2012/01/27(金) 01:00:20.03ID:nAJWCuso0192nobodyさん
2012/01/27(金) 01:28:51.51ID:???0193nobodyさん
2012/01/27(金) 01:56:57.61ID:???0194nobodyさん
2012/01/27(金) 02:23:46.73ID:???0195nobodyさん
2012/01/27(金) 03:16:50.05ID:???と、
A body 部に記述された php のechoで吐かれた <img src='http://graph.facebook.com/".$prof_img_facebook."/picture?type=large' width='".$prof_img_size."'> のコード
(facebook APIを使ってfacebookのプロフ画像ととってくるコード)
ってどっちのが先に実行されますか?
困ってます。。。どなたか詳しい人いましたら教えて下さいm(_ _)m
0196nobodyさん
2012/01/27(金) 03:20:39.84ID:???0197170
2012/01/27(金) 05:49:06.74ID:GnO4EGnm引数の型がobject(SimpleXMLElement)#1〜(?)みたいなオブジェクトだと
変換されないっぽいです。(mb_ detect_ encodingでちゃんと判定されるのに)
stringsにキャストしたら普通に動きました。
mb_convert_variablesは引数にObjectも渡せるはずなのに謎ですね。
http://php.net/manual/ja/function.mb-convert-variables.php
0198nobodyさん
2012/01/27(金) 07:24:12.54ID:???0199nobodyさん
2012/01/27(金) 17:28:49.70ID:ydVf8Xd1「 PHP -> 」のキーワードでは検索プログラムの何かの記号と混同してしまうのか
まったく意中の結果を得られませんでした
「 -> 」の意味を教えてください
ちなみに、こういった場合どういうキーワードで検索するのが
正解なのか教えて頂けると、とても嬉しいです
0200nobodyさん
2012/01/27(金) 17:53:44.03ID:???マニュアルに一通り目を通すといいよ。
0201nobodyさん
2012/01/27(金) 19:29:41.13ID:???preg_match('/[\u4e00-\u9fa5]/', ...)
といった記述がしたいのですが、マニュアルに\uのオプションが見つかりませんでした。
もしない場合は、utf-8とかに変換してからチェックするしかないのでしょうか。
0202nobodyさん
2012/01/27(金) 21:45:47.62ID:???正確にはオブジェクトの中の配列の中の文字列?
文字列と言えば文字列なわけで。普通にprintできるし。
0204nobodyさん
2012/01/27(金) 22:44:32.42ID:???http://www.php.net/manual/ja/reference.pcre.pattern.modifiers.php
0205nobodyさん
2012/01/28(土) 01:26:13.34ID:GUwt9u3Uローカル環境でXAMPP上で開発しているのですが、
どうしたら「127.0.0.1」のように表示できるのでしょうか?
0207nobodyさん
2012/01/28(土) 07:46:45.02ID:???0208nobodyさん
2012/01/28(土) 12:00:43.80ID:???apacheのhttpd.confをテキストエディタで開いて、
「Listen 80」をコメントアウトし、
Listen 0.0.0.0:80を有効にしてください
0209nobodyさん
2012/01/29(日) 05:55:15.43ID:???0210nobodyさん
2012/01/29(日) 12:50:10.50ID:???foreach($RSS_data as $value){
$URL[]=$value->URL;
}
for ($i = 0, $n = count($URL); $i < $n; $i++) {
echo $URL[$i] . "<br />";
}
これで欲しいURLの一覧は出せるのですが、それぞれのページのHTMLソースが欲しいです。
0211nobodyさん
2012/01/29(日) 13:23:48.44ID:???0214210
2012/01/29(日) 14:24:05.99ID:axP+ileaありがとうございます。
0215nobodyさん
2012/01/29(日) 14:51:42.25ID:???0216nobodyさん
2012/01/29(日) 14:53:32.26ID:???痛い目にあったんじゃないかと想像w
0217nobodyさん
2012/01/29(日) 14:58:48.98ID:???0218nobodyさん
2012/01/29(日) 15:00:04.77ID:???gzip対応とか面倒だよな
0219nobodyさん
2012/01/29(日) 15:54:40.03ID:eROgtd9qどのようなものがありますか?
0221nobodyさん
2012/01/29(日) 17:56:53.21ID:eROgtd9qアプリケーションサーバーです。
0223nobodyさん
2012/01/29(日) 18:26:42.05ID:???0224nobodyさん
2012/01/29(日) 20:27:41.75ID:eROgtd9qphpの仮想マシーンレベルではサポートされていないのでしょうか?
0225nobodyさん
2012/01/29(日) 21:19:04.95ID:???0226nobodyさん
2012/01/29(日) 21:28:23.43ID:???0227nobodyさん
2012/01/29(日) 21:30:31.10ID:???0228nobodyさん
2012/01/29(日) 21:31:33.98ID:???0230nobodyさん
2012/01/29(日) 21:39:39.80ID:???0233nobodyさん
2012/01/29(日) 22:21:56.26ID:???完成は死を意味する
0235nobodyさん
2012/01/29(日) 23:14:26.75ID:???0237nobodyさん
2012/01/29(日) 23:45:27.73ID:???0238nobodyさん
2012/01/30(月) 00:03:38.66ID:XqkYh1fqphpでFacebookを作る方法を教えて下さい。
0241nobodyさん
2012/01/30(月) 01:54:53.10ID:???0245nobodyさん
2012/01/30(月) 07:50:54.83ID:Tb4TsYt/ファイルを添付して送信したいのですが、既存ファイルを指定するのではなく、
動的に生成して添付したいのですが、メモリ上にファイル(に相当するもの?)を作成するには
どうすればいいんでしょうか。
一時ファイルを保存=>添付してメール送信=>ファイル削除、の流れも考えられますが
ディスクに保存しないやり方があれば知りたいです。
0246245
2012/01/30(月) 08:01:45.99ID:Tb4TsYt/http://docs.php.net/manual/ja/wrappers.php.php
php://memoryを利用することで通常のファイルと同様に扱えるようです。
失礼しました。
0247nobodyさん
2012/01/30(月) 08:35:17.19ID:S8XrH54pブラウザに数秒毎にリフレッシュさせるか、Comet方式で作るか迷っています。
cometは同時接続数が多くなってサーバに繋がらない状況になったりしないか心配してるのですが
不特定多数がチャットを使用するとしか見積もれない場合は数秒毎リフレッシュのほうがいいのでしょうか?
0248nobodyさん
2012/01/30(月) 09:01:56.34ID:???PHP関係ないので、自分で決めて。
0249nobodyさん
2012/01/30(月) 09:29:40.18ID:???他のところで相談してきます。
0251nobodyさん
2012/01/30(月) 23:26:05.77ID:???0252nobodyさん
2012/01/31(火) 00:16:37.72ID:???0253nobodyさん
2012/01/31(火) 08:06:53.36ID:dTfxPGSXグローバル以外で><
0255nobodyさん
2012/01/31(火) 08:13:12.55ID:dTfxPGSXhttp://php.net/manual/ja/language.oop5.static.php
0256nobodyさん
2012/01/31(火) 08:18:06.09ID:???http://php.net/manual/ja/language.variables.scope.php
0258nobodyさん
2012/01/31(火) 13:02:51.47ID:6KRZikfhごちゃまぜRSSリーダーforPHP -ver1.3
を、さくらのレンタルサーバーで動かしています。
このごちゃまぜリーダーでは件数指定と日付表示が無かったので
★〜★の欄を追加して日付表示と件数指定をしています
<?php
require_once 'phplib/main.inc';
$rss = sox_fetch_rss();
while ( ★$i <=19 and ★ list($k,$v) = each($rss)) {
$p_title = $v->getMainTitle();
$url = $v->getURL();
$title = $v->getTitle();
★$item = $v->getDate();;
$item = strtotime($item);
$itemday = date('Y-m-d H:i:s',$item); //2009-04-24 22:25:34★
echo "<li><a href=\"$url\"><h1>$title</h1><p>$p_title</p><p>★$itemday★</p></a></li>\n";
★$i++;★
}
?>
この場合、件数指定表示もうまくいき RSSの日付表示も行われるのですが
日付はRSS1.0のものしか表示されず RSS2.0(主にアメブロ)のものは 1970-01-01 等を統一表示されてしまいます。
getDate()が関連してると思い、main.inc内を見てみたところ
function getDate(){
return $this->item['dc']['date'];
}
の部分が関連してるのがわかりました。 dc dateはRSS1.0の場合でRSS2.0はpubdateでないといけないようです。
この場合、RSSの種類によって適切に日付情報をgetするにはどうしたらよいでしょうか?
0259nobodyさん
2012/01/31(火) 15:12:12.35ID:???PHPと関係ないけどそんなこたぁない
pubDateでもいいがdc:dateでもいい
$this->item['dc']['date'];が1970-01-01のものに対しては
pubdateを取得できるか調べてあれば取得なければ1970-01-01を返す
という処理を書けばいいんじゃねえの
0260nobodyさん
2012/01/31(火) 15:54:23.45ID:6KRZikfhそのif文の構築方法がわからないんです。
main.incの
function getDate(){
return $this->item['dc']['date'];
}
おそらくここで if 条件文を入れると思うのですが
何を基準に pubdateがあるか・無いかの入れ子を入れるのかがサッパリで
dcdate pubdate 日付 等の単語を入れて構文を一通り見たのですが
ごちゃまぜRSSリーダーに添ったのがなかったのでこちらへ質問投下しました。
一応別の解決策としてRSS2.0のものはRSS1.0で読み込むようにする という手法をとって
2.0を全部排除する事で日付の不正表示は解決しています。
0261nobodyさん
2012/01/31(火) 16:07:29.23ID:???改造スレはスレチ
0263nobodyさん
2012/01/31(火) 17:08:59.31ID:jn5j2DcLプログラムを起動して、その中でリアルタイムに他のユーザーやサーバーと
メッセージのやりとりや対戦をしたいのですが、どのような言語や仕組みが
最適でしょうか?
一部にFLASHを使うのはありですが、なるべくJAVA系を使う方向が助かります
ただし、今回はJAVAアプレットはいまいち古いという理由で使えないです
0264nobodyさん
2012/01/31(火) 18:11:35.07ID:???0265nobodyさん
2012/01/31(火) 18:23:22.58ID:???0266nobodyさん
2012/01/31(火) 19:40:56.46ID:???0267nobodyさん
2012/01/31(火) 19:47:27.41ID:???Flashをviewにして内部はJavaでよいのでは?
BlazeDSでFlexとJavaで連携させたら簡単だよ。
0268nobodyさん
2012/01/31(火) 19:54:53.86ID:???0269nobodyさん
2012/01/31(火) 19:55:15.20ID:???0270nobodyさん
2012/01/31(火) 20:29:05.34ID:???すみません、PHPの部分に気づいていませんでした
該当スレのほうに移動します
>>267
ありがとうございます
少し調べてみると、かなりいい感じだったのでよく調べて検討してみようと思います
0271nobodyさん
2012/02/01(水) 00:34:48.86ID:???ちょっとこれ↓を作ってみようと思うんだけど、
http://www.pixiv.net/member_illust.php?mode=medium&illust_id=24745244
どういう構造にしようかな。
ローカルタイムを取得して、
上と下に2行に分けて表示するだけでいいかな。
0273nobodyさん
2012/02/01(水) 04:18:59.21ID:???質問も回答もOpenIDで編集できるんで適してると思うんですが
0275nobodyさん
2012/02/01(水) 06:41:01.44ID:???0277nobodyさん
2012/02/01(水) 07:26:17.86ID:???0278nobodyさん
2012/02/01(水) 07:32:28.84ID:???0279nobodyさん
2012/02/01(水) 07:43:18.42ID:???完成すると http://qa.lifesciencedb.jp/
0280nobodyさん
2012/02/01(水) 11:16:30.88ID:IMdwWgiD$person= array("のび太","ジャイアン","スネ夫");
$music = array("ハーモニカ","太鼓","バイオリン");
$fruits = ("みかん","りんご","メロン");
こういう配列に、「のび太、、バナナ(変更)」とか「しずか、ピアノ、いちご(追加)」
「スネ夫、引越(削除)」というデータを受け取って更新しようと思います。
それで自分の考えた処理の流れは間違っている感じがするのですが、
どうしたらいいのでしょうか。
つづく
0281nobodyさん
2012/02/01(水) 11:17:38.56ID:IMdwWgiDfor ( $i = 0; $i < count($person); $i++ ){
if ( $person[$i] === $_POST["person"] ){ // すでに登録があるとき
if ( $_POST["hikkoshi"] == 1 ){ // 削除 (配列に入れない)
$shori = $person[$i] . "を削除しました";
} else { // 変更
array_push($person2, $person[$i]);
array_push($music2, $_POST["music"]);
array_push($fruits2, $_POST["fruits"]);
$shori = $person[$i] . "を変更しました";
}
} else { // 新規
array_push($person2, $_POST["person"]);
array_push($music2, $_POST["music"]);
array_push($fruits2, $_POST["fruits"]);
$shori = $person[$i] . "を追加しました";
}
}
$person = $person2; $music = $music2; $fruits = $fruits2;
echo $shori;
つづく
0282nobodyさん
2012/02/01(水) 11:19:36.40ID:IMdwWgiDエラーをだせない。
※ そもそもforループを、配列の人数の数で回したら、新規の人(現在の
人数プラス1)のときに、ループを脱出してしまう?
考えているうちにどんどんわからなくなってしまって・・・。よろしくお願いします。
0283nobodyさん
2012/02/01(水) 11:32:29.85ID:???//あるとき
} else {
//ないとき
}
0284nobodyさん
2012/02/01(水) 11:38:34.36ID:IMdwWgiDありがとうございます。
でも、if ( isset( $person[ $_POST["person"] ] ) で調べたら、全部
あるとき になりそう。
0285nobodyさん
2012/02/01(水) 11:40:42.09ID:IMdwWgiD配列 person の中に、$_POST["person"] があるかどうかを
調べてるんですね。
0286nobodyさん
2012/02/01(水) 11:49:25.84ID:IMdwWgiDif( 引越し ){
配列に入れない
} else {
配列にいれる
}
} else {
if( 引越し ){
エラー
} else {
追加
}
}
こんな感じでいいんでしょうか。
0287nobodyさん
2012/02/01(水) 11:56:49.09ID:???まずやってみればいいんじゃないでしょうか。
0288nobodyさん
2012/02/01(水) 12:07:53.27ID:IMdwWgiDそうですね。似た処理を繰り返してしまうようですが、やってみます。
ありがとうございました。
0289nobodyさん
2012/02/01(水) 13:36:51.57ID:???http://manual.xwd.jp/function.array-search.html
>>283
$personのキーはインデックスしかないようだよ
0290nobodyさん
2012/02/01(水) 14:22:33.02ID:0PT+5Q34以下のtest1のようなクラスの書き方を今までしてきたのですが、
偉い人の書いたクラスやここ最近のフレームワークなんかのクラスを
眺めているとtest2のような書き方をよく目にするんですがどう言った
ご利益があるんでしょうか?
class test1{
function __construct($str="") {
self::test1($str);
}
function test1($str){
echo $str."\n";
}
}
new test1("hoge");
class test2{
function __construct($str="") {
echo $str."\n";
}
function gc($str){
return new test2($str);
}
}
test2::gc("hage");
0291nobodyさん
2012/02/01(水) 14:46:30.12ID:???デザインパターン入門本でもあさるといい
0292280
2012/02/01(水) 15:27:21.00ID:IMdwWgiDarray_searchという関数もあるんですね。
もしこれを使うとしたら、こんな感じになるのでしょうか。すごくすっきり!
ありがとうございます。(動くかどうか、これからやってみます。)
0293280
2012/02/01(水) 15:29:02.25ID:IMdwWgiDif( 引越し ){
$key = array_search( $_POST["person"] , $person );
if( $key ){
unset ( person[$key] );
unset ( music[$key] );
unset ( fruits[$key] );
$shori = $_POST["person"] . "は、引越ししました";
} else {
die( "そんな人はいません" );
}
}
if ( isset( $person[ $_POST["person"] ] ) {
//あるとき
$key = array_search( $_POST["person"] , $person );
$music[$key] = $_POST["music"];
$fruits[$key] = $_POST["fruits"];
$shori = $_POST["person"] . "を変更しました";
} else {
//ないとき
array_push( $person, $_POST["person"] );
array_push( $music, $_POST["music"] );
array_push( $fruits, $_POST["fruits"] );
$shori = $_POST["person"] . "を追加しました";
}
echo $shori;
0294nobodyさん
2012/02/01(水) 15:31:55.30ID:???0295nobodyさん
2012/02/01(水) 15:52:50.73ID:0PT+5Q34デザインパターンのシングルトンって言うんですね
調べてみます。ありがとうございました。
0296動きました!
2012/02/01(水) 16:08:24.79ID:IMdwWgiD$key = array_search( $_POST["person"] , $person );
if( $key ){
unset ( $person[$key] );
unset ( $music[$key] );
unset ( $fruits[$key] );
$shori = $_POST["person"] . "は、引越ししました";
} else {
die( "そんな人はいません" );
}
} else {
if (array_search( $_POST["person"] , $person)) {
//あるとき
$key = array_search( $_POST["person"] , $person );
if($_POST["music"]) { $music[$key] = $_POST["music"];}
if($_POST["fruits"]) { $fruits[$key] = $_POST["fruits"];}
$shori = $_POST["person"] . "を変更しました";
} else {
//ないとき
array_push( $person, $_POST["person"] );
array_push( $music, $_POST["music"] );
array_push( $fruits, $_POST["fruits"] );
$shori = $_POST["person"] . "を追加しました";
}
}
echo $shori."<hr>";
for ($i=0; $i<count($person);$i++){
echo $person[$i]." は ".$music[$i]." を嗜み ".$fruits[$i]." がスキです<br>";
}
0297280
2012/02/01(水) 16:09:34.76ID:IMdwWgiD>>293ではポロポロミスがあったので、動いたものを貼っておきます。
ありがとうございました。
0298ああ、タブが orz 書き直しました
2012/02/01(水) 16:12:44.52ID:IMdwWgiD$key = array_search( $_POST["person"] , $person );
if( $key ){
unset ( $person[$key] );
unset ( $music[$key] );
unset ( $fruits[$key] );
$shori = $_POST["person"] . "は、引越ししました";
} else {
die( "そんな人はいません" );
}
} else {
if (array_search( $_POST["person"] , $person)) {
//あるとき
$key = array_search( $_POST["person"] , $person );
if($_POST["music"]) { $music[$key] = $_POST["music"];}
if($_POST["fruits"]) { $fruits[$key] = $_POST["fruits"];}
$shori = $_POST["person"] . "を変更しました";
} else {
//ないとき
array_push( $person, $_POST["person"] );
array_push( $music, $_POST["music"] );
array_push( $fruits, $_POST["fruits"] );
$shori = $_POST["person"] . "を追加しました";
}
}
echo $shori."<hr>";
for ($i=0; $i<count($person);$i++){
echo $person[$i]." は ".$music[$i]." を嗜み ".$fruits[$i]." がスキです<br>";
}
0299nobodyさん
2012/02/01(水) 16:22:03.39ID:???$key = array_search( $_POST["person"] , $person );
if(引越し){
if($key)foreach($name as $val)unset($$name[$key])
else die("そんな人はいません");
$shori=$_POST["person"]."は、引っ越しました";
}
if($key)foreach($name as $val)$$val[$key]=$_POST[$val];
else foreach($name as $val)$$val[]=$_POST[$val];
$shori=$_POST["person"]."を".($key)?"変更":"追加"."しました";
edho $shori;
俺が書くならこんな感じかな
特別に書いたわけじゃなくて普段からこんな感じで
0300nobodyさん
2012/02/01(水) 16:28:54.51ID:???じゃなくてunset($$val[$key])か
0301nobodyさん
2012/02/01(水) 17:53:41.04ID:???0303nobodyさん
2012/02/01(水) 19:48:25.00ID:???0304nobodyさん
2012/02/01(水) 19:49:29.66ID:???0306nobodyさん
2012/02/01(水) 19:59:04.52ID:???0307nobodyさん
2012/02/01(水) 20:08:36.44ID:???理由を教えてくれると嬉しいです。
0308nobodyさん
2012/02/01(水) 20:10:09.75ID:???要件的に名前がユニークっぽいし、後続のコードもそれが前提みたいだから
$arr['のびた'] = array('music' => '鼻歌', 'fruits' => 'きんつば');
って入れといたほうが楽じゃね?ってことなんだけど。
0309nobodyさん
2012/02/01(水) 20:22:44.52ID:???ifの括弧省略するなってことなんだけど
スペースがなくて読みづらいところ大杉ってことなんだけど
日本語を変数名に使うなってことなんだけど
0311nobodyさん
2012/02/01(水) 20:34:47.13ID:???0312nobodyさん
2012/02/01(水) 20:39:55.52ID:???0313nobodyさん
2012/02/01(水) 20:43:05.99ID:???0314nobodyさん
2012/02/01(水) 20:46:32.31ID:???0315nobodyさん
2012/02/01(水) 20:49:20.80ID:q9L1uqO/なんとか消えるようにしたいのですが、とりあえず一番最初の部分を挙げると
//
$csv_dir = './';
$csv_file_name = 'data.csv';
$disp_size = 100;
$item_index = 'ID,Name,URL,Data';
$csv_file_name = $csv_dir. $csv_file_name;
if ($_REQUEST['submit'] == "add_exec") {$msg = AddNewData($csv_file_name);}
elseif ($_REQUEST['submit'] == "edit_exec") {$msg = Editdata($csv_file_name, $item_index);}
elseif ($_REQUEST['submit'] == "delete") {$msg = DeleteData($csv_file_name, $item_index);}
elseif ($_REQUEST['submit'] == "direct_edit_exec") {$msg = DirectEditdata($csv_file_name);}
elseif ($_REQUEST['submit'] == "backup") {$msg = BackupData($csv_file_name, $csv_dir);}
$data = file($csv_file_name);
$index = 0;
$all_size = sizeof($data);
if (sizeof($data) > $disp_size) {
$index = floor(sizeof($data) / $disp_size);
}
if ($item_index) {
$data = array_reverse($data);
array_push($data, $item_index . "\n");
$data = array_reverse($data);
}
らへんがダメっていってるみたいです
よろしくお願いします
0318nobodyさん
2012/02/01(水) 21:06:06.74ID:???0321nobodyさん
2012/02/01(水) 21:21:27.32ID:???0322nobodyさん
2012/02/01(水) 21:28:55.03ID:???0325nobodyさん
2012/02/02(木) 04:31:23.55ID:???0326nobodyさん
2012/02/02(木) 06:11:51.40ID:???0327nobodyさん
2012/02/02(木) 06:12:47.32ID:???0328nobodyさん
2012/02/02(木) 09:49:16.50ID:???配列の要素の中にも配列をいれられるの?知らなかったー。
>>308のきんつばをとりだすときにはどうするの?
0329nobodyさん
2012/02/02(木) 10:11:46.89ID:???0331nobodyさん
2012/02/02(木) 10:30:05.55ID:???ったく
0332nobodyさん
2012/02/02(木) 12:57:50.80ID:???0333nobodyさん
2012/02/02(木) 13:03:12.77ID:???0334nobodyさん
2012/02/02(木) 14:04:18.61ID:???一通りの基礎はできたので時間分けをしようとしたところでハマりました
//基本のポスト構造
if(date("i") <= 3){
$response = $eb->postRandom("data.php");
}
$response = $eb->reply(8,"reply.php","reply_pattern.php");
の上に、
//昼用ポスト構造
if(date("G") == 12) || (date("G") == 13) || (date("G") == 14)
else if(date("i") <= 3){
$response = $eb->postRandom("hiru_data.php");
}
$response = $eb->reply(8,"hiru_reply.php","hiru_reply_pattern.php");
を置いてみたんだが、手動で実行すると500エラーが出ます
昼用ポスト構造を削除して、基本ポスト構造のみにすると、手動でもCronからでも動くのですが
他のif構造を作って置いても、やはり置いた時点で駄目
そろそろ心が折れそうですorz 誰か助けて…
0335nobodyさん
2012/02/02(木) 14:05:09.37ID:F8NQ2fKh0336nobodyさん
2012/02/02(木) 14:14:59.05ID:???・サポセンじゃないのよ非標準ライブラリは作者にお聞き
0337nobodyさん
2012/02/02(木) 14:24:13.17ID:???0338nobodyさん
2012/02/02(木) 14:35:54.74ID:F8NQ2fKhすまん、マジモンの初心者なんだ
もう少しここで勉強させて
>>337
コピペで修正してみましたが同じ結果でした
何が原因なんだろう…
0339nobodyさん
2012/02/02(木) 14:57:00.77ID:???何はともあれエラーが見られるようになってなきゃ話にならん
レンタルサーバーでやってるならエラーログについて問い合わせる
0340nobodyさん
2012/02/02(木) 15:12:43.50ID:???わかった、ありがとう
サーバーに問い合わせて、もう少しがんばってみるよ
またお世話になるかもしれないので、そのときはよろしくお願いします
0341nobodyさん
2012/02/02(木) 15:13:11.77ID:F8NQ2fKh0342nobodyさん
2012/02/02(木) 15:15:50.78ID:???レンサバで開発するなドアホウ
0343nobodyさん
2012/02/02(木) 19:25:40.59ID:ZbQr3Kg2このお姉さんかわいい。
ひげのおっさんがphpをdisっている。
でも意味が分からない。
phpのバージョンでエラーがでるなら直せばいいし、
フレームワークも自社で決めればいいのに。
phpはごちゃごちゃしてわからないからrubyでというのはおかしくない?
もっといえばjavaでいいじゃん。と思ってしまうのだが、
たまたまこの人がrubyが好きだからじゃね。と思ってしまうのだが
0344nobodyさん
2012/02/02(木) 19:27:17.90ID:ZbQr3Kg2僕の考え間違っている?
0345nobodyさん
2012/02/02(木) 21:28:02.82ID:???ruby ヒゲ PHPでぃすってる
といえばruby開発者の松本か?
あいつはスルーしていい
0346nobodyさん
2012/02/02(木) 22:12:30.69ID:???あまり見かけませんが
0348nobodyさん
2012/02/02(木) 22:17:25.59ID:???いやだよ〜〜〜んm9(^Д^)
0349nobodyさん
2012/02/03(金) 00:06:20.70ID:???0350nobodyさん
2012/02/03(金) 00:17:17.09ID:???金の無駄
0352nobodyさん
2012/02/03(金) 03:55:18.51ID:JJuGjQNC受験勉強に集中するって言って掲示板を閉鎖しました。
0353nobodyさん
2012/02/03(金) 05:13:17.43ID:q+s48ZyT0354nobodyさん
2012/02/03(金) 05:54:27.38ID:???0355330
2012/02/03(金) 11:44:01.78ID:QL2/ase/ついでに報告しますと、>>298 で、
$key = array_search( $_POST["person"] , $person );
のところ、配列の0番目がPOSTされると、$keyが 0 になって、その次の
if文のelseの方にいっちゃいました (´・ω・`) で if( $key===FALSE ) みたいな
判定をすることにして、無事うまくうごきました。
みなさん、どうもありがとうございました!
0356nobodyさん
2012/02/03(金) 18:22:41.42ID:yTXNQKBGディレクトリに存在するファイルを検索している時に、濁音のファイルを探していると一致しません。
これを変換する関数ってありますか?
(sjis-winのutf-8-macみたいな)
<?php
//UTF-8のスクリプト
$file_name = ファイル名を取り出す関数();
if( $file_name == 'ダウンロード' ){
// OK
}else{
// NG
}
0357nobodyさん
2012/02/03(金) 18:32:02.29ID:???0360nobodyさん
2012/02/03(金) 19:31:47.22ID:???http://php.net/manual/ja/class.normalizer.php
0362nobodyさん
2012/02/03(金) 19:59:09.41ID:yTXNQKBGありがとうございます。pearですか。
自分しか使わない場合はこれでいいんですが、配布のことを考えると微妙ですね。
>>360
ありがとうございます。しかし5.3以上なんですね。
pearでどうやってるか調べてみます。
無理そうなら5.3以上は正しく動作するという方向にします。
0363nobodyさん
2012/02/03(金) 20:08:49.47ID:???0364nobodyさん
2012/02/03(金) 20:09:29.69ID:???0365nobodyさん
2012/02/03(金) 20:19:07.72ID:???0366nobodyさん
2012/02/03(金) 20:26:52.05ID:???根本の対策じゃなくて、macのファイルの濁音の問題だけでいいなら
http://labs.unoh.net/2007/09/unicode-on-mac.html
みたいにやればいいわけで
それだ
ありがとう
0368nobodyさん
2012/02/03(金) 22:13:55.66ID:wKNTeG6h質問なのですがpostまたはgetでデータを送るときに、
データを送るファイルとデータを処理するファイルを別にすべきか否か悩んでいます。
つまり、 データ送る.html(php) と データ処理する.php か、
データ送る_処理する.php のどちらにすべきか(どちらが普通か)ということです。
宜しくお願いします。
0370nobodyさん
2012/02/03(金) 22:27:40.68ID:???やはりそこは好みの問題なんですかね。
私はファイル数が多いと嫌なので1ファイルで処理しようと思います。
ありがとうございます。
0371nobodyさん
2012/02/03(金) 22:32:47.68ID:???0372nobodyさん
2012/02/03(金) 22:41:19.74ID:???はい次
0373nobodyさん
2012/02/03(金) 22:54:14.82ID:???0374nobodyさん
2012/02/04(土) 00:46:21.55ID:1holxMJc【PHPのバージョン】5.2
【連携ソフトウェア】なし
phpで簡単にpost通信がしたくてphp post通信でググって出てきたのの1ページ目のはやったんですがデータが送られませんでした
以前ロリポで出来たので無理ではないと思いますがやり方をわすれてしまいました(たしかfile_get_contentsのだったはず)
0375nobodyさん
2012/02/04(土) 00:48:38.20ID:1holxMJc追記
19を見てから投稿しました
0377nobodyさん
2012/02/04(土) 00:52:05.19ID:???0380nobodyさん
2012/02/04(土) 01:29:15.13ID:???0381nobodyさん
2012/02/04(土) 01:34:37.38ID:???0382nobodyさん
2012/02/04(土) 01:34:42.95ID:???0383nobodyさん
2012/02/04(土) 02:00:51.15ID:U1eS11UEMac糞ですよ。
>>364-365
デフォルトONじゃないんならあんまり意味がないですね・・・
やっぱりpearがいいかもしれませんね・・・
>>366
あ、なるほど。確かにそれでもよさそうです。
ありがとうございます。
0385nobodyさん
2012/02/04(土) 10:37:06.19ID:???0388nobodyさん
2012/02/04(土) 14:32:14.11ID:???0390nobodyさん
2012/02/04(土) 15:10:31.66ID:???いくら煽っても答えは返って来ませんよ
0392nobodyさん
2012/02/04(土) 17:58:53.68ID:???時代遅れの言語
0393nobodyさん
2012/02/04(土) 20:46:14.96ID:???0394nobodyさん
2012/02/04(土) 21:54:40.60ID:yD/6arhrXSSとSQLインジェクションは対策済みです
興味本位でHPを作ってみたものの、ハッキングが怖いです
0395nobodyさん
2012/02/04(土) 22:22:41.42ID:???0398nobodyさん
2012/02/04(土) 22:37:23.06ID:Eguip8rZ0400nobodyさん
2012/02/04(土) 23:38:32.49ID:???0401nobodyさん
2012/02/04(土) 23:43:07.68ID:K4OjxyJF盗んでも内容変えなければ大丈夫じゃない?
0402nobodyさん
2012/02/05(日) 01:01:57.08ID:???立件されなかったけど1ヶ月くらい拘束されてたと思う
0403nobodyさん
2012/02/05(日) 01:02:54.82ID:???0404nobodyさん
2012/02/05(日) 01:21:03.96ID:???不正アクセス禁止法かなんかで
パスワードを入手しようと試みる行為を罰する規定を設けるって
もしかしたらまだ立案段階かもしれないけどそんな話があったとだけ
0405nobodyさん
2012/02/05(日) 01:21:53.98ID:???これだ
0406nobodyさん
2012/02/05(日) 01:55:21.54ID:???バカのためにバカがつくるバカ基準の法律
The government of the baka, by the baka, and for the baka
0407nobodyさん
2012/02/05(日) 13:55:33.69ID:???0410nobodyさん
2012/02/05(日) 16:22:03.34ID:i7H07Acw【PHPのバージョン】5.3
【連携ソフトウェア】MySQL GD2
【質問内容】
PCとスマホ用のサイトを作りました。
ここまでは全てUTF-8で書いています。
今度はガラケー用のサイトを初めて作ることになって、
Shift JISで入出力するらしいのですが、どのように作ればいいでしょうか。
ぐぐったらsmartyというのでやるのが簡単と書いてあるのがありますが、
経験がありません。他に適当な方法がありますか?
基本的に、全キャリア共通サイトとして書くつもりです。
0411nobodyさん
2012/02/05(日) 17:01:27.26ID:???0413nobodyさん
2012/02/05(日) 17:28:45.31ID:???文字コードに自信がない人はUTF-8使って下さい
SJISは潜在的なセキュリティリスクを孕んでるのでよくわからない人が使うのは危険です
ガラケーも今時UTF-8で問題ありません
0414nobodyさん
2012/02/05(日) 22:14:06.28ID:i7H07Acwありがとうございます。
ひとまずUTF-8で書いて確認してみることにします。
携帯サイトの開発者さんって3キャリア分の端末と契約持ってるんですか?
ウィルコムとEMnetはどうしたらいいでしょうか。
0415nobodyさん
2012/02/05(日) 22:53:19.06ID:xvPPfzP03社のはエミュレータ使うといいよ
0416nobodyさん
2012/02/06(月) 00:36:16.14ID:???0417nobodyさん
2012/02/06(月) 00:37:45.04ID:O5qz7xhMどのくらい古いとアウトですか?
0418nobodyさん
2012/02/06(月) 01:00:04.26ID:???http://symple.jp/113.html
0419nobodyさん
2012/02/06(月) 01:06:28.25ID:O5qz7xhMありがとうございます。
よくわかってないんですが、最初からwordpress使えば
スマホ、携帯サイトも簡単にできちゃうんですかねえ?
0420nobodyさん
2012/02/06(月) 02:39:19.20ID:poXN+WMFWindowsは分かりやすいんですが、macとlinuxの切り分けが難しい。
0421nobodyさん
2012/02/06(月) 02:41:27.00ID:???http://php.net/manual/ja/function.php-uname.php
0422nobodyさん
2012/02/06(月) 22:53:18.01ID:C3dZcj350423nobodyさん
2012/02/06(月) 23:13:44.85ID:???0424nobodyさん
2012/02/07(火) 01:32:37.59ID:???まじめ話アブノーマルだと個人的には思う
デザイナーとの仕事が分担できてない環境下だと
結局プログラマがHTMLに仕込んだりしてただただしんどいだけ
0425nobodyさん
2012/02/07(火) 03:38:23.51ID:???0426nobodyさん
2012/02/07(火) 13:10:03.09ID:???【PHPのバージョン】6.0
【連携ソフトウェア】MySQL
【質問内容】
PHPからselect * INTO OUTFILE を行うと文字化けしてしまいます。
DBもスクリプトもUTF8で統一しているのですが、どのあたりから調査すればいいのか検討がつきません。
文字化け解消についてアドバイスいただけないでしょうか。
0429nobodyさん
2012/02/07(火) 23:53:37.99ID:+mH02aFrデザイナーさんとの仕事分担ってどんな感じなんですか?
現状、デザイナーさんがデザインして、ファイルをもらい、
自分がそこにPHPのコードを埋め込んでいく感じですが、
普通の現場だとどうしてるんですかね。
0430nobodyさん
2012/02/08(水) 01:08:26.67ID:???smartyスレにでもいけよ
0431nobodyさん
2012/02/08(水) 02:44:51.80ID:???うまくダウンロードするウィンドウがでるときと
readfile()で読み込んだファイルの内容が出力されるときがあります
どうしてこのようになるのかわかりません
説明不足だと思いますがエスパーの方いたらお願いします
0433nobodyさん
2012/02/08(水) 03:58:08.72ID:???0435nobodyさん
2012/02/08(水) 10:22:32.40ID:3EF2N74Ksetcookie("TestCookie", "something", time()+3600);
で、クッキーをセットしているのですが、firefoxのアドオン View Cookies1.10.3 で見ると
Expires が Session になっています。ブラウザを閉じると全部消えます。
どんな間違いが考えられますか?
0436435
2012/02/08(水) 10:26:44.75ID:3EF2N74K0437435
2012/02/08(水) 10:30:54.77ID:3EF2N74Kブラウザの設定の問題でした。
0438nobodyさん
2012/02/08(水) 16:44:06.52ID:vfdEsjRWSmartyで外部ファイルを読み込む場合、テンプレートとして読み込む(include等)と
変数割り当て等の解析が必要ない場合でもコンパイルされて、
外部ファイルが(別プログラムによって)変更された場合などには、再コンパイルするコードが必要になってしまいます。
Smarty内でこれを解決する(解析不要でただ読み込む)ことって可能でしょうか。
単純にPHPスクリプトで読み込んで変数に割り当てる方法でも対応できますが、
Smarty内からの関数呼び出しで他のテンプレートと同じように扱えればと思いまして・・
0439nobodyさん
2012/02/08(水) 17:59:23.48ID:2t5iqwD7curl系の関数を使う方法しかないんですかね?
curlだとURL指定で並列実行になりますが、
URLから実行せず、絶対パスで指定できたらと思っています。
curl以外の方法かライブラリがあれば教えてください。
0440439
2012/02/08(水) 18:24:02.84ID:2t5iqwD7簡単なので、こちらの方法で行きます。
0441nobodyさん
2012/02/08(水) 18:54:52.14ID:???平行してWebリソースにアクセスすることとマルチスレッドが同義であるという理解が広まってんのかな
0446nobodyさん
2012/02/08(水) 21:04:25.70ID:???0447nobodyさん
2012/02/08(水) 21:22:54.15ID:???0448nobodyさん
2012/02/08(水) 21:29:29.38ID:???0450nobodyさん
2012/02/08(水) 22:12:19.41ID:skUmVjLKこええ。わざとだよね?
0451nobodyさん
2012/02/08(水) 22:48:45.68ID:???PHPはマルチスレッドに対応していない
curlで出来るのはマルチスレッドモドキだって
0452nobodyさん
2012/02/08(水) 22:51:01.40ID:???0453nobodyさん
2012/02/08(水) 23:44:16.03ID:???0454nobodyさん
2012/02/09(木) 01:41:30.50ID:???混同してるのは質問者だけじゃん
0455nobodyさん
2012/02/09(木) 02:47:23.28ID:???0456nobodyさん
2012/02/09(木) 02:54:23.71ID:???ん?並列処理を行うことが目的なの?
目的によって手段を変えるのは当たり前なんだから>>444は別におかしくないだろ
0457nobodyさん
2012/02/09(木) 02:56:55.02ID:???「並列処理=並列してWebリソースにアクセスすること」
って考えしかないからそうなるのかな。
それが目的ならcurlでいいんじゃね、とは思うけれど。
0458438
2012/02/09(木) 09:29:47.73ID:vkcl0tGlありがとうございます。万事うまくいきましたー
0459nobodyさん
2012/02/09(木) 10:48:15.39ID:/qdirMi/マルチタスク=マルチスレッド
0460nobodyさん
2012/02/09(木) 11:01:18.23ID:mqFxDq28【PHPのバージョン】PHP5以降
【質問内容】
変数の未定義を注意されるので、自作のスクリプトで使用している変数・配列を
$value = NULL; で全て初期化していますが、関数によっては初期化しても勝手に未定義に戻されてしまうようです。
例えば以下のようなparse_urlがそのひとつなのですが、皆さんはどのように処理してますか?関数から得た値は全部isset等でチェックしています?それともerror_reportingを変えて無視してますでしょうか?
正直なところ、スクリプト内で使用されている関数を通した変数全部チェックするのはとても大変なのでそこまですべきか悩み中です。
php -l phpスクリプト ではチェックしてくれないですよね?
parse_urlを使ったスクリプト例
<?php
error_reporting(E_ALL);
$a = NULL;
$a['host'] = NULL;
$a = parse_url("www.google.com");
if ($a === false) print "parse_url is false\n";
print $a['host']."\n";
?>
実行結果
Notice: Undefined index: host in /home/test/test.php on line 12
0461nobodyさん
2012/02/09(木) 11:16:27.50ID:???$a['host'] = NULL;
で、上の行は意味が無いし、
$a = parse_url("www.google.com");
で上の2行が意味なしになるのですが、分かります?
0462460
2012/02/09(木) 11:19:34.68ID:???はい。値が上書きされてしまうので意味なしになるだろうとは思いました。
こういう場合、一般的にどう対応されているのかなー と思いまして。
0463nobodyさん
2012/02/09(木) 11:26:51.20ID:???あと、そもそものNotice: が出るのは、
parse_urlの仕様では、'host'が必ず含まれるわけではないからだね。
初期化の話じゃないのよ。
http://php.net/manual/ja/function.parse-url.php
でhostが出るような例をみるといーよ。
0464nobodyさん
2012/02/09(木) 11:48:50.45ID:???<?php の次の行はインデントする派? しない派?
0465460
2012/02/09(木) 11:56:22.30ID:???回答ありがとうございます。
やはり、怪しい関数は全て割り出してissetでチェックですかねー。
parse_urlでは'host'を使うなら'host'をissetでチェックして
セットされているか確認する必要がありそうですね。
上記の例では'path'にwww.google.comが入るみたいですね。
0466nobodyさん
2012/02/09(木) 12:06:12.88ID:vkcl0tGl頻繁にではないけど、もともとの$aを初期値としてセットしといて
関数の戻り値を$aにマージするようなコードを書くことはあるよ。
$a = array('host'=>null); // 初期値
if (($b = parse_url('...')) !== false) {
$a = $b + $a; // or $a = array_merge($a, $b);
}
0471nobodyさん
2012/02/09(木) 19:45:03.31ID:???0474nobodyさん
2012/02/10(金) 01:24:38.27ID:???俺もそうしよう。 回答有難う
0475nobodyさん
2012/02/10(金) 01:31:09.96ID:???そんなことするなら
if(empty($a) && isset($a['host'])){
echo $a['host']."\n";
}else{
echo "parse_url is false\n";
}
でいいんじゃ?
0476nobodyさん
2012/02/10(金) 12:33:14.85ID:LrusZM1cバグを最小限に押さえるのに良い方法ってありますか。
0478nobodyさん
2012/02/10(金) 14:16:48.87ID:LrusZM1c考えて考えて、
とりあえず書いてみて
でも、ゆわれるまで気づきません。
0480nobodyさん
2012/02/10(金) 15:08:52.50ID:???配列の中身が
Array
という文字列で出力されてしまうのですが、これはどうしてでしょうか?
0481nobodyさん
2012/02/10(金) 15:09:31.57ID:???0483nobodyさん
2012/02/10(金) 16:29:00.81ID:LrusZM1c当てはまりすぎるんですが、ヤバイですか?
0484nobodyさん
2012/02/10(金) 17:21:29.90ID:???0485nobodyさん
2012/02/10(金) 18:45:58.39ID:e8YNZNTFプログラマと呼べるレベルじゃないのにほとんど当てはまらなかった
0487nobodyさん
2012/02/10(金) 19:30:17.25ID:???0488nobodyさん
2012/02/10(金) 19:42:29.54ID:???これおまいらもやってるのか?www
0489nobodyさん
2012/02/10(金) 21:44:07.87ID:2T73dJDEFALSEがfalseではなくなるかもしれないから
FALSEであることを期待してfalseと比較なんかしちゃってると
痛い目に遭いますよという事で良いですよね?
0490nobodyさん
2012/02/10(金) 21:49:35.75ID:???ぜんぜん違う。
0492nobodyさん
2012/02/10(金) 22:45:10.70ID:2T73dJDEzend_constants.c上ではTRUE, FALSE, NULLと全部大文字で
定数に登録しようとしてるけど、大文字小文字は無視してるから
小文字に変換されて登録されてて、zend_compile.cで使う時も
小文字に変換し直してハッシュから定数を引っ張り出すだけだったw
0493nobodyさん
2012/02/10(金) 22:47:02.97ID:???0494nobodyさん
2012/02/10(金) 23:47:10.19ID:???フォールス?フォルス?フォールズ?
うちじゃ、ホルスw って読んでる人が一番多いようなw
0495nobodyさん
2012/02/11(土) 00:28:43.74ID:???0496nobodyさん
2012/02/11(土) 02:22:50.24ID:nzSgga7d0497nobodyさん
2012/02/11(土) 13:25:30.90ID:dnJZM8FPMac OS XのXAMPP環境にpeclでmemcacheをインストールしたのですが、有効になりません。
php.iniにはextension="memcache.so"が追加されています。(自動で追加されていた)
試しに、pecl install mongoしてみたら、こちらは問題なく有効になりました。(phpinfo()で確認)
何が原因か分かりますでしょうか?
0499nobodyさん
2012/02/11(土) 14:06:29.61ID:dnJZM8FP0500nobodyさん
2012/02/11(土) 14:15:29.85ID:???0502nobodyさん
2012/02/11(土) 15:08:08.04ID:???0504nobodyさん
2012/02/11(土) 15:15:21.43ID:dnJZM8FPvimwareって何ですか?
0506nobodyさん
2012/02/11(土) 15:55:57.42ID:dnJZM8FPじゃぁ、CentOSってくだりも書き間違いかな?
CentOSはpeclでインストールするよりyumの方がいいから。
0507nobodyさん
2012/02/11(土) 17:30:38.33ID:???0508nobodyさん
2012/02/11(土) 18:05:45.75ID:???「設立日」の値を保存する変数があったとして、
$establishment_day → 英語変換
$est_day → 短縮
$setsuritsu → ローマ字
などに出来ますが、長すぎると読みづらいし、
短縮文字だとわかりづらい場合があります。
(messageをmsgにするなど、一般的な短縮文字ならわかるのですが・・・
みなさんはどうしてますか?
0509508
2012/02/11(土) 18:06:06.37ID:bam167aq0510nobodyさん
2012/02/11(土) 18:11:09.41ID:dnJZM8FP有意義なレスありがとうございます。
phpinfo();とclass_exists('Memcache');で確認しました。
XAMPP for Mac OS X のextensionは、以下のディレクトリに入ります。
/Applications/XAMPP/xamppfiles/lib/php/php-5.3.1/extensions/no-debug-non-zts-20090626/
上記に、pecl install memcache した memcache.so がインストールされています。
これが有効にならなくて悩んでいます。
試しに、pecl install mongo した mongo.so (phpinfo()で有効になっている)を
_mongo.so にリネームすると、無効になるので、このパスで合っているはず。
0511nobodyさん
2012/02/11(土) 18:15:17.70ID:dnJZM8FPあまり一般的な短縮名でなければ、長いままにしておきます。
一々仕様書やコメントを読まなければいけないのは、他人に不便だと思うので。
長い関数名や変数名はスペルミスや覚えられないという問題もあると思いますが、
入力補完してくれるエディターを使えばいいと思います。
0512nobodyさん
2012/02/11(土) 18:35:54.65ID:dnJZM8FPPHPのコンパイルオプションに、--enable-memcacheが付いてないからかな?
0513nobodyさん
2012/02/11(土) 19:08:10.33ID:F655tJI8俺なら$e_day
0514507
2012/02/11(土) 19:10:56.25ID:???> Newer PHP versions don't have a --enable-memcache options; simply installing the PECL package will be enough... so to be absolutely clear, you WON'T have to recompile PHP to use memcache.
ってのを見たので、configureのオプションにあるならつけないとだめかも
0515nobodyさん
2012/02/11(土) 19:20:50.28ID:???俺もたぶんそうする。
ちなみに今使ってる変数名
$t_name
$t_t_name
$r_name
入力補完もあるし、他の人が読むことを考えると、
もっとわかりやすい方がいいんだろうけど。
0516nobodyさん
2012/02/11(土) 20:08:28.77ID:???0517nobodyさん
2012/02/11(土) 20:22:41.21ID:nzSgga7d俺だけじゃなくてよかった
0518nobodyさん
2012/02/11(土) 21:25:26.47ID:???0520508
2012/02/11(土) 22:01:37.87ID:bam167aqこれだと自分の場合、「終了日」と誤解しそうで。
キャメルケースは関数名に使うことありますが、
変数名はないですね。
コメントとか仕様書に残せばある程度短縮文字でも良いんですかね。
さすがに$establishment_dayは長すぎてパッと見た瞬間分かりづらいし。
0522nobodyさん
2012/02/11(土) 23:53:10.01ID:ec+1ByNd【サーバ環境】
CentOS6.2 + xdebug 2.1.3
php.iniの設定
[XDebug]
extension=xdebug.so
xdebug.remote_enable=1
xdebug.remote_autostart=1
xdebug.remote_port=9001 <- 9000ではNGという海外の書き込みを見て変更
xdebug.remote_handler=dbgp
xdebug.remote_host=192.168.0.100
xdebug.remote_mode=req
phpinfoでxdebugがenableになってるのを確認
【クライアント環境】
Windows 7 + Eclipse Indigo
ネットワーク設定->192.168.0.100/24 固定IP サーバからping確認
ファイアウォール設定->受信規則にポート9001を受け入れるように設定
下に続きます。
0523552
2012/02/11(土) 23:53:35.89ID:ec+1ByNd[ウィンドウ]-[設定]-[PHP]-[DEBUG]
でXdebugを選択、ポートを9001に変更、serverもサーバのIPで設定、他はデフォルト
[デバッグの構成]
sever debugger->xdebug
phpserver -> 上で作成した設定を指定 File->デバックするファイルを指定、他はデフォルト
【症状】
デバックを実行すると、デバッグ用のパースペクティブになるのですが、
ブレークポイントで止まった感じも無く、実効結果がすぐに[内部webブラウザー]と[Debug Output]に表示されます。
どうしたら良いでしょうか・・。
0524nobodyさん
2012/02/12(日) 17:42:49.77ID:T+9lcsG5KBに直すには、1024を掛けるのでよろしいでしょうか?
1000を掛けるのでしょうか?
$size=@filesize($upload_name)/1024;
0526nobodyさん
2012/02/12(日) 19:44:33.66ID:???0527nobodyさん
2012/02/12(日) 21:47:54.78ID:???{;;;;;;ゝ T辷iフ i f'辷jァ !i;;;;; filesizeで取得したファイルのサイズを
ヾ;;;ハ ノ .::!lリ;;r゙ KBに直すには、1024を掛ける・・・・
`Z;i 〈.,_..,. ノ;;;;;;;;> そんなふうに考えていた時期が
,;ぇハ、 、_,.ー-、_',. ,f゙: Y;;f 俺にもありました
~''戈ヽ `二´ r'´:::. `!
0528nobodyさん
2012/02/12(日) 22:22:13.85ID:E3xYO+Pkこれってcookieを削除したら再投票可能ですか?
0529nobodyさん
2012/02/12(日) 22:28:44.89ID:???私もそう思う 私は思わない ってやつ
0531nobodyさん
2012/02/12(日) 22:45:37.90ID:E3xYO+Pkありがとうございます!
わざわざ書いて試すのがめんどーだったから尋ねたのですが教えてくれそうにないので試します
0533nobodyさん
2012/02/12(日) 22:54:57.96ID:???0534nobodyさん
2012/02/12(日) 23:05:15.68ID:MdyL4A8RまたsymfonyやCakePHPなどのフレームワークもみんな重いです。
これらの重さはPHPだから仕方がないの問題なのでしょうか?
0535nobodyさん
2012/02/12(日) 23:10:11.35ID:???php6.0とかになって一斉に動かなくなったらワロリンコ
0536nobodyさん
2012/02/13(月) 02:47:58.30ID:???基本的にフレームワークはソースを効率化する為に使う物で
その為に余計な処理も入るから重くなるんだよ。
重さを軽減させるために、キャッシュ機能を使うけどね。
開発効率か速度かどちらか重視して使えば良いんじゃないかな。
0537nobodyさん
2012/02/13(月) 12:31:14.14ID:???重くなるのはPHPのインタープリタの特性と
キャッシュの貧弱さに由来すると思うけど。
PHPでオブジェクト指向のパフォーマンスはほんとにダメ。
0538nobodyさん
2012/02/13(月) 13:57:31.22ID:???優秀なオマエラならモジュールの結合テストもう済ませてるよな
0539nobodyさん
2012/02/13(月) 14:10:49.16ID:???0540nobodyさん
2012/02/13(月) 15:01:11.94ID:???0541nobodyさん
2012/02/13(月) 17:05:49.64ID:???0542nobodyさん
2012/02/13(月) 17:13:35.56ID:???0543nobodyさん
2012/02/13(月) 17:35:35.21ID:???今はどうなんだろうな。
0544nobodyさん
2012/02/13(月) 17:41:53.44ID:???キリストが再臨すれば困ったことになるな。
0545nobodyさん
2012/02/13(月) 18:00:01.82ID:xFiWWsj/バブルの崩壊、日本の失われた20年は平成になったあたりから始まった。
年号が、変われば、きっと日本は明るくなる。
次の年号は上世とか、登安とか、上ってく名前がいい。
0549nobodyさん
2012/02/13(月) 21:48:05.71ID:dtlHANwtforeach($date_before as $value){
$t=0;
$date_after[$t]=$value;
echo $date_after[$t].'<br>';//正常に表示
$t=$t+1;
//echo $value.'<br>';
}
for($t=0;$t<$i;$t++){
echo $date_after[$t].'<br>';//エラーが出る
}
何故エラーがでるのでしょう? どうしたらいいのでしょうか?
0550nobodyさん
2012/02/13(月) 21:50:08.09ID:???0551nobodyさん
2012/02/13(月) 21:53:34.84ID:???0552nobodyさん
2012/02/13(月) 21:56:57.73ID:???0553nobodyさん
2012/02/13(月) 22:03:58.95ID:???0554nobodyさん
2012/02/13(月) 22:04:01.85ID:dtlHANwt$iを消して10にしましたが、エラーというか
一番先頭が値がありで、1〜9が値なしです。
0555nobodyさん
2012/02/13(月) 22:06:33.47ID:???http://jp2.php.net/manual/ja/language.variables.basics.php
例1 初期化されていない変数のデフォルト値
<?php
// 設定も参照もされていない (使用中のコンテキストではない) 変数は NULL となります
var_dump($unset_var);
はい残念
0557nobodyさん
2012/02/13(月) 22:52:56.00ID:???4行目に毎回 $date_after[0]=$value; をしているわけだが。
0558nobodyさん
2012/02/13(月) 23:03:44.80ID:dtlHANwtforeach分の外に出すと、正常に表示されました。
皆様ありがとうございました。
0560nobodyさん
2012/02/14(火) 01:51:59.94ID:PYbwAQUMエラーが出ます。onclickで関数を実行でその引数を指定するときは
どのようにしたらいいのでしょうか?
0561nobodyさん
2012/02/14(火) 02:05:09.73ID:???吐き出されるソースをよく見てみ
0563nobodyさん
2012/02/14(火) 05:20:47.07ID:???> blue(''$file
シングルクォートが2個らしいよこれ
なもんで、HTMLエラーじゃないと思う。なもんで>>559
0564nobodyさん
2012/02/14(火) 05:32:22.93ID:???よく気づいたな
ヒント:
エスケープ
PHPの文字連結はドット
0565nobodyさん
2012/02/14(火) 10:32:18.76ID:VUGkLJ/d0566nobodyさん
2012/02/14(火) 13:09:24.88ID:???0568nobodyさん
2012/02/14(火) 14:54:11.43ID:Tk30SVBqhttp://phpjavascriptroom.com/?t=php&p=apachephpwindows7
のインストール部分をC直下ではなくD直下に変えて他はそのままにして下記のプログラムを実行しました
<?php
phpinfo();
?>
何故でしょうか
0569nobodyさん
2012/02/14(火) 15:05:52.59ID:???ずっと下の方の
LoadModule php5_module "C:\PHP\php5apache2_2.dll"
AddType application/x-httpd-php .php
この2つがあればそんな風にはならん。
Apache再起動したか?
0570nobodyさん
2012/02/14(火) 15:13:14.59ID:Tk30SVBqはい、再起動しました
0571nobodyさん
2012/02/14(火) 15:17:14.51ID:???0572nobodyさん
2012/02/14(火) 15:28:56.61ID:Tk30SVBq解決しました
Control Apache Server→Restart/start/stop のRestart/Stopが正常に動作していなかったようです
1回Windowsごと再起動してからもう1度起動するとできました
お騒がせしました
0573nobodyさん
2012/02/14(火) 18:54:42.00ID:VUGkLJ/d''→'.
''→.'
こうか
0574nobodyさん
2012/02/14(火) 18:58:30.06ID:???0575553
2012/02/14(火) 20:00:27.18ID:???「結果」は理由じゃないんだよ。
$iが定義されてないから
と
$iが定義されてないからNULLの値を見せる
は別なの
0577553
2012/02/14(火) 21:01:40.14ID:???0578nobodyさん
2012/02/14(火) 21:09:05.47ID:???0580553
2012/02/14(火) 22:40:54.39ID:???そういう風に詰めていくならもともとの質問は「エラーが出る」しか言ってないんだから、
NULLだという指摘は、<結果的にそれが原因>という可能性の一つになるだけ。
$iが(引用行外で)定義済みなら、NULLが入っているか、型が違ってるか、$iがarrayならそれがNULLではなくて
空か、ということが考えられる。他方$iがどこでも定義されてないなら定義してないからだ(NULLは単なる結果)、
という風になる。
なお578は論外の売り言葉買い言葉にすぎない。
0581nobodyさん
2012/02/14(火) 22:43:48.45ID:???何言ってんだwごまかしてるだけだろwワロタw
0582nobodyさん
2012/02/14(火) 22:46:29.54ID:???http://jp2.php.net/manual/ja/language.types.null.php
NULL
特別な NULL 値は、ある変数が値を持たないことを表します。NULL は、NULL 型の唯一の値です。
変数は、以下の場合に NULL とみなされます。
■定数 NULL が代入されている場合。
■まだ値が何も代入されていない場合。
■unset() されている場合。
はい残念
0583nobodyさん
2012/02/15(水) 00:09:17.17ID:???echo '<script type="text/javascript">';
echo 'alert("hello world 2012")';
echo "<\/script>";
?>
エラーになるますどうしたらいいですか?
0586nobodyさん
2012/02/15(水) 02:50:37.77ID:???もうね、俺は本当にどうだっていいんだけど、これをみて$iにもっていく勇気が俺にはないだけなんよ。
> echo $date_after[$t].'<br>';//エラーが出る
0587nobodyさん
2012/02/15(水) 05:27:01.38ID:x/xi+W4J//ファイルの取り出し
$file_name=$_FILES['filename']['name'];
//一時ファイル名の取り出し
$temp_name=$_FILES['filename']['tmp_name'];
// 保存先のディレクトリ
$dir = 'uploads/';
// 保存先のファイル名
$upload_name = $dir.$file_name;
// JPEG形式、GIF形式のファイルをアップロードする
// アップロード(移動)
$result = move_uploaded_file($temp_name, $upload_name);//これがないと失敗
echo ($result)?'アップロード成功':'アップロード失敗';
?>
<img src="<?php echo $upload_name; ?>">
において、全く同じ時間に画像アップロードした場合は
どうなるのでしょうか?
また、画像のファイル名をdate関数で作成したときなどは
どうなるのでしょうか?
0588nobodyさん
2012/02/15(水) 05:29:24.65ID:???ファイル名がかぶる可能性があるなら
連番で振るとか
すでに存在していたら画像の後ろに数字をつけるとか
いろいろ方法はあるでしょう
0589nobodyさん
2012/02/15(水) 05:55:11.81ID:x/xi+W4Jわかりました。
今、画像アップローダー作ってるのですが(6割ほど完成)
jpg、pjpeg、gif、png、bmpだけに対応でいいですかね?
0590nobodyさん
2012/02/15(水) 06:01:50.75ID:???0591nobodyさん
2012/02/15(水) 09:55:27.24ID:GiPiqyn4定義しない限りNULLは返らないと思っていたのですが
定義しなくてもNULLが返ってくるというのはどういう場合ですか?
0592nobodyさん
2012/02/15(水) 10:17:02.48ID:???0593nobodyさん
2012/02/15(水) 21:37:22.21ID:???ずっとutf-8を使っていたのですが、
GDでの画像描画がutf-8だとうまくいかなかったので
(エラーも何も表示されない)
はじめてutf-8nを使ってみました。
•一般的に、PHPは8nで書いたほうが良いのでしょうか?
•逆に、8nを使うことで発生するトラブルはあるのでしょうか?
0596593
2012/02/15(水) 21:55:40.37ID:5iudVdKB>>594
まじすか。
なんでだろう…
PHP5.3.8でGD2.0.34。
以下のコードをTeraPadのUTF-8で保存するとページ真っ白
UTF-8Nで保存すると意図通りの四角が出ます。
<?php
Header ("Content-type: image/png");
$image = imagecreate(50, 50);
$shikaku = imagecolorallocate($image, 0, 0, 0);
imagepng($image);
imagedestroy($image);
?>
0598593
2012/02/15(水) 22:19:48.19ID:???>>597
レスありがとう。
最初にsage忘れたせいでややこしくて申し訳ないんだけど、
BOMのせいでページが真っ白だった、というのは理解できています。
知りたいのは、
•もうPHP書くときはずっとutf-8n使った方が幸せになれるか
•>>594はどうしてutf-8で使えたのか
です。
0600593
2012/02/15(水) 22:24:04.09ID:5iudVdKB本 当 に 申し訳ありません…
>>593 •>>596 です。
>>597
レスありがとう。
最初にsage忘れたせいでややこしくて申し訳ないんだけど、
BOMのせいでページが真っ白だった、というのは理解できています。
知りたいのは、
•もうPHP書くときはずっとutf-8n使った方が幸せになれるか
•>>594はどうしてutf-8で使えたのか
です。
0601nobodyさん
2012/02/15(水) 22:27:49.65ID:???0602nobodyさん
2012/02/15(水) 22:34:15.78ID:???質問の回答になっているけど、UTF-8Nという呼称自体が元々日本独自の呼称で
最近その日本でもほとんど使用されなくなってきていることから
一般的にUTF-8と言った場合はBOM無しを指すという業界の共通認識があるので
>>594はBOM無しのUTF-8を指していると思うよ。
あと1つ目の質問だけど今時はBOM有りに何らメリットはないのでBOM有りのことは忘れよう。
0603593
2012/02/15(水) 22:42:20.59ID:5iudVdKB>>601 >>602
回答本当にありがとう!
TeraPadのデフォ設定ばっちり変更しました。
さよならBOM。
無駄にレス消化しちゃってごめんね。
解決できて感謝してます。
0604nobodyさん
2012/02/16(木) 02:36:52.86ID:???0605nobodyさん
2012/02/16(木) 04:18:49.73ID:???0606nobodyさん
2012/02/16(木) 05:03:04.18ID:???0607nobodyさん
2012/02/16(木) 06:14:28.88ID:???0608nobodyさん
2012/02/16(木) 07:48:03.60ID:UroJIk1P最近PHPを勉強しはじめたばかりです。ある書籍を使って学んでいます。
ttp://pastebin.com/Y1mU93jq
上記サイトにソースをコピーしました。
DBから商品リストを取得する際に、5カラムごとに表示させるというものですが、
一応問題なく動きます。ですが、index.phpにそのまま入るとエラーで
Notice: Undefined index: page in D:\xampp\htdocs\shop\index.php on line 3
と、出ます。原因は想像がつくのですが対処法がわかりません。書籍のサンプルを実行したところ
同様のエラーがでていまして。。。
お手数ですが、どうのようにすれば良いのでしょうか?
0609nobodyさん
2012/02/16(木) 07:53:32.53ID:???フォームから、0216 または 2/16 と入力されるデータを
02/16に統一したいんですが、どんな関数を使ったらいいんでしょうか?
str_replace とか preg_match とか、いろいろありすぎてよくわかりません。
springf で %d を使ってみたのですが、スラッシュ以降が捨てられてしまいました。orz
一文字ずつ文字か数字か調べて、二文字目にスラッシュがでてきたら、最初にゼロを加えて・・・
みたいな処理を書いてもいいんですが、PHPなら一発でやってくれる関数がありそうですよね。
どなたかご存知でしたら教えてください。よろしくお願いします。
0610nobodyさん
2012/02/16(木) 07:58:11.14ID:???$page = '';
if (isset($_REQUEST['page'])) {
$page = $_REQUEST['page'];
}
もしくは
$page = isset($_REQUEST['page']) ? $_REQUEST['page'] : '';
0613608
2012/02/16(木) 08:10:51.64ID:UroJIk1P>>612
返信ありがとうございます。
なるほど・・・。if分と初期化までは浮かんだのですが、$pageじゃなくてpageだしなぁ・・・と考え込んでました。
さっそく試したらばっちりでした。ありがとうございました!。
xamppだめですか; 安全性とかからでしょうか?。。。
0614nobodyさん
2012/02/16(木) 08:22:39.74ID:???Undefined index〜ってエラーは配列のキーの値が見つからなかった時によく見るエラーだから覚えとくといい
Noticeだから人によっちゃエラーリポートをきって無視するって人もいるが
>>610のissetで最初にチェックする対処法が王道
0615609
2012/02/16(木) 08:25:27.77ID:Dbcdet1T0616nobodyさん
2012/02/16(木) 08:28:44.34ID:???ローカルでテストする分には問題ないよ
0617nobodyさん
2012/02/16(木) 08:30:59.90ID:???/を除去してsprintf %04dして最後に真ん中に / 付ければいいんじゃない?
もっと簡単な方法があるかは知らんけど
0618nobodyさん
2012/02/16(木) 08:34:59.14ID:+jbHYpFg$page = isset($_REQUEST['page']) ? $_REQUEST['page'] : '';
この?と:ってどういう意味ですか?
0619nobodyさん
2012/02/16(木) 08:35:48.18ID:???0620608
2012/02/16(木) 08:44:05.91ID:UroJIk1P評価の高かった書籍だったので(ほかの書籍は実は途中で挫折)購入してやってみると
phpっておもしろいなぁと初めて思えていますw
聞いて良かったです。書籍の答えもエラーなので放置してる人もいそうですが、気持ち悪かったもので;
本当にありがとう。
xamppはローカルのみなので大丈夫かな。ありがとうございました。
0622608
2012/02/16(木) 08:58:51.66ID:UroJIk1Pそういえばxampp設定時にiniを触りましたね。。。てことは、デフォルトでは切れてたのか・・・。
なるほど、すごく納得しました。
ありがとう、連投すいません。
0623nobodyさん
2012/02/16(木) 09:08:57.78ID:???0624608
2012/02/16(木) 09:15:50.47ID:UroJIk1P私?別人です。
0625nobodyさん
2012/02/16(木) 09:20:25.11ID:Dbcdet1Tありがとうございます。それでやってみます!
0626625
2012/02/16(木) 09:22:23.87ID:Dbcdet1T最初に スラッシュを取り除くと、 1/27 と 12/7 の区別がつかなくなってしまうんです。
入力する人たちに統一してもらえたらいいんですが・・・。
0627nobodyさん
2012/02/16(木) 09:26:37.06ID:???0628nobodyさん
2012/02/16(木) 09:30:16.32ID:+jbHYpFgへえ、そういう記法があったのですね。ありがとうございます。
0629nobodyさん
2012/02/16(木) 09:35:11.87ID:???0631nobodyさん
2012/02/16(木) 13:02:15.76ID:???スラッシュつきを先にやれば問題ないでしょ。
あと環境かいてないから提供されてる関数については教えられず。
0632nobodyさん
2012/02/16(木) 13:33:51.23ID:RNA+7C4LcsvA
hoge@hoge.com,田中太郎
hoge2@hoge2.com,山田花子
hoge3@hoge3.com,鈴木太郎
csvB
hoge@hoge.com
hoge3@hoge3.com
と、2つのCSVがあるとして
phpを実行すると
csvC
hoge@hoge.com,田中太郎
hoge3@hoge3.com,鈴木太郎
というようにcsvBに一致する行を抽出して別csvに保存出来る物を作りたいです
どうすれば出来ますでしょうか?
お願いします
0633nobodyさん
2012/02/16(木) 13:43:19.73ID:???foreachで回して適合したヤツを別の配列Cにぶち込んで
配列Cをcsvで吐き出すかんじか
DBつかったほうがサバに優しいと思う
0634nobodyさん
2012/02/16(木) 13:58:17.91ID:???レスありがとうございます
一度試してみます!
ローカル環境で使用するつもりなのでphpで行いたいと思います
0635nobodyさん
2012/02/16(木) 14:11:37.35ID:???すぐ慣れるしできることが広がる
0636nobodyさん
2012/02/16(木) 14:14:14.01ID:2CwemWqC0637nobodyさん
2012/02/16(木) 14:23:58.88ID:RNA+7C4L>>636
レス有難うございます
当方php初心者な者で・・・
mysql+phpでinsertくらいは出来るのですが
イマイチ今やりたい事がどうやれば出来るのかがわからないです;
0638nobodyさん
2012/02/16(木) 14:31:36.91ID:???論よりrunっていうじゃん
とりあえずコード書いてみて動かなければスレ住人がアドバイスくれると思う
丸投げなら5000円でやってあげなくもない
0639nobodyさん
2012/02/16(木) 15:07:23.79ID:kcwNwXq8なるほど。strposでスラッシュを探して、ありやなしやで処理を変えて
strtotimeとdateあたりで、できそうですね。ありがとうございました。
0640nobodyさん
2012/02/16(木) 15:08:59.12ID:kcwNwXq80641nobodyさん
2012/02/16(木) 15:09:33.74ID:???いったん全部同じフォーマットにしてしまうという方法もある。
数値型にしてしまうとか、日付型にしてしまうとかね
0642nobodyさん
2012/02/16(木) 15:12:07.26ID:ySUB6ST30643nobodyさん
2012/02/16(木) 15:18:32.11ID:???$b = file("b.csv",FILE_IGNORE_NEW_LINES);
$fp = fopen('c.csv', 'w');
foreach(file("a.csv") as $var){
$l=str_getcsv($var);
if(in_array($l[0],$b))fputcsv($fp, $l);
}
fclose($fp);
0644nobodyさん
2012/02/16(木) 16:09:17.55ID:???ぶちゅーぶりぶり
0645633
2012/02/16(木) 18:14:40.57ID:RNA+7C4Lありがとうございます;;
助かりました
0646nobodyさん
2012/02/16(木) 18:22:00.74ID:???0648nobodyさん
2012/02/16(木) 18:47:40.34ID:???0649nobodyさん
2012/02/16(木) 21:29:38.02ID:???0650nobodyさん
2012/02/17(金) 07:27:18.28ID:uCAZxDKu今回も同じような質問で恐縮なのですが、Notice: Undefined index〜エラーが連発しました。
元ソースです ttp://pastebin.com/JcAYvrmH
エラ− Notice: Undefined index〜 line 36 37 45 46 54 55
そこで、昨日教えて頂いたので、自分なりに追記し、エラーを掃かなくなりました。
4行目と27行目に追加 ttp://pastebin.com/F3xP74Yx
この書き方で良いのでしょうか?
少し疑問に思ったのは、今回のような場合の大きいフォームの時に、冒頭に多数の配列のキーを書いていくことになるのでしょうか?
他に方法があるのでは?と、ご教授願いたく質問させて頂きました。
よろしくお願いします。
0652650
2012/02/17(金) 07:34:52.02ID:uCAZxDKu返信ありがとうございます。
マニュアルは、はい、一応見てはいます。見てはいるんですが、なかなか理解が。。。
それで、別のブログ?とかで説明して頂いてるようなサイトも見たり。
理解が乏しくてすいません。
0653nobodyさん
2012/02/17(金) 07:38:07.95ID:???それで手を抜いてマニュアル読まないようじゃ、本末転倒だと思うよ
0654650
2012/02/17(金) 08:03:12.13ID:uCAZxDKu返信ありがとうございます。
あの、とても質問しにくいのですが、
マニュアルとはarrayについてなのでしょうか、それとも、追記のそのものが違うということなんでしょうか。
arrayは、キーが整数ならば多少の省略ができるみたいですが、文字列となると単純には難しい感じなのかな。
連想配列のキーが何であっても空を入れるような・・・というより$errorはキーさえも入ってない状況?だから
どうでにもできないのかな?
とマニュアルを見て思いました。
0655nobodyさん
2012/02/17(金) 08:11:36.95ID:???>>650
$error = array('name' => '', 'email' => '', 'password' => '');
これ入れると22行目で常に空じゃなくっていつまでも確認ページにジャンプされないんじゃない?
俺なら先頭に
$data = array('name' => '', 'email' => '', 'password' => '');
// $_POSTからname email passwordがあれば入れる
foreach (keys($data) as $key) {
if (isset($_POST[$key])) {
$data[$key] = $_POST[$key];
}
}
でそれより下の$_POSTを全部$dataに置き換えする
0656nobodyさん
2012/02/17(金) 08:18:41.12ID:???PHPの公式マニュアルは難しい参考書や問題集ではなく、入門向けの基礎ドキュメントになってる。
「はじめに〜機能」まではPHP開発者なら当然抑えておくべき知識。上級者でなく初心者のね。
最低限「はじめに〜言語リファレンス」までは理解していないと質問の会話も通じないし既存サンプルコードも理解できない。
読んで基礎を身に着けてから開発したほうがいいよ。
(一通りとかじゃなくて、ちゃんと理解して)
0657nobodyさん
2012/02/17(金) 08:19:04.20ID:???関数リファレンスは、最低限主要な関数くらいは見ておいたほうがいい
0658nobodyさん
2012/02/17(金) 08:19:39.49ID:???フォーム関係だと、値を確認しないと危ないからどうしても長くなるよ
0659650
2012/02/17(金) 08:46:33.43ID:uCAZxDKu>>655
ご指摘どおり動きませんでした。
エラーが消えて喜んでいたので、このまま参考書通り進めていったら気がつかなかったと思います。
たぶんエラーが消えたので、その箇所が問題だと疑問に思ってなかったと思うのです。
ぜひ参考にさせて頂こうと思います。foreachは浮かんだのに、そこからが出て来ないという。
>>656-658
あー、見てないです・・・知らなかったです。辞書のようなものだと思って
検索エンジンから関数入力して、直接その関数だけのを見てました。
トップページ見たことなかったです。。。
これは、嬉しい。必ず見て理解しながら、今の参考書をやろうと思います。
稚拙な質問ですいませんでした。ほんとにありがとうございました。
0660nobodyさん
2012/02/17(金) 09:23:09.19ID:???俺は657-658だけど、ぶっちゃけ書籍とかいらない。
情報古いし誤記はあるし公式マニュアルの方が詳しいし。
今回みたいなことが発生する度にここで質問してたら一向に先に進まないから
基礎を身に付けてある程度自分で考えたり調べられるようになったほうがいいよ
0661nobodyさん
2012/02/17(金) 10:15:08.87ID:???実際にサイトに設置するスクリプト書いた時直せばいい
0662nobodyさん
2012/02/17(金) 16:27:16.33ID:w/M88VPzとなると、デザイナーが、
「ここ2ページふやしたいな」
「ここ、ディレクトリかえたいな」
とかなったらいちいちプログラマーがコントローラを
書き換えないとダメなんですか?
0663nobodyさん
2012/02/17(金) 16:51:20.31ID:UxdMuJ4NコントローラがViewのインターフェイスに依存してる
0664nobodyさん
2012/02/17(金) 19:36:37.46ID:7dv+Ag3yファイルの先頭で、PDOインスタンスを生成して、DB操作をしています。
しかし、関数内では、ローカル領域のため、そのまま$dbhを使用したくても無視されます。
関数内で、DB操作するための解決策として、
1.「global $dbh」のようにグローバル宣言をする
2.「$dbh」を関数の引数で渡す
のように考えたのですが、どうするのがベストなのでしょうか?
0665nobodyさん
2012/02/17(金) 20:07:52.04ID:???0666nobodyさん
2012/02/17(金) 20:55:18.79ID:???$dbh = $GLOBALS["dbh"];
とかかな
0667660
2012/02/17(金) 20:55:35.29ID:???0668650
2012/02/17(金) 21:27:24.10ID:uCAZxDKuありがとうございます。がんばります!
0669nobodyさん
2012/02/17(金) 22:58:30.87ID:MzraE+7u機種依存文字とか半角カナに対応する場合、
mb_send_mailよりmail関数で送信する方が良いのでしょうか?
また、iso-2022-jpよりUTF-8の方が文字化けリスクは少ないのでしょうか?
0670nobodyさん
2012/02/17(金) 23:22:09.91ID:???0671nobodyさん
2012/02/17(金) 23:39:23.76ID:???0672nobodyさん
2012/02/17(金) 23:44:54.56ID:???送信関数のバグか、受信側のエンコード認識ミスなのか、回線に比べサイズが大きすぎて送受信にミスるのか。
いちばん手軽に実装できる方法でやってみてそのエラーを書け。
0673nobodyさん
2012/02/17(金) 23:49:47.62ID:MzraE+7uUTF-8のファイルに、mb_send_mailで機種依存文字や半角カナを送り、
outlookやgmailで受信すると文字化けします。
というか>>669は間違いなんでしょうか?
ググってもmb_send_mailは文字化けするから使うなってあります。
実際文字化けするので、そうなのかとは思いますが、
単にコードの書き方が悪いのかも?と思い、質問した次第です。
0675nobodyさん
2012/02/17(金) 23:54:35.00ID:MzraE+7umb_send_mail($email, 'テストメール', 'アアア');
UTF-8のファイルに単純に上記を書いてテストしています。
日本語メールをそう指定しているので、iso-2022-jpになるわけですが、
上記のままだと文字化けします。
mb_language('uni');にしてmail関数で送ると文字化けしません。
だからUTF-8にしてmail関数で送るのが正しいのでは?と思い、質問した次第です
0676nobodyさん
2012/02/17(金) 23:56:51.68ID:???0677nobodyさん
2012/02/17(金) 23:57:09.06ID:???0678nobodyさん
2012/02/18(土) 00:04:31.94ID:XbBhkQAFmb_send_mail使っても文字化けしない方法ってあるんですね。
もう少し調べてみます。
mb_internal_encoding("UTF-8");
mb_language('ja');
$to = "メールアドレス";
$subject = mb_encode_mimeheader('テストメール');
$body = mb_convert_encoding('アイウエオ', 'sjis-win', 'UTF-8');
mail($to,$subject,$body);
0679nobodyさん
2012/02/18(土) 01:35:47.85ID:???要するに設定次第で上手くいく。
0680nobodyさん
2012/02/18(土) 05:00:23.69ID:QcioPwmz<input name="MyArray[]" />
<input name="MyArray[]" />
<input name="MyArray[]" />
これをHTTP_REQUESTでaddPostDataするにはどうしたら良いでしょうか?
0681nobodyさん
2012/02/18(土) 05:12:01.30ID:???foreach ($_POST['MyArray'] as $v) {
$req->addPostData("MyArray[]", $v);
}
0682nobodyさん
2012/02/18(土) 10:29:51.01ID:10KYAU7Yさくらスタンダード、 PHP Ver5.2.17(CGI版)で、
$ipaddr=gethostbyname($domain);
の時間を測定すると、通常はマイクロ秒くらいの一瞬で終わるのですが、
ときどき5秒くらいかかることがあります。
同じドメインでも一瞬で終わるときと時間がかかるときがあるようです。
0683nobodyさん
2012/02/18(土) 11:40:26.02ID:???関数どうこうでなる問題じゃないでしょう
0684nobodyさん
2012/02/18(土) 12:10:41.22ID:10KYAU7Yやっぱり無理ですか、残念ですがガマンすることにします。
ありがとうございました。
0685nobodyさん
2012/02/18(土) 18:36:17.03ID:Agr52FPRfile_get_contentsだとタグ等を取得できません。
ソースをそっくりそのまま取得するにはどうしたら良いでしょうか?
0686nobodyさん
2012/02/18(土) 18:37:10.00ID:AZw1wiBM0687nobodyさん
2012/02/18(土) 18:44:16.60ID:???0688nobodyさん
2012/02/18(土) 18:44:44.12ID:???0689nobodyさん
2012/02/18(土) 18:46:05.98ID:???0690nobodyさん
2012/02/18(土) 18:47:33.53ID:???0691nobodyさん
2012/02/18(土) 18:58:51.71ID:Agr52FPR<?php
echo file_get_contents('http://www.yahoo.co.jp/');
?>
これだとソースではなくページを表示しますが、これを下のように
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="ja">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta http-equiv="content-style-type" content="text/css">
<meta http-equiv="content-script-type" content="text/javascript">
<meta name="description" content="日本最大級のポータルサイト。検索、オークション、ニュース、メール、コミュニティ、ショッピング、
など80以上のサービスを展開。あなたの生活をより豊かにする「ライフ・エンジン」を目指していきます。">
<title>Yahoo! JAPAN</title>
etc
とソースを表示させたいです、どうすればいいでしょうか?
0693nobodyさん
2012/02/18(土) 19:40:17.07ID:Agr52FPR0694nobodyさん
2012/02/18(土) 20:52:04.00ID:GMcMwBnHまた、利用規約は禁止事項、アダルト禁止や、児童ポルノ画像は
通報する等の警告を書かないとダメだったりしますか?
0695nobodyさん
2012/02/18(土) 21:01:41.90ID:???アダルトはどこからアウトでどこからセーフかという問題があって難しいですね
少年漫画のパンチラレベルならおkなはずです
アダルト画像判別ライブラリがあるといいのですが
0696nobodyさん
2012/02/18(土) 21:15:41.43ID:AZw1wiBM他人のコンテンツは勝手にいじれない
規約に同意させて特定のコンテンツについて当事者に加えてもらえば自分のもんだから消し放題になる
0697nobodyさん
2012/02/18(土) 21:20:25.30ID:???ttp://asonofumoto.cocolog-nifty.com/photos/uncategorized/2011/10/19/200511_img_5.jpg
0698nobodyさん
2012/02/19(日) 02:22:12.54ID:wQztI7LLだが、スマートフォンに対応してないニュースサイトがあるため、xmlの中のtitleとbodyを取得して、スマホ向けにデザインを変更したいんだがどうすればいい?
一時的にhtmlを自動生成すればいいの?やり方がわからぬ、、、。
0699nobodyさん
2012/02/19(日) 02:23:30.04ID:???スレ違い
http://kohada.2ch.net/test/read.cgi/php/1271172618/
0700nobodyさん
2012/02/19(日) 10:43:18.52ID:DFHu3tLC書き込み用モードで開くと自動的に排他制御になるのでしょうか?
同じリソースを使って書き込み/読み込みをしようとa+を指定したとき、
読み込みでも排他制御されてるようです。
これは困るのですが読み込みと書き込みは、
別々のリソースで管理しないとだめなのでしょうか?
0702nobodyさん
2012/02/19(日) 11:14:52.49ID:ULtF97rdfor(i=0; i<10; i++){
$data["thanks$i+1"] = $i;
}
だとうまくいかないっす。
i+1をあそこに書くにはどうしたらいいんでしょうか?
0703700
2012/02/19(日) 11:15:31.80ID:DFHu3tLC読み込みには入れてません。
0704nobodyさん
2012/02/19(日) 11:23:10.10ID:???$data["thanks".$t]=$i;
0705nobodyさん
2012/02/19(日) 11:32:17.68ID:???ありがとう
ちなみに、文の中に数式を埋め込むのは不可なのですか。
関数だったら返り血使って普通にやりますよね?
0709nobodyさん
2012/02/19(日) 15:38:42.75ID:???0710nobodyさん
2012/02/19(日) 22:01:19.96ID:0c+jTY14有名SNSゲームが二重ログインのバグでサービス停止になったらしく気になります。
0712nobodyさん
2012/02/19(日) 22:08:06.99ID:???あれは二重ログインとはまた別の話だよね。
二重ログイン防止はセッションをDBで管理すればいいかな。
0713nobodyさん
2012/02/19(日) 23:25:00.75ID:TyCjVWx4ドリランドの件です。
バグの利用だそうですが、「二つの機器のアカウントを同じにする」とあるので、
二重ログインにも関係していると思いました。
0714nobodyさん
2012/02/19(日) 23:49:52.59ID:???0715nobodyさん
2012/02/20(月) 00:32:56.31ID:0kztJ4Qettp://blog.livedoor.jp/dqnplus/archives/1697409.html
遅れてすみません。
>>714
見る限り、トランザクションは関係ないようです。
デュープとかいう手法でアイテムを複製されるバグのようです。
0716nobodyさん
2012/02/20(月) 00:51:48.56ID:???0718nobodyさん
2012/02/20(月) 01:49:12.03ID:???トランザクションでググればみんなが言ってる事が理解できるよ
あんたもプログラマの端くれなら
憶測で物事を決め付けてかかる癖は直しなさい
0719nobodyさん
2012/02/20(月) 03:43:08.72ID:???排他制御って書いてやれよ
0721nobodyさん
2012/02/20(月) 12:18:04.55ID:GErhC2S3"curl idn enable"でggってみてそれらしきページはあったんですが何を言ってるのがサッパリでした
OSはwindows vistaでPHPはver.5.3.8、cURLは7.21.7です
0722nobodyさん
2012/02/20(月) 12:56:17.89ID:???何を言ってるのかサッパリならわからない単語でさらにぐぐらないと。
そうやって技術書をスタックにつんでこそ。
0723nobodyさん
2012/02/20(月) 14:12:46.11ID:???でも俺だけっぽいな?
0724nobodyさん
2012/02/20(月) 14:14:15.72ID:???0725nobodyさん
2012/02/20(月) 14:19:42.73ID:7zywTD2d俺も繋がらないよ (千葉県でOCN回線)
0727nobodyさん
2012/02/20(月) 14:34:51.94ID:???jp.php.net→変なメッセージが出る
jp2.php.net→サーバが見つからない
0728nobodyさん
2012/02/20(月) 14:37:32.11ID:???http://us.php.net/
http://us2.php.net/
0729nobodyさん
2012/02/20(月) 14:40:31.59ID:???php.net
繋がらないPCだと[64.246.30.37]
繋がるPCだと[69.147.83.197]
0730nobodyさん
2012/02/20(月) 14:42:50.02ID:???0732nobodyさん
2012/02/20(月) 15:56:02.91ID:???0733nobodyさん
2012/02/20(月) 16:01:28.31ID:???内部コードがUTF16のPHPも作れるが、計画して進展しないのはやはりソースの解析速度だろ。
0734nobodyさん
2012/02/20(月) 16:09:55.54ID:???0735nobodyさん
2012/02/20(月) 16:15:07.69ID:???PHPはperlに元にしてるのか。
0736nobodyさん
2012/02/20(月) 16:15:38.57ID:???使える記号も選べるほどないし
0737nobodyさん
2012/02/20(月) 16:39:46.15ID:???規模が小さければトランザクションだ〜とかで済むけど
規模が大きくなると基本が通じなくなる事もあるみたいだしな
ttp://d.hatena.ne.jp/iad_otomamay/20110808/1312805917
見たいな事象もあったりするし
それならそれで手を考える必要はあるんだろうが
その手のライブラリをしっかりと整備出来ていなかったのが痛いな
0738nobodyさん
2012/02/20(月) 17:21:34.54ID:???固有の値をいれとけとあれほd
0741nobodyさん
2012/02/20(月) 19:42:12.40ID:???0742nobodyさん
2012/02/20(月) 20:14:43.94ID:???再コンパイルの仕方がわからないならxamppからPHP抜いて試してみるとよかろう
俺の使ってるXAMPP Lite 1.7.3のPHP5.3.4はONになってる
最新バージョンがどうかは知らないが
最新のxampp1.7.7はPHP5.3.8だし試してみる価値はあるだろう
0743nobodyさん
2012/02/20(月) 20:18:08.26ID:???読んでたのですか、ifとelseを多用して非常に読みにくくなってました。
php歴2年ですが、これって素人がよくやるようなことなのでしょうか?
なにか解決策はありますか?
0745nobodyさん
2012/02/20(月) 20:43:06.11ID:NoHq1hRP例えば、
あいうえおあ
という文字列があったら、あとあの間の文字の(いうえお)を表示する。と言うことは可能でしょうか?
0747nobodyさん
2012/02/20(月) 20:46:30.08ID:???0749743
2012/02/20(月) 21:09:36.19ID:Hy6/Os+0>>748
switch文をを試してみます。
0751nobodyさん
2012/02/21(火) 00:33:40.75ID:???a.phpで
<?php echo file_get_contents("http://localhost/b.php"); ?>
として、
b.phpで
<?php echo "hello"; ?>
とすると、固まってしまう。
b.phpで、file_put_contentsとかしてみると出力はあるから、アクセスはしてるんだけど、
レスポンスが取得できてないくさい。
fopenやstream_socket_clientもダメだった。
ちなみにa.phpでhtmlやtxtなどの静的コンテンツは取得できた。
a.phpをコマンドラインで実行すると普通にレスポンス返ってきてるんだが・・・
何が原因なのかさっぱりわからん。
0754nobodyさん
2012/02/21(火) 02:58:29.45ID:???ねえ、そのリンク先のだとトランザクション管理できないって言ってる?
そうじゃないなら何でそれ出したの?
0755nobodyさん
2012/02/21(火) 06:54:25.99ID:6SIN0kwRhttp://ja.wikipedia.org/wiki/Singleton_%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3
1つ目の例の書き方だと問題ないのですが、
2つ目の例の書き方の2行目をPHPで書くのは無理でしょうか?
同期化コストってのはようするにif文を毎回呼ぶのがよくないってことだと思うのですが、
2つ目の例の2行目の書き方がPHPでだめだとして、改善方法はありますか?
final class Singleton {
    private static final $instance = new Singleton();
    private function __construct() {}
    public static function getInstance() {
        return Singleton::$instance;
    }
}
$s = Singleton::getInstance();
$s2 = Singleton::getInstance();
var_dump($s);
var_dump($s2);
Fatal error: Cannot declare property Singleton::$instance final〜
そこで$instanceのfinalを取ると
Parse error: syntax error, unexpected T_NEW in〜
となります。
外からアクセスできるので質が違いますが、
private static finalに近そうなconstも試して見ましたが同様のエラーが出ます。
0757nobodyさん
2012/02/21(火) 07:19:30.05ID:???0758nobodyさん
2012/02/21(火) 07:20:50.57ID:???0759nobodyさん
2012/02/21(火) 08:11:46.42ID:???>>755
> 同期化コストってのはようするにif文を毎回呼ぶのがよくないってことだと思うのですが、
違う、同期化コストはJavaのsyncronized修飾子に対しての言葉
PHPではif文で毎回調べるのが常套手段となっている
http://www.php.net/manual/ja/language.oop5.properties.php
> 宣言時に初期値を設定することもできますが、初期値は定数値でなければなりません。
> つまり、コンパイル時に評価可能な値でなければならず、
> 実行時の情報がないと評価できない値であってはいけないということです。
0760751
2012/02/21(火) 08:31:30.02ID:???0761nobodyさん
2012/02/21(火) 10:14:06.04ID:???0762nobodyさん
2012/02/21(火) 10:14:54.16ID:???0763755
2012/02/21(火) 10:19:56.57ID:???レスありがとうございます。
>>759
なるほどそういう意味でしたか。
syncronizedがどういうものかはよくわかりませんが、
PHPでは最初の例が常套手段ということは理解しました。
比較対象のため少しJavaの勉強もしてみようと思います。
どうもありがとうございました。
0764nobodyさん
2012/02/21(火) 10:24:44.01ID:otlrgE39ftp_get関数を使って、リモートのファイルをローカルに保存したいのですが
うまくいきません。
リモートでPHPの動かしていると、オフィシャルマニュアルのいうところの
「ローカル」というのは、動いている場所を指してしまうのですか?
具体的に書くとレンタルサーバー上のtest.phpの中で、ftp_get関数を使うと
レンタルサーバーの/home/hoge/に「C:\temp\downloaded.txt」 という名前のファイルが
できてしまってローカルには何もダウンロードされないのですが、これは仕様ということですか?
0765nobodyさん
2012/02/21(火) 10:37:35.23ID:???0766nobodyさん
2012/02/21(火) 10:40:04.48ID:???Javaなんて知らんでも>>755程度ならPHPある程度やってるやつなら誰でも移植できる
0767nobodyさん
2012/02/21(火) 10:43:47.00ID:???0768nobodyさん
2012/02/21(火) 10:57:28.75ID:???ローカルとは実行してるコンピュータのこと
当然レンタルサーバーでftp_getを使えばftp_getの引数で指定した先からサーバー(ローカル)にダウンロードされ保存される
0769nobodyさん
2012/02/21(火) 10:59:15.38ID:otlrgE39やっぱりそうでしたか、目の前の箱だと思っていたのが間違いでしたね。汗
ありがとうございました。べつな方法を考えてみます。
0770nobodyさん
2012/02/21(火) 14:39:44.56ID:???<input type="checkbox" name="checkbox01[]" value="0"> 〜 <input type="checkbox" name="checkbox01[]" value="2">
とチェックボックスをつくりました。そしてPHPの処理部分では
// チェックボックスに値があれば
if($_GET["checkbox01"]){
foreach($_GET["checkbox01"] as $val){
if($val==0){
$data["A"]='あ';
}
elseif($val=1){
$data["B"]='い';
}
elseif($val=2){
$data["C"]='う';
}
}
// $dataがアレばそれぞれ
if($data["A"]){
print_r($data["A"]);
}
if($data["B"]){
print_r($data["B"]);
}
if($data["C"]){
print_r($data["C"]);
}
}
0771nobodyさん
2012/02/21(火) 14:41:32.79ID:???としたのですが、チェックすべてに値をつけても 「あい」 までしか表示されません。試しに // チェックボックスに値があれば の前で
print_r( $_GET["checkbox01"]);
としたら
Array ( [0] => 0 [1] => 1 [2] => 2 )
と表示され、// $dataがアレばそれぞれ の前でも
print_r($data);
としたら
Array ( [A] => あ [B] => い )
と表示されたため、foreach文ないがおかしいとはおもうのですが解決方法がわかりません。
どのようにしたらいいのでしょうか?
長くなってしまったので連投してすみません、どなたかお知恵をかしてください。
0772nobodyさん
2012/02/21(火) 14:43:28.71ID:???$val=2 → $val==2
0773nobodyさん
2012/02/21(火) 15:08:48.42ID:???別の人の解答なのかどっち?
ID無いからわからんな
0774770
2012/02/21(火) 15:21:10.42ID:???ありがとうございます。こんな凡ミスなんて・・・
あと調べててin_array関数というのもみつけたのですが、foreachで繰り返して探すより
if(in_array("0", $_GET["checkbox01"] ){
}
if(in_array("1", $_GET["checkbox01"] ){
}
といったように内容は同じだとおもうのですがin_arrayで調べたほうがいいのでしょうか?
0778nobodyさん
2012/02/21(火) 16:19:18.56ID:???$data["A"]='あ';
}
elseif($val=1){
$data["B"]='い';
}
elseif($val=2){
$data["C"]='う';
}
こんなことするなら最初からvalueにあいう入れればいいのに
0783nobodyさん
2012/02/21(火) 23:58:50.45ID:QmooF5El0784nobodyさん
2012/02/22(水) 00:03:26.59ID:???0786nobodyさん
2012/02/22(水) 01:07:04.45ID:HjiaSrjvCakePHPを早くするためにはどうしたらよろしいでしょうか?
デフォルトの状態です。
WordPressを早くするためにはどうしたらよろしいでしょうか?
デフォルトの状態です。
OpenPNEを早くするためにはどうしたらよろしいでしょうか?
デフォルトの状態です。
symfonyを早くするためにはどうしたらよろしいでしょうか?
デフォルトの状態です。
0787nobodyさん
2012/02/22(水) 01:09:47.45ID:???0788nobodyさん
2012/02/22(水) 01:39:15.45ID:HjiaSrjv0789nobodyさん
2012/02/22(水) 01:42:23.62ID:???0790nobodyさん
2012/02/22(水) 01:44:59.53ID:HjiaSrjv他の言語に比較して遅いです。
比較はJavaとPythonです。
0791nobodyさん
2012/02/22(水) 01:46:11.48ID:HjiaSrjvオブジェクト指向を始めると途端にパフォーマンスが悪くなるようです。
0792nobodyさん
2012/02/22(水) 01:48:41.94ID:HjiaSrjvローカル環境でも遅いのでどうしようもありません。
0793nobodyさん
2012/02/22(水) 01:54:46.01ID:???0794nobodyさん
2012/02/22(水) 01:57:04.91ID:HjiaSrjvアプリケーションスコープが無いのはわかっていますが、セッションはありますよね。
WordPressしかり、Cakeしかり、symfonyしかり、オブジェクト格納場所として
セッションは考えられていないようです。これが結果としDBへの
余分なアクセスを増大させているようです。
0795nobodyさん
2012/02/22(水) 01:58:42.03ID:HjiaSrjvたとえばOpenPNEが稼働しているサイトで機敏に動くところはありますか?
自分が知っている限り無いと思いますが・・・。
0796nobodyさん
2012/02/22(水) 02:10:14.28ID:???なんでもかんでもPHPのせいにすればいいってもんじゃない
0798nobodyさん
2012/02/22(水) 02:18:21.92ID:HjiaSrjv書いていますが、デフォルトの状態ですでに重いのです。
一切カスタマイズしていない状態です。ちなみに3.6系の最新版です。
デバックモードで起動するとものすごい数のSQLクエリが発行されています。
>>794についてはどう思われますか?
0799nobodyさん
2012/02/22(水) 02:20:08.85ID:HjiaSrjvそれ以上にクエリをムダに発行しているように思えるのです。
0800797
2012/02/22(水) 02:20:36.63ID:???PHP部に限って言うならopコードキャッシュ使う。
DBアクセス数が多くて、コネクション生成コスト、クエリコストが原因で遅いのであれば、PHP自体の問題ではなくなる
0801nobodyさん
2012/02/22(水) 02:21:25.34ID:???0803nobodyさん
2012/02/22(水) 02:23:07.36ID:HjiaSrjvたとえばJavaであれば
1.アプリケーションスコープ
2.セッションスコープ
3.リクエストスコープ
以上の3スコープに欲するデータが無い場合のみDBへアクセスしますが、
CakeやWordPress、OpenPNEなどの場合はお構いなしに毎回DBへアクセス
しているのが不思議です。
0804nobodyさん
2012/02/22(水) 02:26:05.08ID:???Webサーバを複数使うことを想定してそうなってるわけじゃなくて?
設定とかで変えられないの?ってか、変えられないからそのように断定しているんだろうけれど。
0805nobodyさん
2012/02/22(水) 02:30:02.12ID:???ちなみに期待するレスポンスはどの程度で、現状はどれくらい?
同時接続クライアント数など、必要なものを列挙してほしい。ベンチの結果でもいい。
0806nobodyさん
2012/02/22(水) 02:32:41.04ID:???0807nobodyさん
2012/02/22(水) 02:40:30.48ID:HjiaSrjv>>806
PHPの主要フレームワークやCMSのソースコードリーディングに基づき、
このスレを書き込みしています。実践というわけではありません。
気づいたことはオブジェクトの一時保存場所としてセッションが
使用されていないのが不思議なのです。だからSQL発行が非常に多い。
これはなぜですか?
0809nobodyさん
2012/02/22(水) 02:43:20.60ID:HjiaSrjvPHPは分散オブジェクトは対応していないのですか?
0810nobodyさん
2012/02/22(水) 02:46:14.38ID:???Javaのスコープの話が出てきた時点でこうなりそうな気はしていたが。
今後の話をわかりやすくするために「分散オブジェクトに対応する」というのがどういうことか伝えてもらえるかな。
0811nobodyさん
2012/02/22(水) 02:50:27.92ID:HjiaSrjv複数のコンピュータ間で同じオブジェクトを同一マシーン上で処理が済むことと同じようにすることですよね。
0812nobodyさん
2012/02/22(水) 02:53:35.00ID:HjiaSrjv0815nobodyさん
2012/02/22(水) 02:56:50.78ID:HjiaSrjvなぜ同じクエリを何度も発行しているのでしょうか?
OpenPNE3.6系です。
0816nobodyさん
2012/02/22(水) 03:00:29.37ID:???0817nobodyさん
2012/02/22(水) 03:02:33.49ID:HjiaSrjvその論法で行くと全部コメントアウトになりますが・・・。
私の質問はPHPでは答えにくのでしょうか?
0818nobodyさん
2012/02/22(水) 03:04:26.65ID:???>>815, 817
繰り返すが、それが本当に無駄なら報告すれば多方面から感謝されるからそうしたらいい。
0819nobodyさん
2012/02/22(水) 03:08:04.96ID:HjiaSrjvそんなに大げさなことでしょうか?
OpenPNEを試されたことがありますよね?
デバックモードで起動するとSQL発行数がわかりますが、すごい量です。
これはなぜですか?と言っているだけです。だから遅いんじゃないでしょうかと。
0820nobodyさん
2012/02/22(水) 03:09:29.52ID:HjiaSrjv昔はシリアライズのバグの話は聞いたことがありますが、さすがに今は解消しているはずです。
0821nobodyさん
2012/02/22(水) 03:09:46.81ID:???デバッグモードじゃなければ発行されないの?
何のために使われるクエリなのかは調べてないの?
OpenPNEは使ったこと無いよ。使ったこと無いならレスしないでっていうことなら喜んでレスやめる。
0822nobodyさん
2012/02/22(水) 03:09:49.44ID:???0823nobodyさん
2012/02/22(水) 03:09:54.82ID:???0824nobodyさん
2012/02/22(水) 03:11:44.08ID:???0825nobodyさん
2012/02/22(水) 03:11:56.60ID:HjiaSrjvデバッグモードで起動するとSQLクエリの発行数がわかります。
0826nobodyさん
2012/02/22(水) 03:13:20.43ID:HjiaSrjvそれならそれでいいんです。
PHPでは罰ゲームレベルという理解でよろしいのですね。
0827nobodyさん
2012/02/22(水) 03:13:21.46ID:???0828nobodyさん
2012/02/22(水) 03:14:30.57ID:HjiaSrjvPHPではセッションにオブジェクトを格納するのは一般的ではないという結論ですね。
0831nobodyさん
2012/02/22(水) 03:15:45.98ID:HjiaSrjv0832nobodyさん
2012/02/22(水) 03:16:55.71ID:HjiaSrjvアプリケーションサーバーの設定による。
ただし、プログラムレベルでは細かく殺してリソースのムダ遣いを減らします。
0833nobodyさん
2012/02/22(水) 03:17:02.95ID:???らーらーらー ららーらー 言葉になら〜ない
0834nobodyさん
2012/02/22(水) 03:17:23.17ID:???Javaだって同じ事
0836nobodyさん
2012/02/22(水) 03:18:45.31ID:???もっと幅広く勉強しろよ
0837nobodyさん
2012/02/22(水) 03:19:08.08ID:HjiaSrjvPHPではセッションにオブジェクトを格納するのは一般的ではないということが
よくわかりました。
0838nobodyさん
2012/02/22(水) 03:20:04.33ID:???0839nobodyさん
2012/02/22(水) 03:24:16.48ID:HjiaSrjvないとわかりましたが、それはPHPプログラマにとって尺に触ることでしょうか?
0840nobodyさん
2012/02/22(水) 03:27:56.08ID:HjiaSrjv0841nobodyさん
2012/02/22(水) 03:30:45.46ID:???たとえば一般的ではないことを強要されたら癪に障るかも知れないけれど。
0842nobodyさん
2012/02/22(水) 03:38:58.82ID:???0844nobodyさん
2012/02/22(水) 04:52:15.14ID:???0845nobodyさん
2012/02/22(水) 06:32:14.02ID:???Webアプリケーションの設計の話でしょ。
0846nobodyさん
2012/02/22(水) 07:41:18.69ID:???JavaとPythonで比較してるなら、OpenPNEに相当するJavaとPythonで実装されたもので
機敏に動くものを知りたい。
0847nobodyさん
2012/02/22(水) 08:55:42.21ID:???PHPではセッションにオブジェクトを格納するのは一般的ではないということが
よくわかりました。
0848nobodyさん
2012/02/22(水) 09:00:26.08ID:???0850nobodyさん
2012/02/22(水) 09:10:04.74ID:???0852nobodyさん
2012/02/22(水) 09:15:30.80ID:???かなりヤバイレベル。バージョン2の時代はマシだった。
0853nobodyさん
2012/02/22(水) 09:17:48.11ID:???そんなヴァカな話があるのか
0854nobodyさん
2012/02/22(水) 09:24:03.91ID:???たしかに、唐突にコネクションプーリングの話は変だとは思った。
その逆も必要ないかと。
話の流れとは関係ないw
0856nobodyさん
2012/02/22(水) 11:04:16.02ID:yvJnpOhoCGIじゃなくてモジュールで動作させれば早いと書いてあった。
今のところはCGIで動作の仕様になってる。
0857nobodyさん
2012/02/22(水) 11:17:37.00ID:???0858nobodyさん
2012/02/22(水) 11:27:57.48ID:???0859nobodyさん
2012/02/22(水) 15:35:04.94ID:???0860nobodyさん
2012/02/22(水) 15:37:33.90ID:???0861nobodyさん
2012/02/22(水) 17:05:21.76ID:???0862nobodyさん
2012/02/22(水) 17:34:31.83ID:???a.phpで
echo $_COOKIE['testvar1'];
var_dump($_COOKIE);
---
b.phpで
setcookie('testvar1', 'bbb') //a.phpでbbbが出力される
---
c.phpで
setcookie('testvar1', 'ccc') //a.phpでcccが出力されない
setcookie('testvar2', 'xxx') //a.phpでtestvar2自体が確認出来ない
と、以上のようにしてる時、b.php → a.php の順番でアクセスするとechoもvar_dumpも正常な結果を返すんですが、その後
c.php → a.php の順番でアクセスするとechoはbbbを返し、var_dumpは追加したtestvar2自体を返さずtestvar1のみbbbとして返します
※c.php自体の中で echo $_COOKIE['testvar1'];すればcccを返します。また、c.phpのsetcookie();の返り値は1です
※また、b.phpの中でクッキーに入れる値を変更した場合はa.phpで変更後の値が確認出来ますが
c.phpの中で値を変更しても上書きされません(c.phpの中での確認です)
ドメインは全て同じで、原因が全くわかりません
何か考えられる対処法やチェック箇所あるでしょうか?
申し訳ないですが、どなたかご意見お願いします
0863nobodyさん
2012/02/22(水) 19:09:47.20ID:???0864nobodyさん
2012/02/22(水) 19:28:43.76ID:???0865nobodyさん
2012/02/22(水) 19:35:22.61ID:???これがゆとりか。
0866nobodyさん
2012/02/22(水) 19:44:07.26ID:???IDID言うやつ、回答しないんだよな。
0868nobodyさん
2012/02/22(水) 19:46:44.23ID:???0869862
2012/02/22(水) 20:41:14.26ID:culdIBNJその後もブラウザ再起動などしてやったんですが
やはりc.phpでsetcookie();した値はc.php以外で確認出来ません
なんなんでしょうか?
0872nobodyさん
2012/02/22(水) 21:49:26.94ID:???0873nobodyさん
2012/02/22(水) 22:14:17.30ID:???php-cgi -b 127.0.0.1:9000 &
として
telnet 127.0.0.1 9000
とかでなんか叩いて動作チェックって出来るものでしょうか?
0874862
2012/02/22(水) 22:42:10.50ID:culdIBNJその後、全てのsetcookie()を setcookie('time', date('Y-m-d H:i:s'), 0, '/', 'example.com');として
有効時間、パス、ドメインを指定したところ解決しました
質問して良かったです、助かりました
本当にありがとうございました
0875nobodyさん
2012/02/22(水) 22:51:44.23ID:???0876nobodyさん
2012/02/22(水) 22:55:02.14ID:???0877nobodyさん
2012/02/22(水) 23:24:44.58ID:qmf6D6+H原因としては何が考えられますか?
0878nobodyさん
2012/02/23(木) 00:42:33.05ID:???パス間違ってるとかパーミッションがマズイとか。
ちょっと情報少なすぎ。
warningかnoticeも出てないの?
0879553
2012/02/23(木) 01:24:46.92ID:???0880nobodyさん
2012/02/23(木) 02:36:14.38ID:???0881nobodyさん
2012/02/23(木) 02:52:55.61ID:???i7っでサックサクにしようぜ
0884nobodyさん
2012/02/23(木) 11:28:18.18ID:???0885nobodyさん
2012/02/23(木) 11:29:42.88ID:???0886nobodyさん
2012/02/23(木) 11:35:04.06ID:GMJguUp1ログインページでは、ID(メアド)とパスワードの一致をもって、認証OKとしています。
その後、各ページでは何をもって認証OKとすれば良いのでしょうか?
入門書では、
1.ログイン時に、各ユーザー情報をセッションに保持し、各ページでは、それがあれば認証OKとする。
2.ログイン時に、暗号化した認証キーを作成してセッションに保持し、各ページで再度、認証キーを作成し、セッションの認証キーと照会する。
3.ログイン時に、セッションID(session_id())をセッションに保持し、各ページでは、そのページでのsession_id()と照会する。
などの方法を確認しました。個人的には、1の方法で足りると思うのですが、2や3の方法のほうがセキュリティーは高まるのでしょうか?
0887nobodyさん
2012/02/23(木) 12:26:00.63ID:???0888877
2012/02/23(木) 13:56:23.63ID:QQ9YytJpパスは間違ってないようです パーミッションもちゃんと644になってます
直接関わるwarning・noticeは出ていないようです
情報が少なすぎるとのことなので問題の背景を説明します
レンタルサーバでXOOPSを使いサイトを運用しています
ある日すべてのページが500 Internal Server Errorになるようになりました
"php_flag magic_quotes_gpc Off"とだけ書かれたXOOPS_ROOT_PATH/.htaccessがあったのでこれを削除したところ、
だいたいのページは元通り見られるようになりました
しかし、管理メニューの互換モジュールで
Fatal error: Class 'Legacy_ActionFrame' not found in XOOPS_ROOT_PATH/modules/legacy/admin/index.php
とエラーが発生します
該当する.phpファイルではそのクラスを定義しているXOOPS_ROOT_PATH/modules/legacy/class/ActionFrame.class.phpをrequire_onceしているようなので、
このファイルにでたらめな文字列を書き足してSyntax errorを期待したのですが結果は変わりませんでした
また、require_onceの下にvar_dump(get_included_files());を書き足しても、このファイルは含まれていませんでした
以上にもかかわらず、require_onceの戻り値は1( != FALSE)でした
どうすればこのファイルはrequire_onceで読み込まれるようになるでしょうか?
よろしくお願いします
0889nobodyさん
2012/02/23(木) 14:11:01.61ID:???どんな入門書読んだのか知らんが、2と3は明らかにおかしなこと言ってるぞ。
もう一回しっかり読め。
セッションとクッキーは別物だということを頭に置いてな。
0890nobodyさん
2012/02/23(木) 15:06:37.39ID:pOv6kBFHあああ\\t2012.01.23\\tききき\\n
いいい\\t2012.01.23\\tくくく\\n
ううう\\t2012.01.23\\tけけけ\\n
えええ\\t2012.01.22\\tこここ\\n
おおお\\t2012.01.22\\tさささ\\n
かかか\\t2012.01.21\\tししし\\n
今日 = 3
昨日 = 2
一昨日 = 1
このような値を取り出したい場合はどのような手順になるのでしょうか?
よろしくおねがいします。
0891886
2012/02/23(木) 15:11:52.08ID:AL17q7mx3.のコードです。関数化されてます。
これは間違いなのでしょうか?
<?php
##### セッションの開始
function session_idset() {
session_start();
$_SESSION['auth'] = session_id();
}
##### セッションのチェック
function session_check() {
session_start();
$rtn = TRUE;
if($_SESSION['auth'] != session_id()) {
$rtn = FALSE;
}
return $rtn;
}
?>
0892886
2012/02/23(木) 15:23:33.04ID:AL17q7mx//セッションの開始
$_SESSION['login_id'] = $_POST['login_id'] ;
$_SESSION['auth'] = md5($salt . $_POST['login_id']) ;
//セッションの確認
function auth() {
global $salt;
if (md5($salt . $_SESSION['login_id']) == $_SESSION['auth'] ) {
return TRUE;
} else {
return FALSE;
}
}
0893nobodyさん
2012/02/23(木) 16:00:34.17ID:???0894nobodyさん
2012/02/23(木) 16:26:52.69ID:???やるんであれば、例えば、ランダム文字列を生成してクッキーに保存
その文字列をハッシュかけてセッションに保存
確認のときはクッキーのデータにハッシュかけたものとセッションのデータが一致するか
ってやればセッションハイジャックに対して少しは強くなりそう。
0895nobodyさん
2012/02/23(木) 16:36:47.58ID:???本当にその入門書がその通りに書いているなら今すぐ燃やして他の本から学ぶべきだな
>>894
効果のないものを初心者に教えるな
0898nobodyさん
2012/02/23(木) 17:22:52.85ID:???もしかして、セッションファイルを一般ユーザが見られる場所に
保存するシステムを前提に、ローカルユーザからの攻撃対策の話をしてる?
それだと、サーバの設定を見直した方がいいような……
0900nobodyさん
2012/02/23(木) 17:31:23.55ID:sgcZLa3Bセッション固定攻撃に対しては効果があると思うけど。
0901nobodyさん
2012/02/23(木) 17:38:14.99ID:???0903886
2012/02/23(木) 17:59:29.91ID:+MEbH08Xやはり、このシンプルなコードが妥当なのでしょうか?
//$rowにDB取得データ代入済み
// ログイン情報を記録
$_SESSION["login"] = array("user_id" => $row["user_id"]," login_time" => time())
// ログインしているかどうか調べる関数
function is_logined() {
return isset($_SESSION["login"]);
}
0905894
2012/02/23(木) 18:21:05.98ID:???仮にセッションIDが漏れた場合とか想定してるんだけど。
セッションIDだけじゃなくて、発行時のクライアントのチェックとして有効じゃない?
886の対案として出してるだけだから、ベストの方法とは思わんけど。
>>899
論点がぜんぜん違う
0906nobodyさん
2012/02/23(木) 18:24:58.57ID:pOv6kBFHfor($i = 0; $i < count($lines); $i++){
list(,$day,,)=explode("\t",$lines[$i]);
$today = date("Y.m.d");
$match_tday = preg_match("/$today/",$day);
}
今一歩前へ進めません。次のヒントお願いします。
0907nobodyさん
2012/02/23(木) 18:41:27.89ID:???0909nobodyさん
2012/02/23(木) 18:49:26.85ID:???$lines = file($tsv);
for($i = 0; $i < count($lines); $i++){
list(,$days[],,)=str_getcsv($lines[$i],"\t");
}
print_r(array_count_values($days));
0910877
2012/02/23(木) 20:38:51.67ID:QQ9YytJp試してみました
requireに書き換えると、多少崩れたページが表示され、
Fatal errorではなくなりました
0911nobodyさん
2012/02/23(木) 20:40:13.32ID:???じゃあ代わりに何を使えばいいの?
0912nobodyさん
2012/02/23(木) 20:54:09.81ID:???非推奨なのを知ってるということは
マニュアルを途中まで読んだな?
もっと下まで読めば書いてあるだろw
0913nobodyさん
2012/02/23(木) 20:57:03.04ID:???これがゆとりか。
0914nobodyさん
2012/02/23(木) 21:00:17.68ID:???俺、アンタみたいな人嫌いですw
0915nobodyさん
2012/02/23(木) 21:10:37.40ID:???0916nobodyさん
2012/02/23(木) 21:44:28.17ID:P+2F5uLF<?php
$data=
ABCDABCD;
$match='/A|B/';
preg_match_all($match, $data, $matches[0]);
print_r($matches[0]);
?>
結果
Array ( [0] => Array ( [0] => A [1] => B [2] => A [3] => B ) )
これを、AとBをそれぞれ一つだけ取得したいです。 1回取得したものと同一のものは取得しない方法はありませんか?
preg_matchを2回使うと一応できるのですが、それだと
結果
Array ( [0] => A )
Array ( [0] => B )
このようにそれぞれ別になってしまいます。
何かやり方はないでしょうか?
0917nobodyさん
2012/02/23(木) 22:13:07.95ID:???print_r(array_unique($matches[0][0]));
0919nobodyさん
2012/02/23(木) 22:44:37.14ID:???0920nobodyさん
2012/02/23(木) 22:48:53.56ID:???>>894さんの「おかしいというか、扉に同じ鍵で開く鍵穴が2つあるみたいなもん」
というご指摘で、2.3.のおかしな点がよく理解できました。
ランダム文字列クッキーを認証に利用する方法は、自分も考えたのですが、
XSSでJSによりクッキーを盗まれる場合には、セッションクッキーとともに
そのランダムクッキーも盗まれるので効果が無いと思いました。
また、セッション固定化攻撃には、>>908 さんのいうsession_regenerate_id(true)が
適切だと考えます。それとともに、php.ini、.htaccessでセッション付きリンクを
使用不可にするのがよいのかなと。
0923nobodyさん
2012/02/23(木) 23:58:21.36ID:P+2F5uLF0924nobodyさん
2012/02/24(金) 00:05:55.32ID:???0926nobodyさん
2012/02/24(金) 00:25:39.45ID:???0927nobodyさん
2012/02/24(金) 07:08:08.38ID:???0928nobodyさん
2012/02/24(金) 08:26:18.43ID:???それ意味ないじゃん
ハッシュ化したところでクライアントの情報(そのハッシュ化したランダムな文字列)が盗まれれば意味がない
あとその処理自体にセッションハイジャックに強くなる要素が見当たらない
サーバ側でセッションハイジャックされないような対策を考える場合XSSだけに気をつければいい
結局ハイジャックされるかどうかはクライアント側の行動次第
リンクにセッション情報を含めないほうがいいのはクライアント側の行動次第では漏れる可能性が高いから
クライアント側がそれなりの知識を持ってるならリンクにセッション情報を含めても問題ない
0929nobodyさん
2012/02/24(金) 08:36:25.74ID:???自己解決しますた。
telnetじゃムリでした。
<? phpinfo(); ?>がスルーされたのがそもそもの発端だったんだけど、5.3.8と5.2.13ではshort_open_tagが違うんですね。
pukiwikiとかwordpressって律儀に<?php 〜 ?>ってやってるのかな?
0930894
2012/02/24(金) 09:27:38.22ID:???前半の
>>ハッシュ化したところでクライアントの情報(そのハッシュ化したランダムな文字列)が盗まれれば意味がない
に関しては同意だけど、セッションIDとクライアントの情報を合わせて
盗まれなければ意味があるじゃん。
セッションIDだけ盗まれるってケースは意外とあると思うぞ。
>>920の言うようにクッキーまるごと盗まれたらしょうがないけど。
後半は同意できない。
0931nobodyさん
2012/02/24(金) 09:38:18.08ID:???どこの実装もほぼ100%クッキーでやってるんだから
0932nobodyさん
2012/02/24(金) 10:29:02.94ID:BAbDqRA5その為、使用するファイル(Sfit-JIS)を一つずつ選択し、プロパティーから文字化けしないUTF-8に変換しているのですが、
一括ですべてUTF-8にする方法はあるのでしょうか。
使用するフォルダ選択⇒プロパティー⇒リソース⇒テキスト・ファイルのエンコードから修正しても
だめでした。
0933nobodyさん
2012/02/24(金) 11:10:06.07ID:???それ同じこと思った。
なんでクッキーとセッションが別腹的な考え方なんだろ。
素人の俺にはわからん。
TLSかけるなりしてクライアントとPCの通信の盗聴防がなきゃ意味ない気が。
0934nobodyさん
2012/02/24(金) 11:18:03.05ID:???鍵盗まれたら困るってことの対策にはならんもんね。
0935877
2012/02/24(金) 12:51:09.28ID:i01HfJfE解決策ありませんか?
0936nobodyさん
2012/02/24(金) 14:00:59.55ID:???requireで読めたんならそれでいいだろ
2回以上読み込むファイルをrequire_onceで読み込むのがおかしい
0937nobodyさん
2012/02/24(金) 17:03:51.32ID:???>使用するフォルダ選択⇒プロパティー⇒リソース⇒テキスト・ファイルのエンコードから修正しても
だめでした。
それエクリプスの設定をUTFにしてるだけだし…
PHPでそのPHPファイルをfile_get_contentsで読み込んでエンコード変えて同じファイルに書き出すくらいじゃね?
0938nobodyさん
2012/02/24(金) 18:34:59.75ID:???0939nobodyさん
2012/02/24(金) 20:44:15.85ID:???毎回<?php って書いてるよ。
<?= とか便利かもって思ったこともあったけど、それが便利だと思える場面に遭遇しなくなった
0940nobodyさん
2012/02/24(金) 20:51:14.32ID:???0942nobodyさん
2012/02/24(金) 23:20:35.88ID:???p/の部分だけを取り除いて、
$file_name2="1.html"とすることはphpでは可能ですか?
0943nobodyさん
2012/02/24(金) 23:23:49.74ID:gMrEIIb2p/の部分だけを取り除いて、
$file_name2="1.html"とすることはphpでは可能ですか?
すいません、上げてました。
0945nobodyさん
2012/02/24(金) 23:34:43.65ID:???そんな質問の仕方だと
substrで三文字目以降を切り出せとか
p/を空文字に置き換えろとかいう答えが返ってくるぞ
0946877
2012/02/24(金) 23:48:54.24ID:i01HfJfErequireで読むとFatal errorはなくなりますが、ページの表示が正常ではありません
2回以上読まれるかどうかは未検証ですが、
require_onceの前後のどちらでも、get_included_files()に該当するファイルが含まれないのは問題だと思います
0947nobodyさん
2012/02/24(金) 23:51:09.90ID:kLSGsgF4sendmailか否かさえ分かればいいのですが。
0948nobodyさん
2012/02/24(金) 23:54:48.93ID:gMrEIIb2ありがとうございました。
>>945
そうです、ディレクトリ名だけとっぱらいたかったんです。
なんか、適当に作ってたら、mysqlに入れた値が"p/1234.html"
となっていたんです。これはこれで表示されないデータなら
扱いやすいのですが、表示されるデータにディレクトリ名って
欲しいのか?という疑問にぶつかりました。basename()って便利な
関数ですね。
0949nobodyさん
2012/02/25(土) 00:21:03.84ID:???requireで読めて、require_onceで読めないファイルがあるってことだよね。
それがわかっているなら後は何が原因なのか、どんどんコードを削っていけばたどり着くと思うんだけど
0950nobodyさん
2012/02/25(土) 00:55:13.78ID:???Linuxなら、exec関数で "ps ax | grep sendmail" を実行して、その出力をチェックする
0951nobodyさん
2012/02/25(土) 01:14:42.48ID:a/GXX7hd>mail() 関数は、大量のメールをループ内で送信するには 向いていないことに注意しましょう。
>この関数は 1 通のメールを送信するたびに SMTP ソケットをいったん閉じて開きなおします。これは非効率的です。
>大量のメールを送信する場合は、 ≫ PEAR::Mail および ≫ PEAR::Mail_Queue パッケージを参照ください。
と記述してありますが、PEARを使いたくない場合、
ソケット関数で自分でSMTP処理を書くしか無いですよね?
0952nobodyさん
2012/02/25(土) 02:43:21.75ID:???「しか無い」ってのはよほどのことが無い限り無いと思ったほうが。
0953nobodyさん
2012/02/25(土) 02:47:59.67ID:???0954nobodyさん
2012/02/25(土) 18:02:10.27ID:???session_register()使う代わりに
$_SESSION に値をぶっこむのね
ありがとう!
0955nobodyさん
2012/02/25(土) 18:56:47.63ID:1lZdYX8Rwire.jpというサイトがあります。
内容的には好きなんですが、相当重いサイトです。
こういったPHPで作られたサイトのパフォーマンスを
上げるためにはどうしたらよろしいでしょうか?
0956nobodyさん
2012/02/25(土) 19:08:41.43ID:???0957nobodyさん
2012/02/25(土) 19:09:58.04ID:r6BFdbus<?php
$array=array(1,2,3,4,5,);
foreach ($array as $value) {
$a=$value;
}
echo $a;
?>
例えばこのようにすると、当たり前ですが結果はループで上書きされて5と表示されます。
foreachで取得したものを一つの変数に入れることは出来ませんか?
0959nobodyさん
2012/02/25(土) 19:53:18.83ID:???print_r($array);
して表示結果を見てみなはれ
その上で$array[x] ←xのところに対応した数字をいれる。
で出てくる。
0960nobodyさん
2012/02/25(土) 20:48:35.56ID:???0961nobodyさん
2012/02/25(土) 21:26:32.82ID:r6BFdbus0962nobodyさん
2012/02/26(日) 00:47:29.55ID:???0963nobodyさん
2012/02/26(日) 00:48:27.77ID:???0964nobodyさん
2012/02/26(日) 00:52:26.79ID:nCX4lbdWキャッシュとはどのようなキャッシュですか?
0965nobodyさん
2012/02/26(日) 01:35:13.43ID:nCX4lbdWwire.jpはWordPressみたいですから
WP Super Cacheプラグインみたいなプログラムレベルの
キャッシュのことを意味していますか?
0966nobodyさん
2012/02/26(日) 01:42:08.72ID:???0967nobodyさん
2012/02/26(日) 01:47:59.96ID:nCX4lbdW例としてあげてwired.jpはW3 Total Cacheが入っているようです。
それでも遅い場合はどうしたらよろしいのでしょうか?
0969nobodyさん
2012/02/26(日) 01:53:36.51ID:???0970nobodyさん
2012/02/26(日) 01:58:30.12ID:???エクセルのシートで外部参照するみたいに、この列はこっちの
データベースから引っ張って、この列はこっちから
というように複数のデータベースから情報を引っ張って
統合して表示、または登録変更をするためには、どんな
方法を使うのが最も適しているのでしょうか?
0972nobodyさん
2012/02/26(日) 02:16:44.23ID:oisclph1自動返信メールの内容に値を持たせたいんですが
値の入っていないものは表示させないようにしたいです。
<?php
$MESSAGE = "
注文がありました。
商品 個数
[[りんご]] [[1]]
[[みかん]] [[0]]
[[ぶどう]] [[3]]
";?>
実行すると
りんご1個
ーー(みかんの注文が0なので表示されず空白だけできてしまう)ーー
ぶどう3個
というメールが来てしまうで、みかんの部分を上に詰めさせたいです。
メールが来る仕組みなどは人がしたものなのでよく分かってません。
よろしくお願いします。
0973nobodyさん
2012/02/26(日) 03:04:07.86ID:???$cart=array("りんご"=>"1","みかん"=>"0","ぶどう"=>"3")
$MESSAGE = "注文がありました。\n\n商品 個数\n"
foreach($cart as $key => $val){
if ($val>0){ //$valが0以下の時は処理しない
$MESSAGE.="[[$key]] [[$val]] \n"
}
}
備考 POST情報はクライアント側で詐称できるので 値段を表示させる場合はPOSTさせないでDBに取りに行ったほうがいいと思うよ
0974nobodyさん
2012/02/26(日) 03:34:02.05ID:oyzRHeH9今日クラスを作成していたときにクラス名に悩んで、
候補のものをググってたら、C#の同名のクラスが出てきたんだ。
どんなメソッドがあるのかな?とチラっとみてみたら、
俺がクラスに含める予定だった処理が別クラスで処理されていた。
徹底的に細かくオブジェクトを分けていることに俺はショックを受けて絶望した。
これが本当のオブジェクト指向なのかと。
自信が一気になくなった俺はこれからやっていけるでしょうか?
0975nobodyさん
2012/02/26(日) 04:34:33.44ID:???0976sage
2012/02/26(日) 09:48:27.16ID:???そもそも論として
phpでオブジェクト指向実装は後付けの中途半端だし、
最適化されていないのでパフォーマンス悪いよ。
それだったらJava、C#みたいな強制的オブジェクト指向言語で
勉強して方がいい。他の言語で役に立つから。
0978nobodyさん
2012/02/26(日) 10:03:42.64ID:???一生勉強ってかw
0979sage
2012/02/26(日) 10:15:37.18ID:???これからもphpオンリー?
スマホアプリとか大丈夫?
サーバーサイドオンリーの人だとしても、
phpだけだったら守備範囲が狭くならないかい?
たとえばfacebookみたいに
phpで作りました。
↓
でもユーザー増えて負荷に耐えられなくなりました。
↓
基幹をC++やJavaに切り替えました。
というケースは無いの?
0981nobodyさん
2012/02/26(日) 10:29:56.54ID:???0982nobodyさん
2012/02/26(日) 10:34:22.17ID:???継承や再利用を考えると重要。
それより次スレ
0983sage
2012/02/26(日) 10:38:06.83ID:???細かく設計するとPHPの場合すぐパフォーマンスが悪くなる。
いずれにしてもPHPのオブジェクト指向は中途半端で使いにくい。
0984nobodyさん
2012/02/26(日) 10:39:22.25ID:???書き込みを行うwriteというメソッドがあったとする
PHPerの場合
ここに渡す引数はString型の$messageである
C#erの場合
ここに渡す引数は別クラスで作成したメッセージオブジェクトである
0985nobodyさん
2012/02/26(日) 11:12:49.13ID:yp5CCX+k$tmp = explode('@', $email);
$name = $tmp[0];
という書き方しか思い浮かびません。
もっと簡単にできる方法があれば教えて頂きたいです。
0986nobodyさん
2012/02/26(日) 11:18:26.38ID:???複数行になるのが簡単ではないと考えてるなら考えを改めるべし
0987nobodyさん
2012/02/26(日) 11:28:57.23ID:???一生現役ってことを考えると一生勉強くらい普通だと思った。
0988nobodyさん
2012/02/26(日) 11:31:05.44ID:???とか
explodeでいいと思うけどな
0989nobodyさん
2012/02/26(日) 11:34:48.98ID:???0990sage
2012/02/26(日) 11:35:02.59ID:???なぜ潰しが効かない、汎用性が低いphpなのか不思議。
汎用性が高い言語選べばよかったのに。
0991nobodyさん
2012/02/26(日) 11:39:39.13ID:???1つの言語習得すれば金輪際勉強せずに済む言語なんて皆無
0993nobodyさん
2012/02/26(日) 11:49:03.94ID:???0994nobodyさん
2012/02/26(日) 11:52:02.39ID:???0995nobodyさん
2012/02/26(日) 11:56:49.85ID:yp5CCX+kありがとうございます。助かりました。
複数行というより、わざわざ配列にするのが気持ち悪くて…。
0997nobodyさん
2012/02/26(日) 12:03:36.76ID:???大してオブジェクト指向の考えというのを理解できてないな
0999sage
2012/02/26(日) 12:24:07.98ID:???1000sage
2012/02/26(日) 12:25:05.67ID:???10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。