板検索:
【PHP】下らねぇ質問はここに書き込みやがれ 2 (998)
まとめビュー
1
デフォルトの名無しさん[sageteoff]   投稿日:2015/07/09 22:41:26  ID:7gcchy0Q.net(2)
PHPに関する下らない質問用避難スレです。
まず読むこと【PHPマニュアル】
http://www.php.net/manual/ja/
コメント1件


2
デフォルトの名無しさん[sage]   投稿日:2015/07/09 22:44:03  ID:7gcchy0Q.net(2)
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.5
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

◆質問する時の注意
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

◆質問後の注意
・ 解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・ 誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・ SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・ 次スレは>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

3
デフォルトの名無しさん[]   投稿日:2015/07/09 22:52:09  ID:WzYQ7/UQ.net
今このスレがダントツで勢い1番ある
これはPHPが死んでない証拠

かぜ…風を感じる
この風はやがで嵐になり世界を覆い尽くすだろう

4
デフォルトの名無しさん[]   投稿日:2015/07/10 16:26:47  ID:OIRLXo70.net
荒らしは呼ばないでくださいw

5
デフォルトの名無しさん[]   投稿日:2015/07/10 20:22:05  ID:+n//tbc7.net
PHPDocでさ、「この引数は未使用です」 ってのを明示したいんだけど
そういうのをしめすキーワード とかってあるの?

6
デフォルトの名無しさん[sage]   投稿日:2015/07/10 20:31:11  ID:I8IKrBJT.net(3)
windowsのphp5.6です。
phpってphpファイルの中に沢山のfunctionを記述しておいて、クライアントサイドのJSから特定のfunctionを実行するっていう事は出来ますか?
今はやり方が分からないので、どんなに短いfunctionでもphpファイルに分けているので、数行のファイルが沢山出来て混乱してます。
これを一つのphpファイルに纏めたいんですが。
コメント1件

7
デフォルトの名無しさん[sage]   投稿日:2015/07/10 21:36:55  ID:3n0kQAul.net
今は
http://localhost/[function名].php
ってことだと思うけど、
http://localhost/test.php?func=[function名]
みたいな感じのアクセスでfunctionが実行できるようにまずは目指すといいよ。

/*****/
function aaa() {
print "aaa";
}

if ($_GET["func"]=="aaa"){
aaa();
}
/*****/

とか。
コメント1件

8
デフォルトの名無しさん[sage]   投稿日:2015/07/10 22:42:24  ID:I8IKrBJT.net(3)
>7
サンキュー、うまく行ったよ。
感謝するよ。

9
デフォルトの名無しさん[sage]   投稿日:2015/07/10 23:42:29  ID:AQ+t2M5U.net
>6
>これを一つのphpファイルに纏めたいんですが。

関連する関数を特定のクラスにまとめてメソッド化する。
そうしてからそのオブジェクトのメソッドを呼び出せばいいと思う。
コメント1件

10
デフォルトの名無しさん[sage]   投稿日:2015/07/10 23:48:25  ID:I8IKrBJT.net(3)
>9
php初心者なんですが、関数をわざわざclass化するメリットが分かりません。
よく使う自分用のライブラリ関数なんですが、そういう場合でもclass化が良いのでしょうか?
コメント1件

11
デフォルトの名無しさん[sage]   投稿日:2015/07/11 13:22:52  ID:97s+/3Az.net
>10
>よく使う自分用のライブラリ関数なんですが、そういう場合でもclass化が良いのでしょうか?
自分の好きにするといいよ。

関数が100個あって100ファイルにばらけてある場合と
関数が100個あって10個ずつ10ファイルにクラスとしてまとめてある場合と
どちらが使いやすいかのトレードオフになる。

クラスにするメリットは関数を整理できて、カプセル化、再利用性、多態性の活用などがよく挙げられる。
ただし、まとめるにしても関連のあるものを上手くまとめて凝集度をあげないとメリットにはならない。

12
デフォルトの名無しさん[sage]   投稿日:2015/07/13 13:28:30  ID:oX4poPnV.net
オブジェクト指向だし使った方がいいと思うけど

13
デフォルトの名無しさん[sage]   投稿日:2015/07/15 00:53:43  ID:8rWetXNK.net
フレームワーク使えば大抵はurlでメソッド指定する形じゃないかえ?

14
デフォルトの名無しさん[sage]   投稿日:2015/07/15 11:59:32  ID:chI1HCyx.net(3)
クラス化するとき悩むのが
なにをメンバ変数で持ってどこからを引数で取るか
線引きがめんどくさい

構造に機能を持たせる
というOOの基本にたびたび戻らないと道に迷う

15
デフォルトの名無しさん[]   投稿日:2015/07/15 18:44:26  ID:chI1HCyx.net(3)
ループしない1回だけのループ

ってどうやって書いてる?
とちゅうでbreakするためだけに使うループ
コメント2件

16
片山博文MZ ◆T6xkBnTXz7B0 [sage]   投稿日:2015/07/15 18:53:14  ID:OqXQaHQl.net
>15
do {
...
} while (0);

17
デフォルトの名無しさん[sage]   投稿日:2015/07/15 20:55:04  ID:70iQnSqB.net
新たなるオライリー本か?
http://www.amazon.co.jp/dp/B00TN97BE2/

18
デフォルトの名無しさん[sage]   投稿日:2015/07/15 21:27:10  ID:R8AN98c6.net
オブジェクトが実体として何で出来ているかをイメージしてから組まないと自分含め使いにくいものができないか?

例えばカレンダーなら本体は日付をインデックスにしたカレンダーデータの配列とポインタになるDateオブジェクトだろ

あとは成り行きというか使いやすいように追加してけばいいんじゃね


19
デフォルトの名無しさん[sage]   投稿日:2015/07/15 23:17:08  ID:gZn+GrQT.net
>15
わざわざループにしなくてもifで良いだろ?
コメント1件

20
デフォルトの名無しさん[sage]   投稿日:2015/07/15 23:30:47  ID:chI1HCyx.net(3)
>19
たまには breakしましょ! って気分にもなる。


ところで、staticなプロパティには $this->hoge みたいなアクセスできないけど
これってどうしてこういう仕様になったん? $this ってつけるのがおこがましいから?
コメント1件

21
デフォルトの名無しさん[]   投稿日:2015/07/17 18:23:52  ID:+cEtQv4N.net
教えてほしいことがあります。

16文字の数字(10進数だが16進数と見立てて扱う)をTripleDESで暗号化したいのですが、
暗号化後の文字は同じ文字数にして16進数の文字列として出力したいのです。

PHPでの暗号化のロジックはここを参考にしました。
http://pentan.info/php/sample/mcrypt.html

しかしバイナリを文字列に変換する方法が分かりません。何かいい方法は無いですか?
コメント1件

22
デフォルトの名無しさん[sage]   投稿日:2015/07/17 21:17:19  ID:Es/joK9Z.net
>21
pack使えばいいんじゃね?

23
デフォルトの名無しさん[sage]   投稿日:2015/07/17 21:56:25  ID:fqZ49WSE.net
メアドとパスワードが一致したらログインしてheaderでindexに飛ばすってのでエラってる
ログインボタン一回クリックで真っ白になって、更新するとセッション有りでindexに飛ぶんだけどこれ何事?
XAMPPのローカル環境つかってます
コメント1件

24
デフォルトの名無しさん[sage]   投稿日:2015/07/17 22:28:49  ID:X7JQ6nLK.net
Locateヘッダちゃんと出てる?

25
デフォルトの名無しさん[sage]   投稿日:2015/07/18 00:35:44  ID:nGHsy5jQ.net
>23
日本語しゃべれないの

26
デフォルトの名無しさん[sage]   投稿日:2015/07/18 13:11:37  ID:IZxdPzJ7.net
aaa.php?
みたいな末尾の?って何を表すんですか?
例えば$ajaxのurl指定する場合など。
?なくても行けるんですが。何ですか?
コメント1件

27
デフォルトの名無しさん[sage]   投稿日:2015/07/18 13:21:37  ID:wSGt/trv.net
>26
aaa.phpっていうファイルがあるか確認してる。あればtrueが返ってくる。
・・・というのは冗談でURL引数って奴。コマンドライン引数みたいな感じ。

28
デフォルトの名無しさん[sage]   投稿日:2015/07/18 21:04:30  ID:tiSbDOek.net
$a = 6 if($b==3);

みたいな書き方ってある?
コメント2件

29
デフォルトの名無しさん[sage]   投稿日:2015/07/18 22:57:41  ID:BcDQum9s.net(2)
>28 それはない。

これならある。
if($b==3) $a = 6;

30
デフォルトの名無しさん[sage]   投稿日:2015/07/18 23:29:20  ID:BcDQum9s.net(2)
あと少し違うが3項演算子。

$a = ($b==3) ? 6 : 0;

31
デフォルトの名無しさん[sage]   投稿日:2015/07/18 23:46:57  ID:vbEi4sCx.net
>20
その方法ではインスタンスからは静的定義は参照できない。
$this::hogeを使いなされ
コメント1件

32
デフォルトの名無しさん[sage]   投稿日:2015/07/19 00:07:40  ID:tXAPBBi/.net
$a = ($b==3) ?: 6;
これもいけるはず。
コメント1件

33
デフォルトの名無しさん[sage]   投稿日:2015/07/19 02:23:02  ID:c+wEV4Gg.net

34
デフォルトの名無しさん[sage]   投稿日:2015/07/19 10:10:22  ID:0klZrZWn.net
>32
式 expr1 ?: expr3 の結果は、expr1 が TRUE と同等の場合は expr1、 それ以外の場合は expr3 となります。
http://php.net/manual/ja/language.operators.comparison.php#language.operators.comparison.ternary

35
デフォルトの名無しさん[sage]   投稿日:2015/07/19 13:22:36  ID:6ediHd5J.net
$a = isset($_GET['a']) ? $_GET['a'] : null;
とか書かないとエラー出る間抜けな仕様どうにかしてほしいわ
コメント1件

36
デフォルトの名無しさん[sage]   投稿日:2015/07/19 15:13:16  ID:RIeQhCDh.net
>35
けっきょく、それはそういう関数を書いた。
GETとPOST両対応必要とかよくあるし。

まあPHPのことだし、文句言いまくってたら
そのうちそういう関数が標準に作られると思う。

37
デフォルトの名無しさん[sage]   投稿日:2015/07/19 22:39:27  ID:WiE9ew2Y.net
PHP7以降は??演算子で同じことが実現できるようになるかと

38
デフォルトの名無しさん[sage]   投稿日:2015/07/20 00:23:03  ID:jGk3X2/t.net(2)
はーギブアップ。助けてくり。

レジ内のトランザクションファイルがBtrieveで管理されてるんです。そのファイルをlinuxにFTP後、phpで読むのにpervasiveからダウンロードしたodbcでコネクトしようとしてるんだが、どーにも上手くいかない。誰か経験した方おられますかー?
コメント1件

39
デフォルトの名無しさん[sage]   投稿日:2015/07/20 00:41:49  ID:KxSgKVVh.net
エラーの内容をここに記せば、助けてやらぬこともないが・・・
コメント1件

40
デフォルトの名無しさん[sage]   投稿日:2015/07/20 01:03:24  ID:jGk3X2/t.net(2)
>39
はうう。明日も早よから仕事でもう寝るでやんす。エラー内容は仕事の合間見てお披露目いたしやすん

41
デフォルトの名無しさん[sage]   投稿日:2015/07/22 04:21:40  ID:ekK874Uz.net(2)
>31
selfとはなんだったのか

42
デフォルトの名無しさん[sage]   投稿日:2015/07/22 04:26:01  ID:ekK874Uz.net(2)
>28
後置ifはphpには無い。英語が母語ならまだしも、日本人にとっては後置ifは自然じゃないし、無くてもよくない?

>38
使ったこともやったことも無いけど、シンプルに転送モードを間違えているとかではないのかな。
コメント1件

43
デフォルトの名無しさん[sage]   投稿日:2015/07/22 13:23:53  ID:ASUhZOW+.net
>42
$a = 6 if($b=="ikemen");

と書いたらとても自然になる。

44
デフォルトの名無しさん[sage]   投稿日:2015/07/22 17:06:34  ID:8TpaOP4G.net
vs2013でphpやっている人居ません?
ブレークポイント置いてもデバッガでブレークしない時が有るので困ってます。

45
デフォルトの名無しさん[sage]   投稿日:2015/07/23 15:49:24  ID:055pcEAQ.net
use の使い方がよくわからない
これってどこかが起点になるの?

46
デフォルトの名無しさん[sage]   投稿日:2015/07/24 20:15:48  ID:+CDH8aof.net
あの、こんな質問しても回答得られないかと思うんですが、
自作のPHPプログラムが
PHP5.3.3
で動かない関数か何かの機能があったので
PHP5.5.19
にしたら動いたのですが、それが何の関数あるいは機能だったのか忘れてしまいました。

確か、何か文字列を扱うような処理だったような気がするんですが。
もし何かご存じでしたら教えてください。

47
デフォルトの名無しさん[sage]   投稿日:2015/07/25 00:16:52  ID:d8tAw0yr.net(2)

48
デフォルトの名無しさん[sage]   投稿日:2015/07/25 00:22:57  ID:d8tAw0yr.net(2)
公式久々に見たが7のβリリースされたのか
誰か試した?

49
デフォルトの名無しさん[sage]   投稿日:2015/07/25 00:30:00  ID:bLirGUmg.net
>47
レスありがとうございました。
hex2binではなかったのですが、47さんのレス見て、記憶が蘇り

string ucwords ( string $str [, string $delimiters = " \t\r\n\f\v" ] )

バージョン   説明
5.4.32, 5.5.16 delimiters パラメータが追加されました。

でした。助かりました。
このdelimiters を使ったんでした。

50
デフォルトの名無しさん[sega]   投稿日:2015/07/25 17:38:12  ID:UNRH9nX8.net
use って、「この下全部」の指定できない?

51
デフォルトの名無しさん[]   投稿日:2015/07/25 18:39:15  ID:9eb0cRTw.net
初心者がPHPを学んで、在宅ワークすることはできますか?クラウドワークスとか使って。
コメント2件

52
デフォルトの名無しさん[sage]   投稿日:2015/07/25 22:17:10  ID:UyNvGgTG.net
>51
仕事ふっても損害賠償で追い込まれそう。

53
デフォルトの名無しさん[sage]   投稿日:2015/07/25 23:49:31  ID:58G5Vzfx.net(2)
関数内のコードを文字列として取得したいのですが、知恵を貸してください。

<?php
$closure = function () {
  echo 'ああああ';
};
$function = new ReflectionFunction($closure);
$function->getStartLine(); // 2
$function->getEndLine(); // 4

↑の場合、始点が「2行目12文字目」で、終点が「4行目2文字目」という結果を得られることが理想です。
今のところ、その関数が宣言された行数は取得できますが、何文字目までは分かりません。

ちなみに、PHP5.4以降です。
コメント2件

54
デフォルトの名無しさん[sage]   投稿日:2015/07/25 23:56:28  ID:58G5Vzfx.net(2)
>53 の続き

行数だけでも取得できそうですが、↓の場合、行数だけではどちらが対象の関数か判断できません。

<?php
$a = function () { ... }; $b = function () { ... };
$function = new ReflectionFunction($b);
$function->getStartLine(); // 2
$function->getEndLine(); // 2

55
デフォルトの名無しさん[sage]   投稿日:2015/07/26 01:19:35  ID:h4z7MVDb.net
>53
自分自身を読めばいいんじゃね?
コメント1件

56
デフォルトの名無しさん[sage]   投稿日:2015/07/26 01:49:05  ID:zHKRpE7w.net
>55 返信ありがとうございます。完璧ではありませんが、自己解決しました。

<?php

// (1)関数名から特定できました。
function bar() { ... } function foo() { ... }
codeDump('foo');

// (2)変数名をたどって特定できました。
$bar = function () { ... }; $foo = function () { ... };
codeDump($foo);

// (3)呼び出し元の行数から特定できました。
codeDump(function () { ... });

// (4)どっちの関数か分からない。
codeDump(function () { ... }); codeDump(function () { ... });

(4)もcodeDump()の実行を記録すれば、何とかいけそうな気もします。
codeDump()のコードは長いので省きます。

57
デフォルトの名無しさん[sage]   投稿日:2015/07/26 16:02:52  ID:ZSlyWYZ/.net
>51
出来るがやめたほうがいい。
毎日半日以上土日も使って取り組んで1ヶ月で5万円とかになるだろうから、
ニートでもコンビニで働いた方がいい。

58
デフォルトの名無しさん[sage]   投稿日:2015/07/27 17:27:06  ID:nDok85gM.net
php5.6のwindows版x64ビルドってexperimentalって表示されているけれど、webサーバーに入れるならx86版が無難なのか?
あえてx64版入れたらパフォーマンス上がったりするん?

59
デフォルトの名無しさん[sage]   投稿日:2015/08/01 04:29:29  ID:VbjGDeVR.net
今ならx64がおすすめ

60
デフォルトの名無しさん[sega]   投稿日:2015/08/01 11:22:12  ID:Idj4/r/L.net
PHP7には 変数名の大文字小文字を無視するオプションはある?

61
デフォルトの名無しさん[sage]   投稿日:2015/08/02 10:41:08  ID:6SU53Ow+.net
PHPで作成したプログラムを納品する時に暗号化して納品したいのですが無料で使えるものってありますか?
コメント1件

62
デフォルトの名無しさん[sage]   投稿日:2015/08/02 13:39:57  ID:5pxTtzkh.net
>61
そのコードなら、そのまま納品しても大丈夫だと思うよ

63
デフォルトの名無しさん[sage]   投稿日:2015/08/02 13:59:43  ID:GbrSR7tz.net(2)
それを心配しないといけない客の仕事をしたのが運の尽き

64
デフォルトの名無しさん[sage]   投稿日:2015/08/02 14:57:32  ID:K/J2HC0o.net
if(count($hoge) < 5)
  $foo = count($hoge);

こんなコード書くとcount()が2回実行されて無駄だから

$bar = count($hoge);
if($bar < 5)
  $foo = $bar;

みたいにしたほうがいいのかな?
コメント1件

65
デフォルトの名無しさん[sage]   投稿日:2015/08/02 17:45:59  ID:GbrSR7tz.net(2)
2回程度なら別に。
ループ終了条件に入れるのは避けるといいよ
コメント1件

66
デフォルトの名無しさん[sage]   投稿日:2015/08/02 20:01:49  ID:sk4/2k9I.net
>64
宗派による。
一つは、関数count()が2回実行されて無駄だよ派。
もう一つは、一時変数$barを無駄に使うな派。
コメント1件

67
デフォルトの名無しさん[sage]   投稿日:2015/08/02 21:13:03  ID:lE/E+5km.net
>65>66
サンクス!
一時変数を無駄に使うな派に入信しまぁす

68
デフォルトの名無しさん[]   投稿日:2015/08/03 11:02:06  ID:ecUSu7IP.net
配列で変数に文字列を代入する場合、
変数名は「ダブルコーテーション」で囲うと参考書には書かれてたのですが
サンプル(↓)にはシングルコーテーションで囲われてました。
シングルとダブルでどう使い方が違うのでしょうか?


$conf = array(

'test1' => "1234"
'test2 => "abcf"
);
コメント1件

69
デフォルトの名無しさん[sage]   投稿日:2015/08/03 11:27:50  ID:4ImaC/Mz.net(2)
PHPの場合シングルのほうが変数展開が起きない分微々たるもんだが総じて早い
変数を入れたり改行コードなんかの制御入れたりしない場合はシングルのほうがいい
参考書なんてのは作者にあわせたコーディング規約で書かれてるので
その作者好みのコードであってそれが全てではないことは頭に入れておいたほうがいい
特に初心者向けだとシングルよりダブルのほうがトラブルが起きにくいっていう事情もある
"こんにちは{$name}さん\n";
'こんにちは' . $name . 'さん' . "\n";

変数展開ってのは↓のようなコード
$a = 'test1';
$conf = array(
"$a" => 1234
);
echo $conf['test1'];
コメント2件

70
デフォルトの名無しさん[sage]   投稿日:2015/08/03 11:39:25  ID:0IyVer1H.net
>69
> "こんにちは{$name}さん\n";
これも変数展開ですよ

71
デフォルトの名無しさん[sage]   投稿日:2015/08/03 11:41:05  ID:4ImaC/Mz.net(2)
>特に初心者向けだとシングルよりダブルのほうがトラブルが起きにくいっていう事情もある
これの説明で書いたけど書く場所が悪かったね

72
デフォルトの名無しさん[sage]   投稿日:2015/08/03 12:13:37  ID:93o/VQtA.net
>68
「変数名」ではなく「連想配列のキー」をどう囲うかという質問じゃないの?

73
デフォルトの名無しさん[sage]   投稿日:2015/08/03 15:57:04  ID:nTSIXxVa.net
>69
あれほとんど気のせいレベルらしいよ
どっかで速度測ってたけど、むしろ逆なくらい差が無かった

74
デフォルトの名無しさん[sage]   投稿日:2015/08/03 19:06:22  ID:kjCv49NU.net(2)
http://www.phpbench.com/
http://www.blueshoes.org/en/developer/php_bench/

Quote Typesdouble (") vs. single (') quotes
ここの5番目と6番目。
両サイトじゃ結果が違うけど自分のテスト環境じゃ同様に1000回ループで後者のダブルほうが遅くなる。
Windows 32bit 5.4.12で0.00049と0.00064
Linux 64bit 5.4.16で0.0042と0.00089

phpbench.comでどういう環境で差がでないのか知りたいが環境記述が見当たらないな。
ヘッダ見る限りじゃUnix系のPHP5.4.29みたいで、自分に近い環境のようだけど、
ベンチマークに使ってる機材は別かもしれないし。

75
デフォルトの名無しさん[sage]   投稿日:2015/08/03 19:07:47  ID:kjCv49NU.net(2)
>Linux 64bit 5.4.16で0.0042と0.00089
Linux 64bit 5.4.16で0.00042と0.00089に訂正

76
デフォルトの名無しさん[sage]   投稿日:2015/08/04 01:35:51  ID:XAt8t1hS.net
アクセラレータかなんか使ってんじゃね?試してないからなんともいえないけど

77
デフォルトの名無しさん[sage]   投稿日:2015/08/04 10:52:31  ID:3xU88wGi.net
PHP tools for VS
使っている人いる?
MS純正でこういうの無いの?

78
デフォルトの名無しさん[]   投稿日:2015/08/05 02:41:24  ID:2Cq1bTVi.net(2)
Web上でパスワード変更するためのフォームを作成中です。
環境は、OS: Ubuntu 14.04.2 LTS カーネル: Linux 2.6.32 PHPバージョン: 5.5.9です。
以下のようにしてPHP上でexpectとpasswdコマンドを呼び出してパスワードを変更させています。

$cmd = EXPECT_PATH." -c \"\n";
$cmd .= PASSWD_COMMAND."\n";
$cmd .= "expect \\\"(current) UNIX password:\\\"\n";
$cmd .= "send -- \\\"".$old_password."\\n\\\"\n";
$cmd .= "expect \\\"Enter new UNIX password:\\\"\n";
$cmd .= "send -- \\\"".$new_password."\\n\\\"\n";
$cmd .= "expect \\\"Retype new UNIX password:\\\"\n";
$cmd .= "send -- \\\"".$retype_new_password."\\n\\\"\n";
$cmd .= "expect \\\"passwd: all authentication tokens updated successfully.\\\"\n";
$cmd .= "send -- \\\"exit\\n\\\"\n";
$cmd .= "\"";

$stream = ssh2_exec($connection, $cmd);
fclose($stream);

ところがこの方法だと、実行中にシェル上でps -elf | grep passを実行すると
「/usr/bin/expect -c spawn /usr/bin/passwd expect "(current) UNIX password:" send -- "現在のパスワード\n"…send -- "exit\n"」
のようにパスワードが平文で表示されてしまいセキュリティ上問題があると思われます。
そこでphp側でパスワード等の情報を外部シェルスクリプトに渡して外部シェルスクリプト側でパスワードを変更させようと考えてますが、外部シェルスクリプトに変数を渡す方法を教えていただけますでしょうか。
なお、ssh2_execの第4引数に環境変数を設定できそうなので試してみましたがPHP Warning: ssh2_exec(): Failed setting old_password=oldpassword on remote end in /xxx/xxx/test.php on line XXのように言われてしまいました。
コメント1件

79
78[]   投稿日:2015/08/05 02:46:10  ID:2Cq1bTVi.net(2)
すみません。投稿時の文字数の規制のためコードを省略していた際に誤って一緒に削ってしまいましたが、
define('EXPECT_PATH', '/usr/bin/expect');
define('PASSWD_COMMAND', 'spawn /usr/bin/passwd');
が定義されています。
また、>78のコードの前段階で以下のようにssh接続を行っています。
$server = "localhost";
$port = 22;

if (!$connection = ssh2_connect($server, $port)) {
echo "Connection failed!\n";
exit;
}

if (!ssh2_auth_password($connection, $username, $old_password)) {
echo "Authentication failure!\n";
exit;
}
よろしくお願いいたします。

80
デフォルトの名無しさん[sage]   投稿日:2015/08/05 03:32:13  ID:P4ayKmpW.net

81
78[sage]   投稿日:2015/08/06 03:00:16  ID:eVr6rnl0.net
>80
ありがとうございます。なんとか解決できました!

82
デフォルトの名無しさん[]   投稿日:2015/08/07 00:32:15  ID:b6GYbe8Q.net(2)
社内Lan上でWebサーバ立ち上げると、社外から見られることはあるんですか?
ただし、そういう設定にはしていない前提で御回答ください。
コメント3件

83
デフォルトの名無しさん[sage]   投稿日:2015/08/07 00:46:40  ID:kZ4TYkCP.net
>82
あなたやネットワーク管理者が一般的にそういう設定にはしていないとしても、バカがいるとできる

84
デフォルトの名無しさん[]   投稿日:2015/08/07 01:02:30  ID:b6GYbe8Q.net(2)
バカが何するとそうなるのでしょう?
あと、php5.5使ってます
コメント1件

85
デフォルトの名無しさん[sage]   投稿日:2015/08/07 01:07:36  ID:Tkx3sFxb.net
そういう設定にはしていない事が確実なら、アクセスされる事はないんだろう。
社外から見られる可能性はあるか?という質問なら、見られる可能性はあるんだろう。

86
デフォルトの名無しさん[sage]   投稿日:2015/08/07 11:17:33  ID:VjeH+b7c.net(2)
>84
PHPは関係ない。

87
デフォルトの名無しさん[sage]   投稿日:2015/08/07 12:06:55  ID:toqjv3cn.net
>82
的確なネットワーク構成なら問題ない
ネットワーク管理者がうんこじゃなければ平気だろう

88
デフォルトの名無しさん[sage]   投稿日:2015/08/07 17:20:27  ID:eN4mur/X.net
>82
例えそういう設定にしてなくとも可能性はある
例えば未知の脆弱性を突かれてネットワークに侵入されたり、ウイルスやトロイ等を仕込まれたり・・・例を挙げればキリが無い

89
デフォルトの名無しさん[sage]   投稿日:2015/08/07 18:05:42  ID:o4PrLinW.net
v6がない理由を50文字以内くらいで教えて
コメント2件

90
デフォルトの名無しさん[sage]   投稿日:2015/08/07 18:17:20  ID:VjeH+b7c.net(2)
>89
V8を讃えよ!

91
デフォルトの名無しさん[sage]   投稿日:2015/08/07 18:28:40  ID:oad5u1TR.net
>89
V6はTOKIOに負けたから

92
デフォルトの名無しさん[]   投稿日:2015/08/08 00:09:09  ID:UAFhNLHx.net
すみません。ほんとに初心者で申し訳ないのですが教えてください。
以下のif文が実行されないのですが、どこが間違っているのでしょうか?

$text = "[ja]";
if( strpos($text, "\[:ja\]") ){
echo "match";
}

よろしくお願いいたします。

93
デフォルトの名無しさん[sage]   投稿日:2015/08/08 00:53:10  ID:fdExEYFc.net
if文は実行されてるけど条件に合致していないだけ
あとその条件文でstrposは一致した場合0を返すときがあるからその書き方じゃだめ
if ( strpos($text, "\[:ja\]") !== false )
とか

94
デフォルトの名無しさん[]   投稿日:2015/08/08 15:28:03  ID:JK2LUyvo.net(2)
アスキーコードが入った配列を 文字列にしたいんだけど
すっきり綺麗に書く方法はありますか?

$bins = array(85,78,75,79);
$text = unko($bins);

unko() を作りたい。
コメント1件

95
デフォルトの名無しさん[sage]   投稿日:2015/08/08 15:39:44  ID:cerAE1Gg.net
>94
yieldとchr使えば?
コメント1件

96
デフォルトの名無しさん[sage]   投稿日:2015/08/08 16:16:50  ID:JK2LUyvo.net(2)
>95
yieldをこれにどう使うのかわかんねー・・・

97
デフォルトの名無しさん[sage]   投稿日:2015/08/08 18:50:02  ID:d7oiKQ0C.net
すっきり綺麗に書きたい気持ちはわからんでもないけど、関数化するなら別によくない?

98
デフォルトの名無しさん[sage]   投稿日:2015/08/09 10:11:38  ID:Bf9QBgBr.net
復活〜

99
デフォルトの名無しさん[sage]   投稿日:2015/08/09 12:08:35  ID:bIJ4oByb.net
packすりゃあいいじゃんと思ったけどPHPのpackは配列渡しても正しく動かないのか・・・・・
そうなると $text = implode('', array_map('chr', $bins)) がコードとしては簡潔かな?
コメント1件

100
デフォルトの名無しさん[sage]   投稿日:2015/08/09 20:38:11  ID:un5fqtRA.net
>99
それじゃウンコ()使ってないからダメだな

101
デフォルトの名無しさん[sage]   投稿日:2015/08/09 20:42:56  ID:1cZqWlyS.net(2)
PHPって画面を遷移させずに画面内に動きを起こすことってできないんですか?
例えば、2つのテキストボックスに数値を入れるタイプの簡単な計算機を作って、
「計算」ボタンを押すと画面遷移させず更新もさせずに結果をその画面に表示するとかです
コメント1件

102
デフォルトの名無しさん[sage]   投稿日:2015/08/09 20:52:01  ID:XO0o9kDB.net
>101
無理。javascriptで。
コメント1件

103
デフォルトの名無しさん[sage]   投稿日:2015/08/09 21:19:31  ID:1cZqWlyS.net(2)
>102
そうですか
ありがとうございます

104
デフォルトの名無しさん[sage]   投稿日:2015/08/11 01:01:18  ID:vIC4fnIq.net
phpってxdebug入れると遅くなるのか?
俺に教えやがれ!さあ来い!

105
デフォルトの名無しさん[]   投稿日:2015/08/11 10:24:08  ID:TmniTjHd.net
foreachで十分なんだけど、でもカウンターも欲しい ってときどうしてる?

A: for($i=0; $i<count($list); $i++){ $a=$list[$i]; 処理; }
B: $i=0; foreach($list as $a){ 処理; $i++; }

Bの方が好きなんだけど、$iがループ外にあるのがすげーいや。
コメント1件

106
デフォルトの名無しさん[sage]   投稿日:2015/08/12 03:31:05  ID:uUCq7Pj1.net(3)
>105
ループ終了条件にcountを使うなと教わらなかったのか?
よって前者は $cnt = count($list); がループ外に出現することになる。
コメント1件

107
デフォルトの名無しさん[sage]   投稿日:2015/08/12 08:11:15  ID:sFpfPRX7.net(3)
heredocの中でjson_encodeを使うことは出来ないのですか?
<?php
$hensu = '値';
echo <<<EOM
<script type="text/javascript">
var hensu2 = <?php echo json_encode($hensu) ;?>;
alert( hensu2 );
</script>
EOM;
?>
こういうのが出来ませんでした。
コメント1件

108
デフォルトの名無しさん[sage]   投稿日:2015/08/12 10:56:55  ID:XD0FvRJl.net
そりゃそうだろ
$json_encode = "json_encode";
しておいて
<?php echo json_encode($hensu) ;?>;

{$json_encode($hensuu)}
にしたらどうなる?
コメント1件

109
デフォルトの名無しさん[sage]   投稿日:2015/08/12 10:59:49  ID:MGGhiGE4.net
>107
ヒアドキュメント内では、変数や特殊文字は展開できるけど、関数は実行できないよ。
関数は外に出すといい。
http://php.net/manual/ja/language.types.string.php#language.types.string.syntax.heredoc

<?php
$hensu = '値';
$hensu2 = json_encode($hensu);
echo <<<EOM
<script type="text/javascript">
var hensu2 = {$hensu2};
alert( hensu2 );
</script>
EOM;
?>
コメント2件

110
デフォルトの名無しさん[sage]   投稿日:2015/08/12 14:10:09  ID:sFpfPRX7.net(3)
>108>109
上手く行きました。有難うございます。
この
 { } 
の意味は何ていうキーワードでくぐれば良いでしょうか?
コメント1件

111
デフォルトの名無しさん[sage]   投稿日:2015/08/12 14:31:29  ID:uUCq7Pj1.net(3)
>110
>109のリンク先に書いてるよ
コメント1件

112
デフォルトの名無しさん[sage]   投稿日:2015/08/12 15:49:57  ID:IssKFxaM.net
>106
教わったけど面倒くさいから・・・ それにこういうのは、
いつかそのうちPHPが実行時に最適化するはずなので
その日を信じて今日も生きる
コメント1件

113
デフォルトの名無しさん[sage]   投稿日:2015/08/12 16:31:09  ID:h9xT+Vg3.net
別にそうしなければならないというわけでもないからな
コンパイラ感覚で書いてる人は多いでそ

114
デフォルトの名無しさん[sage]   投稿日:2015/08/12 17:03:02  ID:sFpfPRX7.net(3)
>111
波括弧構文というのですか。難しい。
コメント1件

115
デフォルトの名無しさん[sage]   投稿日:2015/08/12 17:15:49  ID:uUCq7Pj1.net(3)
>112
まぁボトルネックになってたら出すでもいいけど。

116
デフォルトの名無しさん[sage]   投稿日:2015/08/13 05:07:20  ID:jvB0Vatl.net
>114
意味さえわかればその辺の翻訳者が適当につけた名前なんてどうでもいいわ
別になくても動くけど文字としての$記号があったら意図しない動作をする場合もあるし
変数であるのを明示するのはいいこと

117
デフォルトの名無しさん[sage]   投稿日:2015/08/13 09:15:37  ID:mPByWcg9.net
値は$varです。
とかやると
“$varです。”という変数の内容を出そうとするからな、{}は常に入れるべきかなあ

118
デフォルトの名無しさん[]   投稿日:2015/08/14 16:18:46  ID:4t7qYmCW.net(4)
質問なのですが、phpとmySQLを使って画像処理をしたいのですが、どんなライブラリを取り入れればよいでしょうか。
コメント1件

119
デフォルトの名無しさん[sage]   投稿日:2015/08/14 16:33:11  ID:tycV63/U.net
>118
gdつけてコンパイルしなおせば?
あとmysqlがなぜ必要と思った?
コメント1件

120
デフォルトの名無しさん[]   投稿日:2015/08/14 16:46:35  ID:4t7qYmCW.net(4)
>119
目的としては特定の色に名前を付けてその名前を表示する、みたいなことをしたいので、
そのためにmySQLを入れようかと思ったのですが、不要ですか??

121
デフォルトの名無しさん[sage]   投稿日:2015/08/14 16:51:26  ID:qC8ZbOuS.net

122
デフォルトの名無しさん[sage]   投稿日:2015/08/14 16:54:26  ID:vqGh2HbU.net(2)
PHPってソース解析される可能性ありますか?
コメント1件

123
デフォルトの名無しさん[]   投稿日:2015/08/14 16:54:31  ID:4t7qYmCW.net(4)
>121
単語だけ言われましても・・・(´・ω・`)
コメント1件

124
デフォルトの名無しさん[sage]   投稿日:2015/08/14 17:07:33  ID:mMb0xxGG.net(4)
>123
環境は?
phpのモジュールは追加するのかビルドしてるのか?
MySQLはインストール済み?
MySQL側の管理はどの程度できる?
SQL書ける?
コメント1件

125
デフォルトの名無しさん[sage]   投稿日:2015/08/14 17:10:02  ID:mMb0xxGG.net(4)
>122
無い
でも穴開けられやすいから注意な
コメント1件

126
デフォルトの名無しさん[]   投稿日:2015/08/14 17:42:14  ID:4t7qYmCW.net(4)
>124
環境はxamppとaptana3を使っています。
phpに関しては初期設定以外特に追加もビルドもしていません。
mySQLはこれから手をつけようか、というところです。
どうでしょうか?
コメント2件

127
デフォルトの名無しさん[sage]   投稿日:2015/08/14 17:44:27  ID:vqGh2HbU.net(2)
>125
何に穴が開くんでしょうか?
コメント1件

128
デフォルトの名無しさん[sage]   投稿日:2015/08/14 18:34:43  ID:mMb0xxGG.net(4)
>127
パーミッション関係なしに拡張子だけで実行できるじゃんか
アップローダ作ってうっかりphpファイルをコンテンツの場所に置けるようにしただけで
ソース読むphp置けちゃったりするべ。

129
デフォルトの名無しさん[sage]   投稿日:2015/08/14 18:40:06  ID:mMb0xxGG.net(4)
>126
これから覚えることが多すぎる
xamppを一つ一つ覚えてからかなあ、特に管理部分

画像処理といえるのかわからんけど、色の名前とパラメタの対応とか
将来的に変わらないデータならDB使うまでもないような気はする
練習にはいいけど

130
デフォルトの名無しさん[sage]   投稿日:2015/08/14 20:38:34  ID:9UnPChAc.net
>126
画像処理とMySQLはほとんど関係ない。
まずは、GDとかで四角形なり画像の出力を試すといい。
http://php.net/manual/ja/book.image.php
http://php.net/manual/ja/function.imagerectangle.php

もしGDがはいってないならインストール。
ただGDって直線はいいけど曲線は苦手。ギザギザになる。
コメント1件

131
デフォルトの名無しさん[sage]   投稿日:2015/08/15 01:32:47  ID:+JKpzm6t.net(4)
クラスの中でDBからひっぱってきたデータを多次元配列で変数に納めてリターンしたいんですけど中では無理なんですかね。外でforeachで回すのも無駄なので方法を教えてほしいです。
コメント1件

132
デフォルトの名無しさん[sage]   投稿日:2015/08/15 10:49:18  ID:Wj7gSpLp.net
>131
外でなく中でっていうのはSQLでやるってこと?
コメント1件

133
デフォルトの名無しさん[sage]   投稿日:2015/08/15 14:01:37  ID:iShapREu.net(3)
>130
gdってインストールで済むのか。 ほんとだパッケージあるじゃん。
毎回コンパイルしてたわ。 なんだよもー!

134
デフォルトの名無しさん[sage]   投稿日:2015/08/15 15:04:43  ID:+JKpzm6t.net(4)
>132
オブジェクトから多次元配列をリターンさせたい
コメント1件

135
デフォルトの名無しさん[sage]   投稿日:2015/08/15 17:21:41  ID:iShapREu.net(3)
>134
自作クラスにぶっこめばいいぞ。
fetchallでクラス指定できるじゃん?あれ使う。
コメント1件

136
デフォルトの名無しさん[sage]   投稿日:2015/08/15 18:26:16  ID:+JKpzm6t.net(4)
>135
素人なもんであれじゃわからんです。
コメント1件

137
デフォルトの名無しさん[sage]   投稿日:2015/08/15 20:43:53  ID:iShapREu.net(3)
>136
もー! 「fetchall クラス あれ」 で検索で出てくるじゃん!

自分でテーブルごとにクラス作ってカラム名でメンバ変数書いて
$sth->fetchAll(PDO::FETCH_CLASS, クラス名);
ってやるやつ。 もういきなりメンバ変数に値入って返るから。
コメント3件

138
デフォルトの名無しさん[sage]   投稿日:2015/08/15 21:53:38  ID:+JKpzm6t.net(4)
>137
たぶんあった。ありがとう。

139
デフォルトの名無しさん[sage]   投稿日:2015/08/16 00:09:19  ID:W1BPcUvW.net
>137
ヨコヨコからです。こんなのがあるのか知らなかった。モノスンゴイ便利〜

140
デフォルトの名無しさん[]   投稿日:2015/08/16 04:56:30  ID:EjNR4Gby.net
windows(utf-16)でファイル・ディレクトリ操作でき無いですか?
ASCII、SJISならいいんですが。その他のutf-16ができません。
拡張モジュールとかありますか?



how to iterate over non-English file names in PHP - Stack Overflow
http://stackoverflow.com/questions/2947941/how-to-iterate-over-non-eng...
コメント1件

141
デフォルトの名無しさん[sage]   投稿日:2015/08/16 09:57:03  ID:z6SsnuJ9.net(2)
>137
すまねえ☆ついで質問で申し訳ないですがオブジェクトの中でquery,prepare,executeが使えないんですけどこれってどうすればいいんですかね。
コメント1件

142
デフォルトの名無しさん[sage]   投稿日:2015/08/16 10:15:01  ID:UepVPRcb.net
>140
リンク先にPHPからwindows apiを叩けばできるよって書いてあるよ

143
デフォルトの名無しさん[sage]   投稿日:2015/08/16 12:18:13  ID:z6SsnuJ9.net(2)
>141 自己解決。PDOにせつぞくできてなかっただけだった。すまねえ☆

144
デフォルトの名無しさん[]   投稿日:2015/08/16 23:12:07  ID:ziQJsyKn.net(2)
PHPでレンサバ(xサーバー)のMySqlに接続ができません。
$link = mysql_connect($url,$user,$pass) or die("MySQLへの接続に失敗しました。");
$urlについてです><
もしご存知の方いたら教えていただけないでしょうか。
初心者ですいません。
コメント1件

145
デフォルトの名無しさん[sage]   投稿日:2015/08/16 23:17:18  ID:ssoeETHe.net
>144
localhostでええやん。

146
デフォルトの名無しさん[]   投稿日:2015/08/16 23:19:43  ID:ziQJsyKn.net(2)
レンサバでもlocalhostでいいんですか?
コメント1件

147
デフォルトの名無しさん[sage]   投稿日:2015/08/16 23:35:20  ID:FEBcibKq.net
mysql_connect
http://php.net/manual/ja/function.mysql-connect.php

$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
die('接続できませんでした: ' . mysql_error());
}
echo '接続に成功しました';
mysql_close($link);

警告
この拡張モジュールは PHP 5.5.0 で非推奨になり、PHP 7.0.0 で削除されました。
MySQLi あるいは PDO_MySQL を使うべきです。
コメント1件

148
デフォルトの名無しさん[sage]   投稿日:2015/08/17 00:09:15  ID:oEBSVNMg.net
>147
まだ削除されてないってことだよな

149
デフォルトの名無しさん[sage]   投稿日:2015/08/17 00:13:32  ID:5ktVpXOG.net
7の予定まで書かれるようになったんだ

150
デフォルトの名無しさん[sage]   投稿日:2015/08/17 00:18:17  ID:roquPsRR.net(4)
>146
そのスクリプトを設置してる場所からみてlocalhostにあるmysqlデータベースに接続ってこと

データベースサーバを別サーバに用意してるレンタルサーバもあるが
格安レンタルサーバとか共有サーバはだいたいwebサーバと同じサーバにおいてる
コメント1件

151
デフォルトの名無しさん[sage]   投稿日:2015/08/17 00:31:20  ID:LyqGgPuc.net(3)
>150
そんなんやめてsqlite3にしたら?軽いし、早いしいいぞぉ

152
デフォルトの名無しさん[]   投稿日:2015/08/17 05:34:58  ID:MZO1YKpV.net
sqliteは大規模ではほぼ使われてない。

153
デフォルトの名無しさん[sage]   投稿日:2015/08/17 06:15:54  ID:roquPsRR.net(4)
sqliteは100行単位でデータ増えただけでもベンチに数字として現れるからな
かといって体感出来るほど遅いと感じるまではしばらく余裕がある
個人で使うには十分だがシンプルすぎてsqliteから他のDBに移行したいとき苦戦する
ORマッパー使えばいいが無駄が多いパフォーマンス重視なら使いたくない
コメント2件

154
デフォルトの名無しさん[sage]   投稿日:2015/08/17 06:17:21  ID:roquPsRR.net(4)
何が言いたいかというとsqlite使うなら
その前にガチムチmysqlさんをある程度触ってからがお勧め

155
デフォルトの名無しさん[sage]   投稿日:2015/08/17 09:36:26  ID:nRo3eKd8.net
>153
逆じゃね?
sqliteできちんと仕事できるなら
mysqlでもpostgesqlでもどこでも生きていける
コメント1件

156
デフォルトの名無しさん[sage]   投稿日:2015/08/17 10:18:00  ID:roquPsRR.net(4)
>155
その通りだが別に逆ではない
sqliteはシンプルで簡単だと思われがちだが
あれは完全に玄人用

157
デフォルトの名無しさん[sage]   投稿日:2015/08/17 16:17:07  ID:/53UNtSq.net
PHPって変数の寿命ないのかよ。ループで値おかしくなって焦ったわ。
コメント1件

158
デフォルトの名無しさん[]   投稿日:2015/08/17 16:26:56  ID:ZyRhfbbF.net
使い方が変なんじゃ?

159
デフォルトの名無しさん[sage]   投稿日:2015/08/17 17:05:17  ID:yQK+Nz/F.net
>157
foreachで参照でも使ったぁ?

160
デフォルトの名無しさん[sage]   投稿日:2015/08/17 17:26:14  ID:M1oT74qU.net
foreach内参照は最初はハマるわなー

161
デフォルトの名無しさん[sage]   投稿日:2015/08/17 19:46:54  ID:D8EzW0OH.net
PHPにはブロックスコープないからね。

162
デフォルトの名無しさん[sage]   投稿日:2015/08/17 22:24:07  ID:LyqGgPuc.net(3)
>153
大規模、小規模ふくめてoracle、mssql、mysql postgresqlのシステム組み上げ10年くらいだが、たまたま今年sqlite3でphpのシステム組み上げ機会に恵まれまして。

いやまー信じられない程の取り回し。dbファイルもシステムと別に取り扱いできて楽だし、軽いしこりゃいーわ。今までのdbシステムの面倒くささなんだったのよって事で、俺的オヌヌメ。それまではmysql一択だったんだけどね。

163
デフォルトの名無しさん[sage]   投稿日:2015/08/17 23:08:08  ID:X1R8xEy2.net
見栄をはらなくてもいいんだよ
コメント1件

164
デフォルトの名無しさん[sage]   投稿日:2015/08/17 23:36:59  ID:LyqGgPuc.net(3)
>163
見栄はらせろよ

165
デフォルトの名無しさん[sage]   投稿日:2015/08/18 11:19:17  ID:fW4GU+Ok.net
sqliteは、今まで使ってたRDBMSの知識そのまま生かせるから
以前からDB触ってた人にとっては楽だよな
しかもGUI含めてファイルを直接覗けるツールは山ほどあるし

166
デフォルトの名無しさん[]   投稿日:2015/08/18 18:56:35  ID:x2qVDreM.net
functionであちこちに自作の関数作るのにハマってるんですけど、これって一個のファイルにまとめた方が良いんですか?
それとも自分で管理できればokですか?
なるべく個別に分けた方が読み込み減って速いですか?

167
デフォルトの名無しさん[sage]   投稿日:2015/08/18 19:47:48  ID:+37xVzyg.net
function毎にファイル分けるのは阿呆だけど
includeコストかかるし全く関係ないfunctionを適当にまとめてもなぁ
文字列関係の操作や配列関係の操作でわけて必要なものをincludeするとかすればマシだと思う
まぁオブジェクト指向勉強してクラス使い始めればそんなこと考えることもなくなるぜ

168
デフォルトの名無しさん[]   投稿日:2015/08/18 21:57:49  ID:NoP1vlWj.net
144です!無事できました!xxxxxxxxx.cgidbでXサーバーのmysqlに接続できました!
ご回答していただきましてありがとうございました!

169
デフォルトの名無しさん[sage]   投稿日:2015/08/18 23:35:47  ID:vA+EdJDa.net
http://notepad.cc/share/5Fjv3BkLKc

Warning: imagecolorallocate() expects parameter 1 to be resource, null given in /home/u356689811/public_html/img.php on line 21

Warning: imagettftext() expects parameter 1 to be resource, null given in /home/u356689811/public_html/img.php on line 23

Warning: file_get_contents(http://iup.2ch-library.com/jbk.cgi): failed to open stream: HTTP request failed! HTTP/1.1 403 Forbidden in /home/u356689811/public_html/img.php on line 38

このようなエラーがでます・・・
コメント1件

170
デフォルトの名無しさん[sage]   投稿日:2015/08/19 00:02:13  ID:P+NUjwVB.net
>169
訳して読めないん?
コメント1件

171
デフォルトの名無しさん[sage]   投稿日:2015/08/19 00:02:41  ID:LOHOwjsk.net(12)
>170
読んだけどどうすればいいのか分かりませんでした。

172
デフォルトの名無しさん[sage]   投稿日:2015/08/19 00:03:49  ID:LOHOwjsk.net(12)
何をしたいかと言うと画像に「アドセンスクリックお願いします」
をつけてhttp://iup.2ch-library.com/にうpしたいです。

173
デフォルトの名無しさん[sage]   投稿日:2015/08/19 01:09:15  ID:L3Cv9rI8.net
forbiddenを日本語で1万回ぐらい唱えろ

174
デフォルトの名無しさん[sage]   投稿日:2015/08/19 01:14:11  ID:LOHOwjsk.net(12)
POSTの受け取りエラーはできました。
でも画像に文字を入れるとnullが想定されていません警告がでます。
その後jsに画像データを渡してもうpできません。
コメント1件

175
デフォルトの名無しさん[sage]   投稿日:2015/08/19 03:12:04  ID:6ywDLaMX.net(2)
画像が指定されてないから

176
デフォルトの名無しさん[sage]   投稿日:2015/08/19 03:37:05  ID:Qh+hZUtC.net(2)
>174
http://php.net/manual/ja/function.imagecreatefrompng.php
こういうの使ってリソースを作成して渡さないとだめ

177
デフォルトの名無しさん[sage]   投稿日:2015/08/19 09:50:35  ID:LOHOwjsk.net(12)
jsの参照からPOSTでPHPに送って、それをPHPで編集して、もう一度jsに戻す事はできませんかね?

178
デフォルトの名無しさん[sage]   投稿日:2015/08/19 11:01:21  ID:LOHOwjsk.net(12)
画像の編集はできるようになりました。
ただ、編集した画像をjsに戻す方法が分かりません。
コメント1件

179
デフォルトの名無しさん[sage]   投稿日:2015/08/19 11:06:50  ID:GbG0htqR.net(2)
>178
imgタグのURL書き換えようぜ


180
デフォルトの名無しさん[sage]   投稿日:2015/08/19 11:16:29  ID:LOHOwjsk.net(12)
一度サーバーに保存してそのURLを渡すという事ですか?

181
デフォルトの名無しさん[sage]   投稿日:2015/08/19 11:28:02  ID:LOHOwjsk.net(12)
あとテンポラリファイルをjsから使うにはどうすればいいですか?
コメント1件

182
デフォルトの名無しさん[sage]   投稿日:2015/08/19 11:32:10  ID:vCtz9n8J.net
>画像に「アドセンスクリックお願いします」
クリック誘導しちゃいけない
ちゃんと規約よまないとアボセンスされるぞ
コメント1件

183
デフォルトの名無しさん[sage]   投稿日:2015/08/19 11:33:28  ID:LOHOwjsk.net(12)
>182
違います
アフィ対策うpロダを作りたいです。
正確には既にあるうpろだに画像を編集して送信したいです。

184
デフォルトの名無しさん[sage]   投稿日:2015/08/19 11:37:24  ID:LOHOwjsk.net(12)
ただ他のサーバーとの通信は規約で禁止してある所が多いので
html→phpにポスト送信
phpで画像編集してjsに送信
js→他サーバーのうpろだに送信したいです。
これなら規約的にも大丈夫ですし、もしうpろだの管理人から規制食らってもクライアントから送るので問題ないので。

185
デフォルトの名無しさん[sage]   投稿日:2015/08/19 11:44:26  ID:+Zdd/FzT.net
臭い質問者だな

186
デフォルトの名無しさん[sage]   投稿日:2015/08/19 11:52:58  ID:6ywDLaMX.net(2)
アフィ対策うpろだ作るっつってヨソのうpろだ間借りしちゃいかんだろ
コメント1件

187
デフォルトの名無しさん[sage]   投稿日:2015/08/19 12:29:23  ID:GbG0htqR.net(2)
>181
使えない

188
デフォルトの名無しさん[sage]   投稿日:2015/08/19 12:38:18  ID:LOHOwjsk.net(12)
>186
HTMLの参照からPOST送るのも、PHPで編集してPOST送るのも同じなので大丈夫と思うんですが。

189
デフォルトの名無しさん[sage]   投稿日:2015/08/19 13:08:53  ID:Qh+hZUtC.net(2)
いい加減うっとうしくなってきた

190
デフォルトの名無しさん[sage]   投稿日:2015/08/19 13:10:38  ID:LOHOwjsk.net(12)
すみません。
画像の編集はできたので後は何とかします。
ありがとうございました

191
デフォルトの名無しさん[sage]   投稿日:2015/08/19 14:52:07  ID:E7jETczI.net(2)
$test=new tester();
$data=$test->getDust();

testerとDustを可変にしたいんですけど書き方教えてください。

192
デフォルトの名無しさん[sage]   投稿日:2015/08/19 15:31:50  ID:E7jETczI.net(2)
自己解決

193
デフォルトの名無しさん[sage]   投稿日:2015/08/19 22:19:55  ID:sb/lS4ZW.net
画面全体をキャプチャする場合imagegrabscreenが使えますが
特定のアプリケーションをキャプチャしたい場合って何か方法ありますか?
コメント1件

194
デフォルトの名無しさん[sage]   投稿日:2015/08/19 22:41:45  ID:LOHOwjsk.net(12)
base64でエンデコしたらPHP→jsに渡せた〜
送信もできたー
ただうpできない。。。
ファイル名が送られてないのかな…?
これはjsの話だからjsで聞くけどPスレの方ありがとうございました

195
デフォルトの名無しさん[sage]   投稿日:2015/08/20 00:17:48  ID:z6CxRTbz.net(2)
英数字の文字列を、大文字を小文字に、小文字を大文字にするにはどうすればいいですか?

たとえば、以下のようの文字列をこう変換したいです

jFw3YG3r2
   ↓
JfW3yg3R2

おねがいします
コメント2件

196
デフォルトの名無しさん[sage]   投稿日:2015/08/20 00:26:28  ID:sgktyw/y.net
>195
置き換えればいい。
コメント1件

197
デフォルトの名無しさん[sage]   投稿日:2015/08/20 00:30:42  ID:fJ97YSxG.net(2)
>195
function swap_casing($str)
{
return strtr($str, implode('', array_merge(range('a','z'), range('A','Z'))), implode('', array_merge(range('A','Z'), range('a','z'))));
}

198
デフォルトの名無しさん[sage]   投稿日:2015/08/20 00:33:26  ID:fJ97YSxG.net(2)
>193
windows限定ということもあって使ったことないけど、マニュアルには普通にあるよ
http://php.net/manual/ja/function.imagegrabwindow.php
コメント1件

199
デフォルトの名無しさん[sage]   投稿日:2015/08/20 02:13:01  ID:z6CxRTbz.net(2)
>196-197
ありがとうございます!
思ってた通りにできました!

200
デフォルトの名無しさん[sage]   投稿日:2015/08/20 10:01:51  ID:C8zNXNPV.net(2)
>198
ありがとうございます
ウィンドウハンドル (COM インスタンスの HWND プロパティ) というのはどうやって取得するのでしょう?
使用例ではIEのがのっていますが、とあるゲームのクライアントなのですが。

201
デフォルトの名無しさん[sage]   投稿日:2015/08/20 10:42:50  ID:H8XW99Sq.net(3)
そのとあるゲームを識別する材料は何よ。
タイトルかプロセス名になると思うけど、同じプロセスでも
トップレベルウィンドウが複数あるやつもあるので注意
spy++とか触ってみ
コメント1件

202
デフォルトの名無しさん[sage]   投稿日:2015/08/20 10:53:43  ID:C8zNXNPV.net(2)
>201
オンラインに接続するマルチプレイゲームなのでチート対策にプロセスは隠されてしまいます
ただキャプ系のソフトだとちゃんと取れるのでやりようはあると思います
そもそもPHPでやるのは難しいんですかね

関数コールすれば現在起動中のソフトウェアのウィンドウハンドルがわかるというのでなければ
難しそうなのでいったん諦めたいと思います

紹介していただいたspy++というのはどんなものか気になるのでいじってみたいと思います
ありがとうございます

203
デフォルトの名無しさん[sage]   投稿日:2015/08/20 12:49:26  ID:H8XW99Sq.net(3)
>関数コールすれば現在起動中のソフトウェアのウィンドウハンドルがわかる

いやそのままだけど、、、、spy++動かせばわかると思うけど
「現在起動中のソフトウェアのウィンドウ」はものすごく大量にあるので
その中から選択するキーをどうすんのって話ね。


204
デフォルトの名無しさん[sage]   投稿日:2015/08/20 19:32:57  ID:WOs6ZAoH.net
win32アプリケーションを実行した結果とか取得できたっけ?

205
デフォルトの名無しさん[sage]   投稿日:2015/08/20 20:19:30  ID:H8XW99Sq.net(3)
コンソールならパイプ経由でいけるべ
あとCOMなら標準でいけるかと
それ以外だと結果っていってもなんのことか
コメント1件

206
デフォルトの名無しさん[sage]   投稿日:2015/08/21 14:04:20  ID:fqRYNQxQ.net
>205
結果って出力じゃなくてexitの戻り値系の話じゃね?

207
デフォルトの名無しさん[sage]   投稿日:2015/08/21 14:30:01  ID:S8ndpYq0.net
そいつは、、、systemだとcmd.exeの戻り値だからちゃんと取れない、という話?
execでいけないかな

208
デフォルトの名無しさん[sage]   投稿日:2015/08/22 17:12:21  ID:/ddVcb/Z.net(3)
$list=scandir('history/',SCANDIR_SORT_DESCENDING);//ファイル一覧取得
$s=file_get_contents($list[0]);//最新のファイルを読む

このような風にしてディレクトリ内の最新のファイルを読みたいのですが上手く行きません。
何故でしょうか?

209
デフォルトの名無しさん[sage]   投稿日:2015/08/22 17:39:53  ID:/ddVcb/Z.net(3)
事故解決しました

210
デフォルトの名無しさん[sage]   投稿日:2015/08/22 18:05:24  ID:/yiufrRR.net
事故ったのか

211
デフォルトの名無しさん[sage]   投稿日:2015/08/22 20:19:50  ID:/ddVcb/Z.net(3)
ファイル名が
フォルダ/ファイル
で返ってくると思っていたら
ファイル
しか返ってこなかったのが原因でした。

212
デフォルトの名無しさん[sage]   投稿日:2015/08/23 02:42:29  ID:F0J/JaHP.net(2)
class AClass
{
  private $prop = 1;
}

class BClass
{
  private $prop;

  public function __construct()
  {
    $prop = 1;
  }
}

AClassとBClassは、どちらもプライベート変数$propを持っていますが、2つの違いは何でしょうか?
結果が同じなら、AClassの方が好ましいとか。
AClassよりもBClassの方がパフォーマンスに優れているとか。
私はAClass派ですが、BClass派の方の意見も聞いてみたいです。

213
デフォルトの名無しさん[sage]   投稿日:2015/08/23 03:37:33  ID:MjjZ1bjj.net
http://php.net/manual/ja/language.oop5.properties.php

C++みたいな初期化子が無いからBが若干気持ち悪いのはどうしようもないな
コメント1件

214
デフォルトの名無しさん[sage]   投稿日:2015/08/23 09:55:42  ID:HMoj5OB/.net
コンストラクターで何か渡さないならAでいいんじゃないの

215
デフォルトの名無しさん[sage]   投稿日:2015/08/23 10:45:25  ID:vhLXwY7S.net
Bは、$this->prop = 1;じゃない?
こういう間違いするくらいなら、Aがいいと思う。
AとBではそれほど違いはないだろうし。
コメント1件

216
デフォルトの名無しさん[sage]   投稿日:2015/08/23 11:44:14  ID:F0J/JaHP.net(2)
>215
$this->prop = 1;が正しいです。
ふと疑問に思って、適当に書いたので間違えました。

>213-215
ご意見ありがとうございます。
「俺は、コンストラクタで代入しなきゃ気が済まない。」という方はいないようですね。

217
デフォルトの名無しさん[sage]   投稿日:2015/08/23 12:26:03  ID:dSq5s0nX.net
コンストラクタには、メンバー変数の単なる初期化より、
オブジェクト生成時に必須で意味ある操作を記述するのが望ましい気がする。

218
デフォルトの名無しさん[sage]   投稿日:2015/08/24 19:38:56  ID:JwKFnUGE.net
http://d.hatena.ne.jp/cypher256/20121013/p1
こういうのがあるんですが
PDOでも同じような結果(SQLite>MySQL)になりますかね?
コメント2件

219
デフォルトの名無しさん[sage]   投稿日:2015/08/24 20:17:08  ID:X6qu577D.net
>218
そりゃなるだろうなぁ

・スケールしない
・構成が単純
・同時アクセス数が少ない

という条件ならSQLiteは無敵でしょ

220
デフォルトの名無しさん[sage]   投稿日:2015/08/24 22:23:52  ID:/ftfGLfA.net
>218
お?なんだ?
sqliteの成績いいじゃないのよ。

221
デフォルトの名無しさん[sage]   投稿日:2015/08/25 11:38:49  ID:2QQu0W9L.net(3)
PHPで作ったフォルダの所有者がWWWになってFFFTPから削除できない。助けて
コメント1件

222
デフォルトの名無しさん[sage]   投稿日:2015/08/25 11:46:00  ID:lyj94kL0.net
FFFTPをWWWでログインするか、WWWを操作できるアカウントでログインすれば
いいんじゃないかな?(´・ω・`)

223
デフォルトの名無しさん[sage]   投稿日:2015/08/25 11:50:12  ID:9xu5YWLi.net(5)
phpから消しゃいいじゃん

224
デフォルトの名無しさん[sage]   投稿日:2015/08/25 12:04:50  ID:oTbGWeCq.net
sqliteはインデックス絡めた集計が遅くてしんどい
kvsみたいなシンプルなテーブル構成じゃないと性能でないし
いろいろ面倒すぎる

225
デフォルトの名無しさん[sage]   投稿日:2015/08/25 12:39:56  ID:N0kKPKqp.net(2)
>221
sshまたはPHPからLinuxコマンドでrmすればいい。
コメント1件

226
デフォルトの名無しさん[sage]   投稿日:2015/08/25 12:42:08  ID:2QQu0W9L.net(3)
>225
窓なんだけど
コメント1件

227
デフォルトの名無しさん[sage]   投稿日:2015/08/25 12:55:27  ID:N0kKPKqp.net(2)
>226
rd (option) [directory name]
rmdir (option) [directory name]
コメント1件

228
デフォルトの名無しさん[sage]   投稿日:2015/08/25 13:08:52  ID:2QQu0W9L.net(3)
>227
ありがとう

229
デフォルトの名無しさん[]   投稿日:2015/08/25 15:36:21  ID:07X4ZgXk.net(3)
GDを使いたいのですが、ネットで探してみても具体的に何をすれば使えるようになるのか、よくわかりません。
箇条書きみたいな形でどうすればいいか教えていただけないでしょうか??

230
デフォルトの名無しさん[sage]   投稿日:2015/08/25 15:57:06  ID:9xu5YWLi.net(5)
どの環境?
それぞれの環境でやり方違うけど、要はGDのライブラリを組みこむだけだよ
GDの下にpngやjpegやzipやfreetypeやらあるけどまあ全部込みでいいだろう

231
デフォルトの名無しさん[]   投稿日:2015/08/25 17:57:06  ID:07X4ZgXk.net(3)
ライブラリの組み込み、って何をすればいいのかがちょっとよくわからない。
どこかのフォルダに入れればいいだけじゃないみたいだし下手にいじって全部パーにはしたくないのですよね。

232
デフォルトの名無しさん[sage]   投稿日:2015/08/25 17:59:44  ID:9xu5YWLi.net(5)
いやだからWindowsなのかLinuxなのかMacなのかその他なのか

233
デフォルトの名無しさん[sage]   投稿日:2015/08/25 18:01:06  ID:9xu5YWLi.net(5)
そして現行のものはどうやってインストールしたのか
xamppとか?ソースからビルド?httpdはどれでバージョンは?

234
デフォルトの名無しさん[]   投稿日:2015/08/25 18:06:33  ID:07X4ZgXk.net(3)
winです。xamppを使っています。
httpdとバージョンについては覚えていないのですが、
xamppのインストールは六月頃だったのでその時の最新のものだと思います。

235
デフォルトの名無しさん[sage]   投稿日:2015/08/25 18:11:06  ID:F9GsSPUL.net
php.iniのextension=php_gd2.dllとか書いてるあたり探して先頭のコロン外せばいいんじゃね
コメント1件

236
デフォルトの名無しさん[]   投稿日:2015/08/25 18:19:46  ID:vVSJ44wn.net
言語としてのPHPはwebサーバーは独立してる。
webサーバー上でPHPを扱うケースは関係ある。
GDを動かすだけならwebサーバーは関係無い。

237
デフォルトの名無しさん[sage]   投稿日:2015/08/25 18:47:37  ID:9xu5YWLi.net(5)
http://php.net/manual/ja/install.windows.extensions.php
これでいいんじゃね。
書いてある内容から抜粋すると、C:\php5\php.ini を編集して
>235の通りにすればいいかと、先頭の外す文字はセミコロンのようだけど
コメント1件

238
デフォルトの名無しさん[sage]   投稿日:2015/08/25 19:30:29  ID:0DooLhSC.net
>237
ようだけどって、php.ini編集したことないの?
コメント1件

239
デフォルトの名無しさん[sage]   投稿日:2015/08/25 22:20:16  ID:z2POwS4S.net
とりあえずDevelopmentかProductionかでerror_reportingやらdisplay_errors, error_logの設定ぐらいは触らなきゃ始まらんよなぁ・・・・・

240
デフォルトの名無しさん[sage]   投稿日:2015/08/25 22:38:51  ID:/vS3aNyo.net
ぶっ壊しながら覚えるんだけどねえ

241
デフォルトの名無しさん[sage]   投稿日:2015/08/25 23:02:09  ID:iOl5eWYF.net
最初中身みないでdevelopmentなら開発者向けで使えるのは全部使える設定だろと思ってたらひどい目にあったな
あとxamppはxamppの中にPHPのフォルダあるからよくわからずに新たにPHPインストールしちゃってサーバーとコマンドラインで別の設定とバージョンで動かしてたり

242
デフォルトの名無しさん[sage]   投稿日:2015/08/26 11:56:14  ID:1VgT2ip6.net(2)
>238
Windowsはやったことないわ

243
デフォルトの名無しさん[sage]   投稿日:2015/08/26 11:56:39  ID:1VgT2ip6.net(2)
あと、コロンって書いてるからやんわり指摘したんだよ

244
デフォルトの名無しさん[sage]   投稿日:2015/08/26 17:36:20  ID:1UBBn/05.net
php.iniのフォーマットはプラットフォームに依らない

245
デフォルトの名無しさん[sage]   投稿日:2015/08/26 17:50:20  ID:Rs0R7URv.net
やんわり指摘する必要もない。びしっと指摘すべき

246
デフォルトの名無しさん[sage]   投稿日:2015/08/26 18:47:42  ID:ravcYZS2.net(2)
やめちまえ

247
デフォルトの名無しさん[sage]   投稿日:2015/08/26 20:32:22  ID:+yw1sjwq.net(3)
Array
(
  [1111] => Array
    (
      [name] => 山田太郎
      [age] => 25
      [addr] => 東京都新宿区
    )
  [1112] => Array
    (
      [name] => 山田太郎
      [age] => 26
      [addr] => 東京都新宿区
    )
  [1113] => Array
    (
      [name] => 山田太郎
      [age] => 40
      [addr] => 北海道札幌市
    )
)

こういうデータがあり、1111と1112の山田太郎さんは同一人物と仮定します。
このデータの重複を排除して更新する場所は更新(ageを25から26)にしたいのですがどうしたらいいですか?
IDは更新後の1112に統一するようにしたいです。(1111の部分を消したい)

$test = array(1111=>array("name"=>"山田太郎","age"=>25,"addr"=>"東京都新宿区"),1112=>array("name"=>"山田太

郎","age"=>26,"addr"=>"東京都新宿区"),1113=>array("name"=>"山田太郎","age"=>40,"addr"=>"北海道札幌市"));
コメント2件

248
247[sage]   投稿日:2015/08/26 20:35:14  ID:+yw1sjwq.net(3)
いい忘れましたがこの場合同一人物と決定付けるデータ(ユニーク)はnameとaddrになります。

249
デフォルトの名無しさん[sage]   投稿日:2015/08/26 20:56:10  ID:ravcYZS2.net(2)
仮に25才が26才より後に出てきたら25才にすんの?
一回で1000件超も処理すんの?
DB使ってないの?
コメント1件

250
デフォルトの名無しさん[sage]   投稿日:2015/08/26 21:10:31  ID:+yw1sjwq.net(3)
>249
>仮に25才が26才より後に出てきたら25才にすんの?
26歳にします

>一回で1000件超も処理すんの?
IDはまだらでスタートも500ぐらいからなのですが
全部抽出した今現在2000件ぐらいあります

>DB使ってないの?
DBに入れる前に簡易的にデータを視覚化して問題ないか確認したいので
データ整理が終わって問題がなさそうだったらそれからDBに入れたいです
コメント1件

251
デフォルトの名無しさん[sage]   投稿日:2015/08/26 23:22:58  ID:KIJq3Kjz.net
>247
foreachとかで重複のチェックおよび削除をするのはダメなの?
コメント1件

252
デフォルトの名無しさん[sage]   投稿日:2015/08/26 23:54:16  ID:7RAfYG22.net
>251
言うのは簡単だけどそれ結構むずいぞ

253
デフォルトの名無しさん[sage]   投稿日:2015/08/27 01:55:32  ID:1lLqbxXs.net
多重ループで回して当たったら年齢低い方を外すだけだろ。
てか個人情報の悪用か?

254
デフォルトの名無しさん[sage]   投稿日:2015/08/27 03:48:24  ID:8ceC1383.net
みんなO(n^2)大好きなの?

>247
name+addrをキーとして考えて、それぞれのキーに対してどのIDを使うべきかを抽出しさえすれば解決できるでしょ。
これならO(n)だ。
コメント1件

255
デフォルトの名無しさん[sage]   投稿日:2015/08/27 03:56:54  ID:Qf9+I7qu.net
2000なら計算量気にするほどの量じゃないしな
name+addrだとこのケースだとキーにマルチバイト入るし問題はないだろうけどあんま好きじゃないわ

256
デフォルトの名無しさん[sage]   投稿日:2015/08/27 16:45:05  ID:yuSy9xY3.net
>250
テスト用のDBまたはテーブル作ってそれ使って確認すれば済む話

257
デフォルトの名無しさん[sage]   投稿日:2015/08/27 17:07:08  ID:uKUzATKZ.net
テスト用にとりあえずゴミを作るというのは断片化の原因でありお行儀が悪い

258
デフォルトの名無しさん[sage]   投稿日:2015/08/27 17:23:22  ID:TAgfx1h3.net
<?php
$data = [
  '1111' => ['name' => '山田太郎', 'age' => 25, 'addr' => '東京都新宿区'],
  '1112' => ['name' => '山田太郎', 'age' => 26, 'addr' => '東京都新宿区'],
  '1113' => ['name' => '山田太郎', 'age' => 40, 'addr' => '北海道札幌市'],
];

// id=name+addr => [data.key, data.age]のindex
$index = [];

foreach ($data as $key => $value) {
  $id = $value['name'] . ',' . $value['addr'];
  if (!array_key_exists($id, $index)) {
    $index[$id] = ['key' => $key, 'age' => $value['age']];
  } else {
    if ($index[$id]['age'] < $value['age']) {
      unset($data[$index[$id]['key']]);
      $index[$id] = ['key' => $key, 'age' => $value['age']];
    } else {
      unset($data[$key]);
    }
  }
}
print_r($data);
コメント4件

259
デフォルトの名無しさん[sage]   投稿日:2015/08/27 20:33:39  ID:qru52hv5.net
>258
素晴らしい!
そのスクリプトなら計算量はO(n)だ。
安易に二重ループにすると計算量がO(n^2) で大変だもんね。

260
デフォルトの名無しさん[sage]   投稿日:2015/08/27 20:54:35  ID:xIJ2Lz80.net
よくわからん仕様だけど一時的にsqlite使うのが楽そう
使い終わったらファイルごと捨てちゃって

261
デフォルトの名無しさん[sage]   投稿日:2015/08/27 20:57:16  ID:Vyt3jNWq.net(2)
それは断片化になる
メモリに作るのなら問題ないけどな
sqlite::memory:だっけか

ベンチ測ってないが配列のキーに日本語使った時の速度の影響ってないのかね
コメント1件

262
デフォルトの名無しさん[sage]   投稿日:2015/08/27 22:55:51  ID:Vyt3jNWq.net(2)
気になって測ったけど爆速だったわ

263
デフォルトの名無しさん[sage]   投稿日:2015/08/28 00:08:07  ID:+cQXDdQR.net(2)
>261
コード書ける側の人ならベンチくらい自分でとりなよ

264
デフォルトの名無しさん[sage]   投稿日:2015/08/28 00:09:25  ID:+cQXDdQR.net(2)
オゥ…なぜdatが261で止まっていたのか。
というわけで、O(n^2)大好きな方は考えを改めていただきたい所存

265
デフォルトの名無しさん[sage]   投稿日:2015/08/28 00:56:02  ID:AoeXeGce.net
どうせPHP内部では配列は全部ハッシュテーブルだし, 速度は変わりようがない(PHP7では真の配列が入るとかどうとか)

266
デフォルトの名無しさん[sage]   投稿日:2015/08/28 01:33:00  ID:jxZe3mFi.net(2)
変態言語PHP

267
デフォルトの名無しさん[sage]   投稿日:2015/08/28 12:43:42  ID:DqL8tsCW.net
ファイルごと捨てちゃうのに断片化って?
vacuumすりゃいいし

268
デフォルトの名無しさん[sage]   投稿日:2015/08/28 15:34:05  ID:jxZe3mFi.net(2)
知ってるか?
ファイルって復元できるんだぜ!

269
デフォルトの名無しさん[sage]   投稿日:2015/08/28 15:54:18  ID:zPlCh50K.net
vacuumがやることはsqliteファイル構造内の最適化であってHDDのそれとは違うしなぁ

270
デフォルトの名無しさん[sage]   投稿日:2015/08/28 18:03:21  ID:PakmCYt4.net
sqliteで、
* テーブル作って
* データロードして
* 削除対象のデータを削除して
* データ取得して
* PHPのデータ構造を再構築

するより、>258のコード書いた方がよっぽど早い。

271
デフォルトの名無しさん[sage]   投稿日:2015/08/29 00:50:53  ID:9KBnd+er.net
で、それをDBに入れて確認するわけだから
最初からDB使ったが効率いい
まさか確認なしでリリースする馬鹿はいないよな?
コメント1件

272
デフォルトの名無しさん[sage]   投稿日:2015/08/29 01:13:41  ID:Ab8Z57Rm.net(6)
1発で問題ないを前提としたらそれでいいけど
修正前提としてんだからよくないだろ
deleteしたりかえって作業が増えるわ

273
デフォルトの名無しさん[sage]   投稿日:2015/08/29 01:18:12  ID:L/zgq/d+.net
大した作業量でもないやねー。コマンドラインちゃかちゃかする程度っしょー

274
デフォルトの名無しさん[sage]   投稿日:2015/08/29 01:24:37  ID:Ab8Z57Rm.net(6)
それアホくさいで・・・
効率がいいとはとてもいえんな

275
デフォルトの名無しさん[sage]   投稿日:2015/08/29 01:30:22  ID:Ab8Z57Rm.net(6)
ていうか>271は大きな勘違いをしているな
>で、それをDBに入れて確認するわけだから
この作業要らないようにしてるんでしょ

276
デフォルトの名無しさん[sage]   投稿日:2015/08/29 01:43:56  ID:Ab8Z57Rm.net(6)
宿題終わらん(´・ω・`)

277
デフォルトの名無しさん[sage]   投稿日:2015/08/29 01:49:16  ID:4/0//Q+P.net
作業効率でいうなら
悪い:1配列作成→2配列内の重複チェック→修正→チェック完了→3DBつくる→4DBつっこむ→(運用開始)→5新しいデータ来る→6DBの中身との重複チェック→7DBにデータ入れる
良い:1DB作る→2登録するデータ一行ずつ受け取る→3DBの中身で重複チェック→4重複なければDBに登録→(修正があればテーブル作り直し1へ)→(運用開始)→2'データ来る→3重複チェック→4重複なければDBに登録

運用時に必要となる処理も含めて全体の工程を考えればどっちが効率がいいかはわかりきってる。

まあ運用開始後もいちいち全行とってきて配列使って重複チェックするならDB使わなくてもいいけどそんなわけないだろさすがに

278
デフォルトの名無しさん[sage]   投稿日:2015/08/29 02:09:31  ID:Ab8Z57Rm.net(6)
重複のチェックじゃなくてアップデートなんだがな
まぁいいわ
>258と同じことをビシっとSQLでかけたら効率がいいということで
コメント1件

279
デフォルトの名無しさん[sage]   投稿日:2015/08/29 03:29:07  ID:ZMuJUzU2.net(2)
>278
>254>258のどっちの人なの?

280
デフォルトの名無しさん[sage]   投稿日:2015/08/29 03:40:57  ID:Ab8Z57Rm.net(6)
どっちの人でもないで・・・
ID:Vyt3jNWq ID:jxZe3mFi
はオレだ

281
デフォルトの名無しさん[sage]   投稿日:2015/08/29 06:06:52  ID:/nsMHMAj.net(2)
以下を満たすようなcsvを読み込んで、データベースにインポートするプログラムを作ってるんだけど、アドバイスください。

・カラムごとにインポート先のテーブル/カラムが異なる。
・csvは複数の種類がある。(csvごとにデータベースとのマッピングが異なる。)

汎用的な処理を作って設定でうまいことやりたいんだけど、良いライブラリやサンプルはないですか?

282
デフォルトの名無しさん[sage]   投稿日:2015/08/29 08:13:19  ID:/nsMHMAj.net(2)
眠気でどうかしてました。ここよりスレ立てるまでもない質問とかの方が適してそうですね。、あんまりphp関係ないし。。移動します。

283
デフォルトの名無しさん[]   投稿日:2015/08/29 19:02:08  ID:STDwRupe.net
たぶん無理だと思うんだけど、いや絶対無理だと思うんだけど、あえて訊いてみる。
関数の引数の変数名を取得することって出来る?

hoge($a); という関数があって、それを hoge($chinko) と呼び出したときに
そのときの変数名 $chinko を取得する方法。

無理だな。 だって引数が変数とは限らないもんな。
あーでも参照なら変数と限ることができるのか? 参照縛りならいける?
コメント1件

284
デフォルトの名無しさん[sage]   投稿日:2015/08/29 19:04:04  ID:ZMuJUzU2.net(2)
仮引数ならまだしも実引数はさすがに。
むしろ用途をしりたい

285
デフォルトの名無しさん[sage]   投稿日:2015/08/29 19:31:57  ID:1x+r04Uf.net
もう一つ引数を追加して、変数名を文字列で渡すというのは?

286
デフォルトの名無しさん[sage]   投稿日:2015/08/29 19:56:45  ID:SKly7+Od.net
debug_backtrace() で、["file"]["line"]["function"]["args"]等を取得して、
そのファイルを読み込み、正規表現とか使って、変数名を抜き出すとか。
ふと思いついたので、おかしな方法だと思うけど一応参考に。
http://php.net/manual/ja/function.debug-backtrace.php

287
デフォルトの名無しさん[sage]   投稿日:2015/08/30 09:22:39  ID:wgRyWxOv.net
file_get_contentsで自身のphp読み込んで正規表現で抜き出したら出来るんじゃね

288
デフォルトの名無しさん[sage]   投稿日:2015/08/30 15:20:20  ID:FcrFu/Vp.net
jsやjqやjq-ui使ってクライアントサイドのユーザーインターフェイス的なものを作っていると<body>の中にいろんな要素が追加されてdomツリーも複雑になり収集が付かなくなって来ました。
こう言う場合、できる限りphpなどのサーバーサイドで処理する様に書き換えるべきですか?

289
デフォルトの名無しさん[sage]   投稿日:2015/08/30 15:24:19  ID:ef9SYKfA.net
別にphpにしなくても静的な部分はhtmlでいいでしょ
例えば最下層までスクロールするアニメーションを実装するとして
それをphpでやるってのはただの馬鹿だよw
最下層までいくのに何回画面遷移するんだっていう話

290
デフォルトの名無しさん[sage]   投稿日:2015/08/31 07:59:11  ID:sP4JUecY.net(3)
//フォーム外から変なの投げられてきたらサヨウナラ
$_int = isset($_GET['_int']) ? $_GET['_int'] : null;
if (!ctype_digit($_int)) exit;

//変なのきても0にして処理続けます
$_int = isset($_GET['_int']) ? (int)$_GET['_int'] : 0;

そもそもフォーム外からの入力とか考慮する必要があるのか不明ですがどっちがいいでしょうか?
コメント3件

291
デフォルトの名無しさん[sage]   投稿日:2015/08/31 10:15:36  ID:Ad0sNMCq.net(5)
>283
どうしてもそれが必要なら、いわゆる連想配列かJSONを引数にすれば良い。
コメント2件

292
デフォルトの名無しさん[sage]   投稿日:2015/08/31 10:22:21  ID:Ad0sNMCq.net(5)
>290
XSS, CSRF, セッションハイジャックについて調べるといいよ。
コメント1件

293
デフォルトの名無しさん[sage]   投稿日:2015/08/31 10:41:15  ID:1S2ZHjxL.net
>290
上のように、処理を終了する方がいい。
下の場合、予想しない挙動をする場合もありバグの原因になるから。
コメント1件

294
デフォルトの名無しさん[sage]   投稿日:2015/08/31 15:14:59  ID:nEToo1o2.net
>290
フォーム外かどうかをチェックするコードではないよね。
意図しないアクセスをされたときの挙動は別途。
ま、不正な値を吸収して処理を継続できるならそのほうがやさしいとは思う。

>291
「いわゆる連想配列かJSONを引数にすれば」、「関数の引数の変数名を取得すること」ができるの?
コメント1件

295
デフォルトの名無しさん[sage]   投稿日:2015/08/31 15:21:22  ID:sP4JUecY.net(3)
>292
曖昧なこといってすみません
そのへんの対策は当然するとして
例えばcURLなんかを使って2chに書くスクリプトみたいのありますよね?ああいうのを考慮すべきかという話です

>293
下の場合上のelseに当たり
下が問題なら上も問題になるということになりませんか?
コメント1件

296
デフォルトの名無しさん[sage]   投稿日:2015/08/31 15:26:34  ID:Ad0sNMCq.net(5)
> >291
> 「いわゆる連想配列かJSONを引数にすれば」、「関数の引数の変数名を取得すること」ができるの?
あー、連想配列かJSONにして、仮引数名を入れればってこと。
どっちみち呼び出し側から変数名を渡すしかないけど、引数の数を増やすよりいいかなと。

297
デフォルトの名無しさん[sage]   投稿日:2015/08/31 15:27:54  ID:Ad0sNMCq.net(5)
間違った。
必要なのは実引数名だった。

298
デフォルトの名無しさん[sage]   投稿日:2015/08/31 15:32:58  ID:Ad0sNMCq.net(5)
>295
うーん、「ああいうの」がどういうのかわからないんだけど、要件によるとしか言えないんじゃないかなあ。

> //変なのきても0にして処理続けます
> $_int = isset($_GET['_int']) ? (int)$_GET['_int'] : 0;
この方針で行くと、期待するパラメータ全てがなくとも処理が続行しちゃうけど、それでいいかどうかは要件次第。
コメント1件

299
デフォルトの名無しさん[sage]   投稿日:2015/08/31 15:35:35  ID:dCXkMxpH.net
そう、何でも要件次第
用意したフォームを使わずに飛び込んできたとしても
それでもいい場合と良くない場合があるしね。
2ch互換BBSだって、直接dat見に来るのを許容するシステムもあれば
API経由を共用するシステムもあるし
コメント1件

300
デフォルトの名無しさん[sage]   投稿日:2015/08/31 15:59:06  ID:sP4JUecY.net(3)
>294 >298 >299
ありがとうございます
難しく考えず柔軟に対応することにします

301
デフォルトの名無しさん[sage]   投稿日:2015/08/31 20:41:11  ID:Ny4CPwsw.net
前提としてphpとjavascriptでajaxもどきに挑戦しています。
file_get_contents('php://input'); で取得するデータに関する質問です。

javascriptが有効/無効で処理をわけるつもりで
無効な時はform actionにphpのパス指定してPOSTで送信しているのですが
その際日本語はデコードされて取得しています。

有効な時はjavascriptの関数に飛んで
XMLHttpRequest

open("POST", "phpファイル", true);
setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
としているのですが日本語がデコードされずに取得されます。

form要素もデフォルトではContent-Typeがapplication/x-www-form-urlencodedのはずですが
この違いが出る原因はなんでしょうか?
コメント2件

302
デフォルトの名無しさん[]   投稿日:2015/08/31 21:18:52  ID:l4mmrlHu.net(2)
Ajaxがjavascriptだったという認識で、PHPではサーバー処理が終わるまでマチになってブラウザと非同期通信困難だろ?

303
デフォルトの名無しさん[]   投稿日:2015/08/31 21:22:36  ID:l4mmrlHu.net(2)
ajaxはほとんど使わないが、javascriptとブラウザの機能を使って、
クライアント側で非同期、リアルタイム通信してるかのように見せかける技術だろ?
サーバーからすると、見せかけのふつうの通信を頻繁するだけで。

304
デフォルトの名無しさん[sage]   投稿日:2015/09/01 00:17:19  ID:iyNI0UTo.net(3)
日本語不自由すぎ

305
デフォルトの名無しさん[sage]   投稿日:2015/09/01 07:10:09  ID:PA13f3W/.net
>301
普通にどっちもエンコードされてるけど
環境の問題じゃ

306
デフォルトの名無しさん[sage]   投稿日:2015/09/01 19:32:37  ID:GtQLzV5s.net
>301
ほとんどスレチだけどXMLHttpRequest使ってPOSTするときは自分でエンコードしてから渡してあげないといけない。
同じ指定云々は
送「こういう感じに解釈してよ」受「おう」
っていうやりとりしてるだけ。「こういうふうに変換しといたわ」じゃない所が違う原因。
フォームでの送信はブラウザが勝手にその辺やってくれてるってだけ。

307
デフォルトの名無しさん[sage]   投稿日:2015/09/01 21:38:59  ID:gnKiZ/P3.net(3)
PHPの画像リソースってメモリ上にあるのでしょうか?
もしメモリ上でなければ、tmpファイル名を確認する方法を教えて下さい。
もしメモリ上なら画像リソースからtmpファイルを作成する方法を教えて下さい。
コメント2件

308
デフォルトの名無しさん[sage]   投稿日:2015/09/01 21:54:01  ID:SHJ8zf1q.net
PHPの画像リソースが何をさしているのか

GDの話してんならGDの使い方見ればわかるでしょう
http://php.net/manual/ja/ref.image.php
メモリ上にあるのをimagepng imagejpegとかで出力
imagedestroyで解放

アップロードされた画像の話してんならアップロード処理のとこ見ればいい
http://php.net/manual/ja/features.file-upload.post-method.ph...
こちらはテンポラリファイルとして実在する
$_FILES['userfile']['tmp_name']
コメント1件

309
301[sage]   投稿日:2015/09/01 22:20:13  ID:IcLe/G5W.net
返信ありがとうございました。
もうhttpリクエストとかの流れを勉強してみます。

310
デフォルトの名無しさん[sage]   投稿日:2015/09/01 23:30:20  ID:gnKiZ/P3.net(3)
>308
出来ました。
ただtok2でImageMagickが使えないのでインストールする方法を教えて下さい
コメント1件

311
デフォルトの名無しさん[sage]   投稿日:2015/09/01 23:55:50  ID:iyNI0UTo.net(3)
>310
ただ、とつなげる理由が分からん。ImageMagickは別の話でしょ
コメント1件

312
デフォルトの名無しさん[sage]   投稿日:2015/09/01 23:57:45  ID:gnKiZ/P3.net(3)
>311
ImageMagickを使う為に>307が分からなかったのですが>307をしたけどImageMagickが使えませんでした
コメント1件

313
デフォルトの名無しさん[sage]   投稿日:2015/09/01 23:59:44  ID:iyNI0UTo.net(3)
>312
GDではできたけど、GDはいやだってこと?
できましたっていうから解決したのかと。
コメント1件

314
デフォルトの名無しさん[sage]   投稿日:2015/09/02 00:01:47  ID:Ke7ywQgJ.net(4)
>313
2つの画像からgifアニメを作りたいのですがGDだと無理みたいなので・・・

315
デフォルトの名無しさん[sage]   投稿日:2015/09/02 00:04:28  ID:w8Kps//0.net(3)
今入ってないならサポートに問い合わせ。
root持ってるならパッケージインストール。
rootは無いけどhttpdを自由に設定できる権限があるならphpを手元にインストールしてそれを使うようにする。
コメント2件

316
デフォルトの名無しさん[sage]   投稿日:2015/09/02 00:06:43  ID:Ke7ywQgJ.net(4)
>315
ImageMagickをDLしてPHPファイルを読み込んで関数を使うみたいな方法はないのでしょうか?
コメント1件

317
デフォルトの名無しさん[sage]   投稿日:2015/09/02 00:11:38  ID:w8Kps//0.net(3)
>316
php.iniを編集する権限はあるの?
コメント1件

318
デフォルトの名無しさん[sage]   投稿日:2015/09/02 00:14:11  ID:Ke7ywQgJ.net(4)
>317
ないみたいです
コメント1件

319
デフォルトの名無しさん[sage]   投稿日:2015/09/02 00:15:35  ID:w8Kps//0.net(3)

320
デフォルトの名無しさん[sage]   投稿日:2015/09/02 00:25:58  ID:Ke7ywQgJ.net(4)
>319
ありがとうございました

321
デフォルトの名無しさん[sage]   投稿日:2015/09/02 13:32:51  ID:mwFjmevD.net
バイナリプログラミングが出来れば自分でライブラリ作れるでしょ
http://blog.wnotes.net/blog/article/php-treats-animated-gif
この人みたいに(ちゃんと使えるかは不明)

322
デフォルトの名無しさん[sage]   投稿日:2015/09/02 14:03:56  ID:opT5h4j/.net(2)
バイナリプログラミングって何だろう?
直接16進で機械語を打ち込むことかな

323
デフォルトの名無しさん[sage]   投稿日:2015/09/02 14:05:33  ID:opT5h4j/.net(2)
こういうことか?

http://blog.asial.co.jp/754
> <?php // sample.php
> echo pack('C*', 0x50, 0x48, 0x50, 0x21) . PHP_EOL;

324
デフォルトの名無しさん[]   投稿日:2015/09/02 17:52:10  ID:DsnqIILb.net
セッションの保存をデフォルト(ファイルに書くやつ)でやってたのを、mysqlのようなDBに保存をしようと思う。
セッションハンドラクラスを作るのはいいんだけど、既存のアプリケーションに手を加えたくない。
php.ini の設定だけで自前セッションハンドラを組み込む方法ってある?

325
デフォルトの名無しさん[sage]   投稿日:2015/09/02 17:54:49  ID:P+JlZNhE.net
わざわざセキュリティ落とすようなことしないほうがいいよ

326
デフォルトの名無しさん[]   投稿日:2015/09/03 22:57:13  ID:EZEw+dN3.net(2)
2chみたいな掲示板を作ろうと思っているのですが、
何か良さそうな本はありませんか?
超初心者でも掲示板が作れるようになる本があれば教えてください。
コメント2件

327
デフォルトの名無しさん[]   投稿日:2015/09/03 23:01:46  ID:gfhZ4+hm.net(2)
既成品で動作させて気になる所を改良

328
デフォルトの名無しさん[]   投稿日:2015/09/03 23:05:48  ID:EZEw+dN3.net(2)
いや、一から自分で作りたいんですよ。
何か良さそうな本があったら教えてください。

329
デフォルトの名無しさん[]   投稿日:2015/09/03 23:11:31  ID:gfhZ4+hm.net(2)
既成品を手本にゼロから作る

330
デフォルトの名無しさん[sage]   投稿日:2015/09/03 23:15:14  ID:gMUwrAz0.net
1レスだけで作ろうと思えば作れそうだな

331
デフォルトの名無しさん[sage]   投稿日:2015/09/03 23:39:38  ID:sW2CV04d.net
>326
コードサンプルをみることなく作るってことかな。
それなら、まずはhttpを理解するところからかなぁ。
少なくともhttp methodを知る必要があるし。

332
デフォルトの名無しさん[sage]   投稿日:2015/09/04 19:24:17  ID:VmPNiXwJ.net
専ブラ対応しないならファイルの扱い方書いてある入門書ならなんでもいいよ
組み方がわからないなら何度も言われてるけど既製品見た方がはやい

333
デフォルトの名無しさん[sage]   投稿日:2015/09/04 19:27:32  ID:z8YQRmVJ.net
何でファイルに書き込むこと前提なんですかねぇ

334
デフォルトの名無しさん[]   投稿日:2015/09/04 21:58:28  ID:2xWjdMGKe(3)
>326
掲示板の参考書じゃないけど、やっぱオライリーの「初めてのPHP&MySQL」がいいんじゃないかな?おれはあれで2か月ぐらいでブログ作れたよ。

335
デフォルトの名無しさん[]   投稿日:2015/09/04 22:03:46  ID:2xWjdMGKe(3)
334だけど、ちなみに俺も掲示板を作りたいな〜と思ってる。ただ、本家2chが自由というか完成されてるから、同じもの作ってもな〜とも思ってる。
誰かおもしろいアイデアないですか?

336
デフォルトの名無しさん[]   投稿日:2015/09/04 22:15:59  ID:u93h3NNf.net(3)
ふと気になって夜も眠れない思考実験なんですけど、
もしもPCやサーバーやスパコンのCPUを見破り、そのマシン語を自由に操れる悪魔がいたとして、
その悪魔は世界中のありとあらゆるコンピューターをハッキングすることが出来てしまうのでしょうか?
コメント1件

337
デフォルトの名無しさん[sage]   投稿日:2015/09/04 22:18:06  ID:GXVi17zX.net
>336 寝言かな?
コメント1件

338
デフォルトの名無しさん[]   投稿日:2015/09/04 22:23:11  ID:u93h3NNf.net(3)
>337
いえ、思考実験ではありますが、紛う事なき起き事です。
なんとなく思いついて
それが気になって眠れなくなるってことって
結構ありますよね?

でもどうなんでしょう?
ファイアウォールも根本はマシン語なので、
それが使いこなせてしまえば意味がなくなったりしませんか?
コメント1件

339
デフォルトの名無しさん[sage]   投稿日:2015/09/04 22:32:22  ID:WfcwgdCY.net
マシン語って言葉を最近覚えたんだろうね

340
デフォルトの名無しさん[sage]   投稿日:2015/09/04 22:32:32  ID:voaTutYw.net
>338
それさあ、飛び回っている分子を選別し、振り分けできるような悪魔がいたら、いろんな事できるねって話と同じレベルだよ。
コメント1件

341
デフォルトの名無しさん[sage]   投稿日:2015/09/04 22:36:24  ID:u93h3NNf.net(3)
>340
うん。マクスウェルの悪魔やラプラスの悪魔と同レベル。
でも不可能であることだけはなんとなくわかりました。

342
デフォルトの名無しさん[]   投稿日:2015/09/04 23:12:55  ID:2xWjdMGKe(3)
普通の共用鯖で掲示板運用したら無謀?アクセス増えたら引っ越すつもりならあり?

343
デフォルトの名無しさん[sage]   投稿日:2015/09/04 23:29:31  ID:+AIeW6Wf.net
関係ないけど、マクスウェルの悪魔は実在するよ
コメント1件

344
デフォルトの名無しさん[sage]   投稿日:2015/09/05 00:06:05  ID:f7B8ro5r.net
マシン語を自由に操れるのと、実行中のプログラムを改変するのは別の話である。
コメント1件

345
デフォルトの名無しさん[sage]   投稿日:2015/09/05 01:14:30  ID:IONLXn6k.net
俺はインタプリタしか無理だ。

346
デフォルトの名無しさん[]   投稿日:2015/09/05 05:08:46  ID:i6kEld9S.net(2)
PHPはポインタみたいなのありますか?
たとえば、100メガの文字列があるとしして。
後半の50メガ以降、80メガ以降を既成関数に渡したいとすると
カットして実体を渡すほかないですか?

347
デフォルトの名無しさん[]   投稿日:2015/09/05 07:20:58  ID:JpUOkObrq(2)
誰か面白いアイデアくりぃ〜笑 狂言でもいいお◎

348
デフォルトの名無しさん[]   投稿日:2015/09/05 07:21:28  ID:JpUOkObrq(2)
ほんとにおもしろいと思ったら、ガチで必ずつくるから◎

349
デフォルトの名無しさん[]   投稿日:2015/09/05 07:02:47  ID:i6kEld9S.net(2)
諦めてファイルへ書き出しファイルポインタにします

350
デフォルトの名無しさん[sage]   投稿日:2015/09/05 08:02:31  ID:NiREPU1p.net
>344
なるほど。
実行中のプログラムの根本であるファイルを操作することは不可能、
つまりそのような悪魔は存在しないと言うことですね。
ありがとうございます。

>343
細胞内では第二種永久機関のブラウン・ラチェットが実現していると言うこと?
マクスウェルの悪魔は第一種永久機関の問題だよ。

351
デフォルトの名無しさん[]   投稿日:2015/09/05 10:01:39  ID:D0k+6Pch.net(2)
初スレ失礼します。
学校の課題で生徒の出席システムを作ることになったのですが、上手くいきません
どなたかご教授お願いします

352
デフォルトの名無しさん[]   投稿日:2015/09/05 10:04:13  ID:D0k+6Pch.net(2)
使用しているサーバはazure

ソースがhttps://drive.google.com/file/d/0B8a6OH-vNdAMWUl0aGdRX2VLZU0/view?usp=...
にうpしてあります。
初めてなので、めちゃくちゃ汚いらしいですが、よろしくお願いします。

353
デフォルトの名無しさん[sage]   投稿日:2015/09/05 17:58:19  ID:8nbMWQS4.net
何かエラーが出てるならそのメッセージを
こういうコードでこういう結果がほしかったけどこういう結果になるのはなぜかとか
丸投げじゃなくてどう上手くいかないのかコード抜粋してその説明を

354
デフォルトの名無しさん[sage]   投稿日:2015/09/06 04:47:29  ID:BCfPqjBk.net
学校の課題なんだから、自分でどうにかしないと学習にならないだろ。

355
デフォルトの名無しさん[sage]   投稿日:2015/09/07 21:55:02  ID:IfyRdfTS.net
そもそもその出席システムとやらが何だかわからないんだからどうしようもない

出欠二値でいいなら生徒をビットに割り振るのが一番スマートだな
nを生徒の番号としてn番目のビットフラグを立てるにはどうするか
n番目のビットが立ってるかどうかどう検出するか

二進数と論理演算で調べればすぐにわかるけどな
コメント1件

356
デフォルトの名無しさん[sage]   投稿日:2015/09/08 00:12:02  ID:fkrc3pHR.net
>355
生徒数が増えた場合のアドバイスも書いてあげなよ。
大学なら学部生100人くらいいることはよくあるだろうし、すぐ必要になるさ。
コメント1件

357
デフォルトの名無しさん[sage]   投稿日:2015/09/08 07:10:07  ID:xGk/4aAi.net
丸投げソース見てやるとかおまいら優しいな

358
デフォルトの名無しさん[sage]   投稿日:2015/09/08 21:23:18  ID:yqLWsTWb.net
見てるわけなかろ

>356
1列16人で区切って表示テーブルを横に伸ばせばいいだけ
16人なら全員出席でも7万以下だから昔のファミコンでもなんとかなるレベル

359
デフォルトの名無しさん[sage]   投稿日:2015/09/09 18:51:31  ID:v1G2BtY+.net(4)
これをPHPでできますかね?
http://1bit.mobi/20110106215505.html

360
デフォルトの名無しさん[sage]   投稿日:2015/09/09 18:58:26  ID:tGrd6Eqr.net
できてもジャンプアクションのスクロールないとチープ極まりない
コメント1件

361
デフォルトの名無しさん[sage]   投稿日:2015/09/09 19:01:57  ID:v1G2BtY+.net(4)
>360
スクロースは別にjsですればいいですが、最低限js未対応ブラでも目次の表示はしたいので。
どのようにして作ればいいのでしょうか?
コメント1件

362
デフォルトの名無しさん[]   投稿日:2015/09/09 19:10:13  ID:+quVusLF.net
PHPとJSでは動作が異なるし、PHPではブラウザからすると静的なHTMになるだけ。
事前にサーバーでHTMが生成してあっても同じ。
そのときPHPでもJSでもなくてもいい。C言語、BASICでもいい。
コメント1件

363
デフォルトの名無しさん[sage]   投稿日:2015/09/09 20:26:23  ID:v1G2BtY+.net(4)
>362
PHPが対応鯖多いのでPHPでしたいです。
ただURLのソースはJQを使っていてどのようなソースを書けばいいか分かりません

364
デフォルトの名無しさん[sage]   投稿日:2015/09/09 20:49:32  ID:JyAhRrTZ.net
http://php.net/manual/ja/book.dom.php
http://php.net/manual/ja/book.simplexml.php
http://php.net/manual/ja/function.file-get-contents.phphttp://php.net/manual/ja/function.preg-match.php
このあたり使えばできるよ
あのJavaScriptのソース(tree.js)は理解出来てるわけ?
全くわからないのならphpでやるのは諦めたほうがいいような・・・

365
デフォルトの名無しさん[sage]   投稿日:2015/09/09 22:01:43  ID:cP17XdT8.net
>361
>js未対応ブラでも、目次の表示はしたい

目次とリンクは、HTMLファイルに書いておく。
そうすれば、JS機能がオフでも、表示される

366
デフォルトの名無しさん[sage]   投稿日:2015/09/09 23:23:02  ID:v1G2BtY+.net(4)
"&index;"を目次に置き換えるコードを書いてみましたがしてみましたが出来ません・・・
http://notepad.cc/share/jH5opiyc92

<h1>あ</h1>
<h2>い</h2>
<h3>う</h3>
<h4>え</h4>
<h5>お</h5>
<h6>か</h6>
の目次を作ると






になります
コメント1件

367
デフォルトの名無しさん[sage]   投稿日:2015/09/10 00:24:43  ID:satfoS2b.net(2)
勝手にhタグ拾ってリンク作ればいいんだよね。
html内の[[nav]]の所をリストに書き換えるソース書いた

// htmlファイルを用意してない場合は
// ob_start();で出力をバッファにためて
// 最後に
// $html = ob_get_contents();

//htmlファイルを用意してあるなら
$html = file_get_contents('path');

$linkname = 'head_link'; //リンク用のnameの名前
preg_match_all("/<h[1-6].*?>(.*?)<\/h[1-6]>/", $html,$matches);
$html = preg_replace_callback("/(<h[1-6])(.*?)>/", function($tag){
global $linkname;
static $i = 0;
$str = $tag[1] . " name=\"{$linkname}{$i}\"" . $tag[2] . '>' ;
$i++;
return $str ;
}, $html);
$count = count($matches[0]);
print_r($matches);
$navi = "<ul>\n";
for($i=0;$i<$count;$i++){
$navi .= "<li><a href=\"#{$linkname}{$i}\">" .$matches[1][$i] ."</a></li>\n";
}
$navi .= "</ul>\n";
$html = str_ireplace("[[nav]]", $navi, $html);
echo $html;
コメント2件

368
デフォルトの名無しさん[sage]   投稿日:2015/09/10 00:31:14  ID:satfoS2b.net(2)
hタグにname勝手につけなくてもいいならpreg_replace_callbackらへんは全部削除してね
というかページ内リンクnameじゃなくてidだった

h2とかh3を入れ子にするのは自分でやってねforの中で$maches[0][$i]にセレクタごと入ってるからなんとかして判定して頑張って

369
デフォルトの名無しさん[sage]   投稿日:2015/09/10 00:46:13  ID:1c9BnOEf.net
>367
ありがとうございます。また明日してみます。

あと>366が上手く行かないのは、何が原因でしょうか?
コメント1件

370
デフォルトの名無しさん[sage]   投稿日:2015/09/10 01:10:32  ID:9M5qBB4N.net
>369
何というかコードへの突っ込みどころは多すぎるけど, 何より正規表現がダメ(>367のを使うべき)

/.*\<h([1-6])\>(.*?)\<\/h\1\>.*/u

という正規表現をしているが, これでは .* は標準で貪欲マッチだから最後のh*タグにしかマッチしない


正規表現使うよりSimpleXMLとかで処理した方が楽だし確実だし賢いと思うけど。

371
デフォルトの名無しさん[sage]   投稿日:2015/09/10 04:23:28  ID:l18x+WdQ.net
http://www.dmm.co.jp/digital/videoa/-/list/=/sort=saleranking_asc/

たとえばDMMの動画紹介などで、サムネイルがずらっと整列して並んでいるのですが
こういった表示をするにはCSSでするんでしょうか?それともPHPで処理して反映させるんでしょうか?
コメント1件

372
デフォルトの名無しさん[sage]   投稿日:2015/09/10 05:16:11  ID:BZtDa5Me.net
>371
調査方法はいろいろあるけれど、結論としてはスタイル。
/*media screen*/
#main-src ul#list > li, #main-src ul#list2 > li {
float: left; ←これ
width: 24%;
margin: 0 -1px -1px 0;
border: 1px #ccc solid;
}
コメント1件

373
デフォルトの名無しさん[sage]   投稿日:2015/09/10 11:33:11  ID:+aSujBcM.net(2)
>372
おまえ親切だな。

374
デフォルトの名無しさん[sage]   投稿日:2015/09/10 22:13:29  ID:mAu5JtU+.net(2)
Eclipseが重いねん
オールインワンから何を削ると軽くなるの?
もしくは違うIDE行ったほうがいいのかな
デスクトップはi7でSSDで16GBメモリだから無問題なんだけどノートがi5でHDDで4GBメモリだからヤバイ
どちらも64bit Windows7


375
デフォルトの名無しさん[sage]   投稿日:2015/09/10 22:25:26  ID:/OF3RUxs.net
phpやる人はasp.netはやらないんですか?

376
デフォルトの名無しさん[sage]   投稿日:2015/09/10 22:44:43  ID:+aSujBcM.net(2)
Atomつかおうぜ
コメント1件

377
デフォルトの名無しさん[sage]   投稿日:2015/09/10 22:53:53  ID:mAu5JtU+.net(2)
>376
Atomいいよな
html(.tpl)とかJSとかcssはAtom使ってるわ
でもずーーーーっとWin畑でVisualStudioだったから実行時にステップ実行で変数見れないの気持ち悪いねん
var_dumpとかダルいねん
コメント1件

378
デフォルトの名無しさん[sage]   投稿日:2015/09/11 03:03:42  ID:0qcobZsx.net
>377
AtomだろうがEclipseだろうがステップ実行できるだろ。
無能を棚に上げるな。

379
デフォルトの名無しさん[sage]   投稿日:2015/09/11 08:47:28  ID:k9ZbFTSR.net
VSに慣れると厳しいわな
あれと比較すると他のIDEはウンコ以下

380
デフォルトの名無しさん[]   投稿日:2015/09/11 09:50:52  ID:yoTyzIo0.net
ネット上でPHPを扱うサーバってどこ使えばいいのかな。
無料なところで、さーっと探してみたら「Rental Orbit Space」が何だか良さそうだったのだけど、
ほかになにかおすすめのところがあるようなら教えてほしい。

381
デフォルトの名無しさん[sage]   投稿日:2015/09/11 10:39:11  ID:t30ynhYx.net(2)
板チ
別板リンク(hosting)

382
デフォルトの名無しさん[sage]   投稿日:2015/09/11 14:24:42  ID:QQGqaHlG.net(3)
mysqlを利用する場合はどちらがオススメですか?ページ内ではselectを3回ほど使ってます。

1.使用するデータを全部読み込んでからhtmlの出力を始める。

2.使用する直前に必要なデータだけを読み込む。

現在1の方法を使っているのですが、2の方が表示速度が上がるのではないかと。

383
デフォルトの名無しさん[sage]   投稿日:2015/09/11 14:27:42  ID:/k4jExi0.net
2はajax使うの?

まあ両方やって計測で
コメント1件

384
デフォルトの名無しさん[]   投稿日:2015/09/11 14:29:02  ID:r0qleKIN.net
mysqlの使い方次第
3回使用しているところでどれくらい時間が掛かっているかを調べ
チューニングの方法をまず考えた方が良いかも。
コメント1件

385
デフォルトの名無しさん[sage]   投稿日:2015/09/11 14:36:42  ID:QQGqaHlG.net(3)
>383
phpとmysqlだけです。
それ以上の知識が無いので…。

386
デフォルトの名無しさん[sage]   投稿日:2015/09/11 14:41:15  ID:QQGqaHlG.net(3)
>384
標準的な方法があるわけではなくその都度良い方を選んだらいいと言う事ですね。

387
デフォルトの名無しさん[]   投稿日:2015/09/11 20:42:48  ID:8lckqHAv.net(2)
$val = "ichigo";
ってのがあったとして
$ichigoって変数にしたいのですがどうしたら良いですか?

具体的にはforeachの中でarrayに("ichigo", "mikan",...)
とあって、$valをキーにしました。
"ichigo"と$ichigoが欲しくて
$val_1 = "$" . "$val";
としたのですが'$ichigo'になってしまいました。

388
デフォルトの名無しさん[sage]   投稿日:2015/09/11 20:45:55  ID:6RIVBYPF.net
$$val

389
デフォルトの名無しさん[sage]   投稿日:2015/09/11 20:56:24  ID:mSu0XMwg.net(2)
LAMP環境です
ページAでsetcookie('test',123)してるんですが、ページBでcookieの中を見るとと入っていません

ググったんですがよくわかりません
よろしくお願いします
コメント2件

390
デフォルトの名無しさん[]   投稿日:2015/09/11 20:57:43  ID:8lckqHAv.net(2)
事故解決しました
${"$ichigo"}でした

391
デフォルトの名無しさん[sage]   投稿日:2015/09/11 20:58:53  ID:t30ynhYx.net(2)
ページBは別ディレクトリなのか?

392
デフォルトの名無しさん[sage]   投稿日:2015/09/11 21:20:38  ID:GJirAVL+.net
>389
実際のコードを書け, 特にsetcookie側。

393
デフォルトの名無しさん[sage]   投稿日:2015/09/11 21:26:55  ID:Z45NruML.net
たぶんpathだな

394
384[sage]   投稿日:2015/09/11 21:41:13  ID:mSu0XMwg.net(2)
答えになってないかもですが、symfonyを使ってます
AとBはcotrollerも違い、viewのディレクトリも違います


ソースは今日は出先なので貼れないですが以下のような感じです

Acontroller.phpの中で、
テーブルにレコードinsertするActionの一番最後に書いてます

function registAction{
 //レコードinsertする処理
 
 setcookie('test',123);

}


Bcontroller.php
ではcookieに関する処理は入れてません

cookieはブラウザ(Chrome)のDeveloperツールで確認してます

395
デフォルトの名無しさん[sage]   投稿日:2015/09/11 22:16:36  ID:GHVwR1ig.net
entensionでcache関連の奴どれか入れるとレスポンス良くなるますか?

396
デフォルトの名無しさん[sage]   投稿日:2015/09/12 09:56:39  ID:R3r/vRAo.net(2)
2chのread.cgi/hoge
みたいなphp以下のファイルを処理する事ってできませんかね?
コメント2件

397
デフォルトの名無しさん[sage]   投稿日:2015/09/12 11:08:14  ID:KVS4ZFCE.net
>389
symfony使ったことないけどhttpレスポンス管理するオブジェクトあるっぽいからそこで食わせればいいんじゃね
sfWebResponseとsfWebRequestでググれば使い方出てくる

>396
mod_rewrite
じゃなければもっと詳しく書いてくれないとわからない

398
デフォルトの名無しさん[sage]   投稿日:2015/09/12 11:10:06  ID:K5Xj9mys.net
普通にファイルを開いて読めば良いだろう

399
デフォルトの名無しさん[sage]   投稿日:2015/09/12 15:09:05  ID:ss/jDHIV.net
>396
PATH_INFOのこと?

400
デフォルトの名無しさん[sage]   投稿日:2015/09/12 15:55:05  ID:R3r/vRAo.net(2)
普通のサーバーじゃ出来そうにないな

401
デフォルトの名無しさん[sage]   投稿日:2015/09/12 16:40:00  ID:v8+tPOvk.net
普通にPATH_INFO使え

402
デフォルトの名無しさん[sage]   投稿日:2015/09/12 16:50:08  ID:1mS4NSAq.net
phpってhtmlやjavascriptなんかも混ぜて書ける変態言語に見えるんですが、ちゃいますか?
コメント1件

403
デフォルトの名無しさん[sage]   投稿日:2015/09/12 17:07:47  ID:Lvz/9L2y.net
>402
あまり知られてないけど、shも書けるしCも書けるよ

404
デフォルトの名無しさん[]   投稿日:2015/09/12 21:51:57  ID:mTeFJ4oV.net
PHPで童貞捨てたんですが、次に学ぶためにとっつき易い言語って何ですか?
Cが似てるとかJavaが近いとかそんなアドバイスくださいな
コメント2件

405
デフォルトの名無しさん[sage]   投稿日:2015/09/12 22:29:39  ID:gDZ5aTy9.net
>404
Cが似てる

406
デフォルトの名無しさん[sage]   投稿日:2015/09/12 23:44:50  ID:TYwAh20p.net
>404
JavaやってからCだな
ただその前にJavaScriptは必須

407
デフォルトの名無しさん[sage]   投稿日:2015/09/12 23:49:30  ID:3+0RjRCl.net
PHPをグニャグニャにしたのがperl

408
デフォルトの名無しさん[sage]   投稿日:2015/09/13 00:39:33  ID:77ddCjlU.net(3)
どう考えてもC。
PHP7でついに本当の配列を手に入れたとか言ってる意味が分からないならますます。

409
デフォルトの名無しさん[sage]   投稿日:2015/09/13 01:10:18  ID:zE88tHy7.net
プログラミング初心者でやっとPHPが手になじんできた程度の者です。
レンタル鯖を借りて会員制の自サイトを公開するとなると、どの程度の時間で習得できますか。
最近Mysqlの勉強をしているのですがあまり進捗がないです。
おすすめの本、サイトがあれば教え得頂きたいです。
コメント1件

410
デフォルトの名無しさん[sage]   投稿日:2015/09/13 01:15:18  ID:H6vWVRfH.net
俺もおすすめのレンサバ教えてほしい

411
デフォルトの名無しさん[sage]   投稿日:2015/09/13 01:34:59  ID:cf7CWKJI.net(2)
var_dump('鯖板へ');

412
デフォルトの名無しさん[sage]   投稿日:2015/09/13 01:39:02  ID:SU3r4vhu.net(2)
会員制の自サイトを作るのは難しいことではない
難しいのは会員の情報を守ることだ

413
デフォルトの名無しさん[sage]   投稿日:2015/09/13 01:57:14  ID:cf7CWKJI.net(2)
さらに会員を集めなくてはならない。

414
デフォルトの名無しさん[sage]   投稿日:2015/09/13 10:54:35  ID:ts9uuw7s.net
>409
1年くらい。
PHP+MySQLに半年。セキュリティに半年。

415
デフォルトの名無しさん[]   投稿日:2015/09/13 14:46:36  ID:D2q3+sgT.net
ImagicKかGDのどちらかで、画像処理をしたいのですが、jpg gifどちらでもプログラムを変えることなく組めるのはどちらですか?

416
デフォルトの名無しさん[sage]   投稿日:2015/09/13 15:21:48  ID:SU3r4vhu.net(2)
GD(条件のとこは擬似言語)
if ($fname.getMimeType().match("image/jpe?g")) $resource = imagecreatefromjpeg($fname);
elseif ($fname.getMimeType() =="image/gif") $resource = imagecreatefromgif($fname);

$resource = new Imagick($fname);

if-else使うことがプログラムを変えることを指しているのならImagick

417
デフォルトの名無しさん[sage]   投稿日:2015/09/13 16:53:22  ID:77ddCjlU.net(3)
画像リソースを読み込んでしまえばどちらも同じ

418
デフォルトの名無しさん[]   投稿日:2015/09/13 17:38:28  ID:iQC47Pyn.net(3)
さくらのレンタルサーバーを使ってるのですが
Fatal error:Call to undefined function ftp_connect

上記が表示されてアップロードできません。
調べたらconfigureオプションで --enable-ftpを追加すれば可能とのことでしたが

configureにはどうやってアクセスするのでしょうか?
コマンドラインの操作手順等が分かりません。
コメント1件

419
デフォルトの名無しさん[]   投稿日:2015/09/13 17:40:46  ID:RKUXc0Tt.net
さくらのサーバーを使ったこと無いけど基本モジュールはビルド済みで、php.iniの設定だけでは?

420
デフォルトの名無しさん[]   投稿日:2015/09/13 18:01:08  ID:iQC47Pyn.net(3)
iniに記述してみましたが反応なしでした。

421
デフォルトの名無しさん[sage]   投稿日:2015/09/13 18:51:05  ID:77ddCjlU.net(3)
>418
> configureオプションで --enable-ftpを追加すれば可能
これはconfigureというコマンドのオプションに追加ってことだよ。
configureはMakefileを作るためのコマンド。その後出来上がったMakefileを使ってmakeする。
つまりphpをソースからコンパイルする人向けの話だよ。
コメント1件

422
デフォルトの名無しさん[]   投稿日:2015/09/13 18:57:27  ID:iQC47Pyn.net(3)
>421
ややこしそうですね
こちら側で修正できませんでしょうか?
コメント2件

423
デフォルトの名無しさん[sage]   投稿日:2015/09/13 19:27:22  ID:4H3dG/Do.net
>422
レンタルサーバーじゃむり

424
デフォルトの名無しさん[sage]   投稿日:2015/09/13 19:49:44  ID:gd0zNYZx.net
>422
「FTP関数の使用」は × になってるよ
ユーザーが変更するのは無理でしょ

https://help.sakura.ad.jp/app/answers/detail/a_id/2105

425
デフォルトの名無しさん[sage]   投稿日:2015/09/13 23:51:21  ID:M+tl4tzP.net
index.php?q=文字列
で受け取った "文字列" をJSの変数
 var variable ="文字列";
に入れておいて、その直後に
index.html
を読み込んでその中で使いたいのですが、やり方が分かりません。
ググルキーワードを教えてください。
コメント2件

426
デフォルトの名無しさん[sage]   投稿日:2015/09/14 01:19:08  ID:btLla6l6.net
QUERY_STRING もしくはCONTENT_LENGTH js だろ。

php関係ねーだろドサンピン
httpdの事を調べなこのどシロウトが
世話がやけるぜスカンピン
おととい きやがれこのノータリン

427
デフォルトの名無しさん[sage]   投稿日:2015/09/14 01:24:45  ID:BKH9gjXB.net
GETメソッドは、URLの末尾に「?」をつけ、
「パラメーター名="値"」という形式で、データを送る

一方、POSTメソッドは、フォームの中のコントロールに、
値を入力して、データを送る

詳しくは「get post 違い」で検索して

そして、JSファイルに書き込んだら、
HTMLファイルに、JSファイルのパスを書いておく

<script src="File1.js"></script>

428
デフォルトの名無しさん[sage]   投稿日:2015/09/14 01:32:16  ID:IkwcTGNO.net
JSファイルに書き出すと、
複数からアクセス合ったとき困ることにならないか?

429
デフォルトの名無しさん[sage]   投稿日:2015/09/14 01:52:01  ID:dwa7hTy+.net(6)
>425
> index.html
> を読み込んでその中で使いたい
使うのはhtmlおよびそのJSを読み込み、解釈したクライアントであって、php側が使うものではない。

430
デフォルトの名無しさん[sage]   投稿日:2015/09/14 14:23:48  ID:4n9SKrVI.net
別にファイルを書き出しておく必要はないね。
PHPでJavaScriptのスクリプトを動的に生成すればいいだけ。
コメント1件

431
デフォルトの名無しさん[sage]   投稿日:2015/09/14 15:48:44  ID:B32AStzW.net(2)

432
デフォルトの名無しさん[sage]   投稿日:2015/09/14 15:50:43  ID:h9CenDqd.net(2)
>430
その方式だと
<script >...</script>がindex.htmlの前に入るんじゃないですか?
問題無いですか?

433
デフォルトの名無しさん[sage]   投稿日:2015/09/14 17:04:28  ID:7eSzmWQT.net
index.htmlにjs記述してindex.htmlでパラメータ受け取ればいいんじゃないのか?

434
デフォルトの名無しさん[sage]   投稿日:2015/09/14 17:20:33  ID:B32AStzW.net(2)
そもそも、index.phpで受け取ったものをindex.htmlで使いたいというのはあってるんだろうか?
コメント1件

435
デフォルトの名無しさん[sage]   投稿日:2015/09/14 17:58:40  ID:h9CenDqd.net(2)
>434
元々index.htmlで作ったページをbrowserから引数を渡す仕様に変更したい場合などじゃあない?

436
デフォルトの名無しさん[sage]   投稿日:2015/09/14 22:51:36  ID:LFk2qsIS.net(6)
ググりまくったところxammpのPHPのverアップデートはPHPを新しく落としてきて上書きすればいいとあったのですが上手く行きません。

http://mergedoc.osdn.jp/index.html#/pleiades_distros4.5.html
このx64 FullEdition(PHP ver5.4.31)のPHPを

http://windows.php.net/download/
ここの5.6.13(VC11 x64 Thread Safe (2015-Sep-04 02:29:45))にしようと現在のPHPフォルダをリネームしてバックアップ
新規にPHPフォルダを作って解凍してXAMPPコントロールパネルのApacheのスタートボタンを押すものの(php.iniの編集はしていない状態)

Error: Apache shutdown unexpectedly.This may be due to a blocked port, missing dependencies...とポート重複した時と同じエラーが出てしまいます
これ( http://www.microsoft.com/ja-JP/download/details.aspx?id=30679 )は入れてます

437
デフォルトの名無しさん[sage]   投稿日:2015/09/14 22:55:12  ID:dwa7hTy+.net(6)
apacheを止めたという文章がないままapacheのスタートを押してるけど、その辺大丈夫なの
コメント1件

438
デフォルトの名無しさん[sage]   投稿日:2015/09/14 22:58:43  ID:LFk2qsIS.net(6)
>437
すみません止めてます
止めて尚且つコンパネも終了してます
念のため再起動もしました
コメント1件

439
デフォルトの名無しさん[sage]   投稿日:2015/09/14 23:35:21  ID:dwa7hTy+.net(6)
>438
実際ポートがLISTENしてないことも確認した?
コメント1件

440
デフォルトの名無しさん[sage]   投稿日:2015/09/14 23:41:48  ID:LFk2qsIS.net(6)
>439
はい
またバックアップしたPHP_bakeup(旧PHPフォルダ)をPHPにリネームすると即座に起動します

441
デフォルトの名無しさん[sage]   投稿日:2015/09/14 23:48:32  ID:dwa7hTy+.net(6)
なんだろ、とおもってぐぐったら先頭にこんなん出てきたけど、ググりまくったとのことなので別件なのかな。
http://ninnin.in/diary/xampp-error-this-may-be-due-to-a-blocke...
コメント1件

442
デフォルトの名無しさん[sage]   投稿日:2015/09/14 23:51:59  ID:LFk2qsIS.net(6)
>441
このページも見ましたね……
ちょっと解決できそうにないので5.9積んだEclipseの導入を考えてみます
ありがとー!

443
デフォルトの名無しさん[sage]   投稿日:2015/09/14 23:53:02  ID:LFk2qsIS.net(6)
間違いました 5.6です

444
デフォルトの名無しさん[sage]   投稿日:2015/09/14 23:53:39  ID:dwa7hTy+.net(6)
いえいえ。お役に立てず。
ちなみに再頒布可能パッケージは64bit版入れてある?
あとはぱっと思いつくものないです。(イベントビューア見てみてとかそういう感じになっちゃう)

445
デフォルトの名無しさん[sage]   投稿日:2015/09/14 23:58:33  ID:LFk2qsIS.net(6)
再頒布パッケージはx86とx64入れてます
元々Win畑だったのでそこら辺はなんとなく想像がついて色々やってみたのですがXAMPPだけはどうにもならずに今回質問しました
どうもありがとう

446
デフォルトの名無しさん[sage]   投稿日:2015/09/14 23:58:57  ID:dwa7hTy+.net(6)
そっかぁ。無念。

447
デフォルトの名無しさん[sage]   投稿日:2015/09/15 05:26:50  ID:FdSfZNLJ.net
php上書きで動くほど単純なもんじゃないだろw
php5.6用のapacheモジュール登録したり
php.iniも前バージョンの参考にして最低限xampp用のパスに書きなおさないとだめだろ
素人はおとなしくパッケージのままつかっとれ

448
デフォルトの名無しさん[sage]   投稿日:2015/09/15 08:33:34  ID:c6kBSd9X.net
php_mysqli.dll
の有無で何が変わりますか?
入れると検索が速くなりますか?

449
デフォルトの名無しさん[]   投稿日:2015/09/15 20:11:48  ID:dFBKAE/q.net(2)
PHPを使って、別のWEBページの特定のHTMLを引っこ抜いてきて表示することってできますか?
自分のブログのコメント欄のみを見やすく表示する「コメントビューワー」を作りたいのですが…

450
デフォルトの名無しさん[sage]   投稿日:2015/09/15 20:15:12  ID:hBquVAC9.net
自分のブログならDBあたりに保存されているんだからそこ読めばいいだけ
コメント1件

451
デフォルトの名無しさん[sage]   投稿日:2015/09/15 20:17:29  ID:iJn5Afvq.net
一度全部のHTMLを読み込んだ上で必要な箇所を抜き出して表示することは可能
php スクレイピング
とかでぐぐるといいんじゃないっすかね
コメント1件

452
デフォルトの名無しさん[]   投稿日:2015/09/15 20:26:43  ID:dFBKAE/q.net(2)
>450
livedoorブログはデータベースにアクセスできないんですよね…

>451
ありがとうございます!スクレイピング、聞いたことあります
ちょっと検索してみます!
コメント4件

453
デフォルトの名無しさん[sage]   投稿日:2015/09/15 22:49:51  ID:Zyfo7CCu.net(2)
ググったけど本当にXAMPPのPHPフォルダ上書きでおkとか書いてるblogそこそこあるな
PHPに限らんけどアホみたいな記事あげてる奴多すぎるからggrksってのも微妙だな

454
デフォルトの名無しさん[sage]   投稿日:2015/09/15 22:56:32  ID:Zyfo7CCu.net(2)
もう見てないだろうけどオールインワン重いし色々古いし特にPHPオンリーならいいとこないからやめたほうがいい
http://sourceforge.net/projects/xampp/files/XAMPP%20Windows/5.6.12/ ポータブルがいいならここのZIP版
IDE必要ならEclipseなりなんなり別に落として使うといいよ
俺はPHPStormだけど軽いし強力なので金があるならオススメ(ステマ)

455
デフォルトの名無しさん[sage]   投稿日:2015/09/15 23:52:05  ID:wfKXWUgu.net
パッケージにphp.iniというファイル自体は入ってないから上書きで設定引継ぎなんじゃないの。
php.ini.develop っぽいやつじゃない?
今回の話のは旧バージョンのディレクトリリネームしてるからphp.ini行方不明だろうけど。

456
デフォルトの名無しさん[sage]   投稿日:2015/09/16 02:27:28  ID:kmfiaTaj.net(2)
>452ですが、調べてもさっぱりわかりません…

うーん、別のサイトで同じことやってたからソース見て参考にしようと思ったんだけどphpって難しいね
コメント1件

457
デフォルトの名無しさん[sage]   投稿日:2015/09/16 02:45:23  ID:zBDmVf67.net(3)
>456
file_get_contents('http://〜') で HTML 取ってきて、その中から欲しい部分を取り出せばいい。
HTMLを正確にパースしなくても、うまいこと正規表現書いたりその他ロジックを組み合わせればいい。
例えば、まずコメント部分を探すため特定のクラスが指定された div を見つけ、その後ろをコメント1件ずつを探すため特定のクラスの付いたタグを探すとか。
開始タグと終了タグの対応をきとんと取ろうとすると大変だから、適当に誤魔化して処理するといい。
コメント1件

458
デフォルトの名無しさん[sage]   投稿日:2015/09/16 03:19:18  ID:ieR9FMOp.net(7)
変なこと教えずにxpath使えでいいじゃん。

459
デフォルトの名無しさん[sage]   投稿日:2015/09/16 03:22:50  ID:zBDmVf67.net(3)
htmlが厳密だったらそれでもいいんだろうけど

460
デフォルトの名無しさん[sage]   投稿日:2015/09/16 04:05:57  ID:YSsosHmp.net
DOMDdocument::loadHTML
コメント1件

461
デフォルトの名無しさん[sage]   投稿日:2015/09/16 06:47:11  ID:HSSwq9JZ.net
質問者はそもそもPHPの扱い方もわからなければ
そもそもプログラム経験もないのではないか?
ヒント与えたところで作れないだろうな

462
デフォルトの名無しさん[sage]   投稿日:2015/09/16 14:50:47  ID:LN3L51MD.net(2)
file_put_contents('%SystemRoot%\system32\hoge.dll', $dll);
C:\Windowsなどが入る予定の%SystemRoot%が環境変数としてではなく文字列として認識され
そんなフォルダないよと言われるのですが
Windowsの環境変数使う時ってどうしたらいいのでしょうか?

463
デフォルトの名無しさん[]   投稿日:2015/09/16 14:59:36  ID:aL/dguIa.net(2)
一般には外部コマンド実行で、PHPに取得命令があればそっち。

464
デフォルトの名無しさん[sage]   投稿日:2015/09/16 15:03:06  ID:7sbTeZHX.net
getenv('SystemRoot') してつなぐ
コメント1件

465
デフォルトの名無しさん[]   投稿日:2015/09/16 15:04:15  ID:aL/dguIa.net(2)
これで


<?
$SystemRoot = exec("echo %SystemRoot%");
$dllpath = "{$SystemRoot}\system32\hoge.dll";
print_r([$SystemRoot,$dllpath]);
//file_put_contents($dllpath, $dll);

466
片山博文MZ ◆T6xkBnTXz7B0 [sage]   投稿日:2015/09/16 15:08:12  ID:OezDmTKu.net
$_ENV['環境変数の名前']

467
デフォルトの名無しさん[sage]   投稿日:2015/09/16 15:12:56  ID:LN3L51MD.net(2)
レスありがとうございます。
$_ENVではUndefined Indexになったで、>464さんのgetenv使う方法でとります。
exec使う方法も参考になりました。
どうもありがとうございました。

468
デフォルトの名無しさん[sage]   投稿日:2015/09/16 16:10:09  ID:S9pU6Zcj.net(2)
$say = $greeting . " ななしさん";
$greeting = "おはよう";
echo $say; //おはよう ななしさん
$greeting = "こんにちは";
echo $say; //こんにちは ななしさん

イメージとしてはこのようにしたいのですがこれは期待どおり動作しません
リファレンスにして
$say =& $greeting . " ななしさん";
に変えると変化して動作するのですが「ななしさん」が表示されません

どうするのが正しいんですか?

469
デフォルトの名無しさん[sage]   投稿日:2015/09/16 16:16:09  ID:ieR9FMOp.net(7)
正しい方法なんてものはないし、期待通りに動かすことぐらいできそうな気がするけどな。
ただそうするのに何らかの理由をつけて避けてるだけで。

470
デフォルトの名無しさん[sage]   投稿日:2015/09/16 16:27:31  ID:S9pU6Zcj.net(2)
関数使わないでも変数にリファレンス使うだけでいけそうだったから質問しただけです
エラー出してくれればよかったのですが
あのコードで動いてしまったのでちょっと変えれば動くもんかと
コメント2件

471
デフォルトの名無しさん[]   投稿日:2015/09/16 16:32:23  ID:kmfiaTaj.net(2)
>457
ありがとうございます。
>460さんの方法と合わせて、以下のようなコードを書いてみました。

<?php
$html = file_get_contents('http://~’);

//HTMLを書き出す
$doc = new DOMDocument();
$doc->loadHTML($html);

//一部分(sectionタグ)だけを抽出
$section = $doc->getElementsByTagName('section')->item(0);

//HTMLを出力
echo $doc->saveHTML($section);

?>

仰る通りPHPを触るのは初めてで若干混乱していますが、一応うまくいったようです…
ちなみに、「->」という演算子は「右辺の中の左辺のの要素を参照する」っていうことでいいんでしょうか…?

472
デフォルトの名無しさん[sage]   投稿日:2015/09/16 16:32:23  ID:ieR9FMOp.net(7)
>470
evalにしてみたら?

473
デフォルトの名無しさん[sage]   投稿日:2015/09/16 16:40:19  ID:zBDmVf67.net(3)
>470
これは
$say =& $greeting . " ななしさん";
多分こう評価されるんでしょう。
($say =& $greeting) . " ななしさん";

$say は $greeting のリファレンスになり、それと文字列を繋げた値が作られ、その値は捨てられる。

で、やりたいことは多分クラス化してやるような処理なんじゃないかな。

474
デフォルトの名無しさん[sage]   投稿日:2015/09/16 16:40:48  ID:OCykl+Gn.net(3)
知り合いが作ったソースを修正しなきゃいけないんだけど、ど初心者なもんでちょっとご教授頂きたい。

*var_dumpやprint_r(var,true)使うとくっそ重くなってフリーズ、もしくは*メモリエラー(リーク?オーバーフロー?)出ちゃうんだけど
小分けに表示したり、*子にオブジェがあった場合に再帰的に下までのぞきにいくんじゃなくて親に直接ついてる子のみの参照(表示)とかできる?(´・ω・`)

あとよかったらそれぞれの機能にあたる名前?を教えてほしいOTL 日本語喋れって怒られた・・・
・var_dump やprint_r と言った関数を例にした機能
・php.iniに設定するメモリーの値を超える事
・子のオブジェ?(例えば class a{ public int num1;public function a(){} public function b(){}}で言うところのa::bやa->num1?a::num1?に当たる名前
クラスAの○○であるnum1、クラスAの○○である関数(?)b?
・○○.phpという形でアクセスして来た場合の 実行元のPHPと呼ばれたPHP(use ××.php←)の関係 (親と子・・・ではないよねOTL)
・staticとglobalの使い方
・cgi-php と handlerの違い(1リクエスト1プロセス発行と言うのは同じ?)
・上記とprefork workerの違い
\(^o^)/全部じゃなくてもいいので一部でもいいです!お願いします
コメント2件

475
デフォルトの名無しさん[sage]   投稿日:2015/09/16 16:52:29  ID:ieR9FMOp.net(7)
>474
その知り合いに聞けばいいじゃんという回答ではだめなんだろうか。知り合い死んだの?
コメント1件

476
デフォルトの名無しさん[sage]   投稿日:2015/09/16 16:59:34  ID:9fL6Ueyi.net
PHP マニュアル
https://secure.php.net/manual/ja/index.php

クラスの中には、定数や変数("プロパティ" といいます)、
そして関数("メソッド" といいます)を含めることができます

ひとまず検索するか、PHP マニュアルを読んでくれ
コメント2件

477
デフォルトの名無しさん[sage]   投稿日:2015/09/16 17:04:11  ID:ieR9FMOp.net(7)
というだけではアレか。
最初の質問は、出力したいものがオブジェクトならリフレクション使う。
そうではなく多次元配列の中のオブジェクト以外を出力したいということなら自前でちょっとした関数作る。
最後二つはapacheの話。下から二つ目は何か誤解を含んでいる気配も。

付け焼刃的にやりたいというわけじゃないなら公式マニュアルどんどん読めばいいよ。
コメント1件

478
デフォルトの名無しさん[sage]   投稿日:2015/09/16 18:37:59  ID:GuiiBHkk.net
>474
子にオブジェクトって継承なの?
親に直接ついてる子の意味がちょっとよくわからない。PHPのクラスの親子関係は1対1だよ。再帰でもなさそうだ。

・var_dump やprint_r と言った関数を例にした機能
一般的にその都度値を表示して確認することをプリントデバッグと呼ぶ。
大くくりに言うとデバッグ
・php.iniに設定するメモリーの値を超える事
phpに限らずメモリ以上のデータを保存しようとして溢れることをオーバーフローという
・子のオブジェ〜
クラスの中の$varはプロパティ、function hoge(){...}はメソッド
そして子じゃなくて$obj = new objしたなら$objはobjクラスのインスタンスと呼ぶ。クラスの親子関係は別にある
・○○.phpという形でアクセスして来た場合の 実行元のPHPと呼ばれたPHP(use ××.php←)の関係 (親と子・・・ではないよねOTL)
a.phpの中でincludeもしくはrequire b.phpをしたなら呼び出し元
・staticとglobalの使い方
普通のとは使いどころ違うからエスパーするけどもし関数内で使われているstaticとglobalキーワードの違いでいうなら
global →関数の外で使われている変数を見れる
static →その関数全ての呼び出しで値を保持して使える
・cgi-php と handlerの違い(1リクエスト1プロセス発行と言うのは同じ?)
・上記とprefork workerの違い
ごめんcgiで動かすことがないのでよくわからない。
あとhandlerはエラーハンドラしかわからないけどこの文脈で出てくるhandlerってどういうもの?
ググったけどようわからん…
コメント2件

479
デフォルトの名無しさん[sage]   投稿日:2015/09/16 18:52:44  ID:ieR9FMOp.net(7)
>478
彼のいう「子にオブジェクト」って、メンバに別のクラスのインスタンスを含むってことじゃないかしら
コメント1件

480
デフォルトの名無しさん[sage]   投稿日:2015/09/16 20:37:16  ID:OCykl+Gn.net(3)
想像以上にレスがきてる!

>475 もうコンタクトを取ることは不可能臭い
>476,>477 急にお腹が・・・
>478 ありがたや・・・
>479 親と子って違うのかorz

えっと・・・レスを参考にして質問を修正すると・・・
プリントデバッグ使うと動作が不安定になってオーバーフローしてしまうので
インスタンスのプロパティ表示を小分けにしたり、インスタンスの中のインスタンスの詳細を表示しないように設定できませんか
(´・ω・`)こんな感じですかね
class testA
{

}
コメント1件

481
デフォルトの名無しさん[sage]   投稿日:2015/09/16 21:04:25  ID:ieR9FMOp.net(7)
>480
それなりに簡単に自分で作れるから勉強と思って頑張りな。
それかxdebug入れてvar_dumpを強化するか。

482
デフォルトの名無しさん[sage]   投稿日:2015/09/16 21:41:01  ID:OCykl+Gn.net(3)
(´・ω・`)はい、分かりました。 >476のマニュアル読んできます

483
447[]   投稿日:2015/09/17 16:29:03  ID:1rTPpGdU.net(2)
//リファラーのURLを取得
$referer = $_SERVER["HTTP_REFERER"];

>452で質問したものですが…

//取得したURLのHTMLを取得
$html = file_get_contents($referer);

//HTMLをパースする
$doc = new DOMDocument();
$doc->loadHTML($html);

//特定の箇所だけを抽出
$com = $doc->getElementsByTagName('section')->item(0);

//HTMLを出力
echo $doc->saveHTML($com);

上記のようなコードを書いたのですが、特定の箇所だけを抽出する際にタグではなくIDのみを抽出したいので、「getElementsById(‘hoge’)->item(0);」と書いたところうまくいきませんでした…
パースしたHTMLから特定のID部分だけを抜き出すにはどうすれば良いのでしょうか

484
デフォルトの名無しさん[sage]   投稿日:2015/09/17 16:43:30  ID:Z358njol.net(3)
getElementById じゃないの?
idは1個しかない前提だから、そのまま返ってこないかな
コメント1件

485
447[]   投稿日:2015/09/17 16:52:17  ID:1rTPpGdU.net(2)
>484
あ、すみません;
sが余計でしたね…しかしどうしてもできない…
たとえば、取得したHTMLのID名「blog-footer」を全部引っこ抜きたい場合、
$hoge = getElementById('blog-footer')->item(0);
echo $doc->saveHTML($hoge);

と書いても無理でした…
なんでなんでしょうか…

486
デフォルトの名無しさん[sage]   投稿日:2015/09/17 17:05:32  ID:bU092Fsh.net(2)
マニュアル読んでないからじゃないかな。

487
デフォルトの名無しさん[sage]   投稿日:2015/09/17 17:10:09  ID:N+2d3iGi.net(3)
public DOMNodeList DOMDocument::getElementsByTagName (string $name)
public DOMElement DOMDocument::getElementById (string $elementId)
なのだが。

488
デフォルトの名無しさん[sage]   投稿日:2015/09/17 17:37:16  ID:Z358njol.net(3)
まずIDは1個なので、Listが返るわけでもなし、item(0)なんてやる必要はない。
で、
ちょっとやってみたけどsetIdAttribute呼ばないと駄目な感じ?
一応呼んだら出来たけど、これじゃ使いにくそうな。
コメント1件

489
デフォルトの名無しさん[sage]   投稿日:2015/09/17 17:41:57  ID:N+2d3iGi.net(3)
頭悪い奴しかいない予感

490
デフォルトの名無しさん[sage]   投稿日:2015/09/17 17:42:38  ID:JaPdUxaK.net(2)
IDは1個であるはずだけど>452の中じゃclassのように使ってたりしてなw

491
デフォルトの名無しさん[sage]   投稿日:2015/09/17 17:49:19  ID:Z358njol.net(3)
ま、PhantomJSとNokogiriばっか使ってるからphpは任すわ

492
デフォルトの名無しさん[sage]   投稿日:2015/09/17 18:01:29  ID:bU092Fsh.net(2)
>488
だからマニュアル読みなって

493
デフォルトの名無しさん[sage]   投稿日:2015/09/17 18:21:44  ID:N+2d3iGi.net(3)
Rubyのことも良くわかってなさそうだな、こいつ

494
デフォルトの名無しさん[]   投稿日:2015/09/17 18:37:41  ID:2BhOyj3T.net(3)
Fatal error: Call to undefined function getElementById()
エラーの意味くらい理解できるようになれよ。

$hoge = $doc->getElementById('blog-footer');
echo $doc->saveHTML($hoge);
コメント1件

495
デフォルトの名無しさん[sage]   投稿日:2015/09/17 18:38:42  ID:2BhOyj3T.net(3)
ageてしまい大変申し訳ございません

496
デフォルトの名無しさん[sage]   投稿日:2015/09/17 18:38:57  ID:z0CdisW0.net
( ^ω^)・・・俺477に書いた初心者でそのモジュール知らないけど item(0)いらないんじゃね?getElementsじゃなくてgetElementだし
返り値見てもDOMElementか無ければNULLが返るってあるし
中の値?みたいならtextContent とかinnerTextとか参照すればいいんじゃない?(違ったらごめんね)
コメント1件

497
デフォルトの名無しさん[sage]   投稿日:2015/09/17 20:01:18  ID:JaPdUxaK.net(2)
つうかSimpleXMLのほうが使いやすいだろうに

498
デフォルトの名無しさん[sage]   投稿日:2015/09/17 20:31:11  ID:hKr4+HsM.net(2)
SimpleXMLはXMLとして不適切なHTMLはまともに読めないんじゃなかったっけ?
DOMDocumentならloadHTML関数でかなり強力に読める(Warningもオプション付ければ抑制して後から取得も出来る)

DOMNodeからSimpleXMLを作るにしても, 最終的にHTML出力を得るならDOMを使うのがいいんじゃない?

499
デフォルトの名無しさん[sage]   投稿日:2015/09/17 20:51:06  ID:2BhOyj3T.net(3)
まあDOMはやたらメモリ食うからなあ
>452の使い方的にlivedoorブログがちゃんとしたソース吐いてるならSimpleXMLでもいいんじゃね

500
デフォルトの名無しさん[sage]   投稿日:2015/09/17 21:18:39  ID:hKr4+HsM.net(2)
試してみたけど, SimpleXMLで幾つかのlivedoorブログのソースをパースしようとしたらfalseが返ってきた(全てXHTML1.0)
エラーログに大量のパースエラーが記録されてるから, ソースからSimpleXMLでパースするのは困難で, DOMからSimpleXMLに変換するしかなさそう(DOMでは読めた)

501
447[]   投稿日:2015/09/18 15:10:18  ID:Qyee3ty4.net
>494
すみません;無事出来ました…;
ご教授頂きありがとうございました…

>496さんもありがとうございます
確かにDOMだと読み込みまでの時間が遅くて若干もっさりですね…

502
デフォルトの名無しさん[sage]   投稿日:2015/09/18 20:53:13  ID:+pqm/1Nv.net
php-fpmの仕組みバッチリ理解してる人いる?

503
デフォルトの名無しさん[sage]   投稿日:2015/09/19 15:25:46  ID:ISETQD0O.net(5)
index.phpをデフォルトページにしておいて、
IE8,9,10で
来た人には
indexIE8910.html
それ以外の人には
index.html
を開かせるようにするにはどう書けばよいでしょうか?

504
デフォルトの名無しさん[sage]   投稿日:2015/09/19 16:08:41  ID:H93lCnag.net(4)
UA拾って振る。以上。
コメント1件

505
デフォルトの名無しさん[sage]   投稿日:2015/09/19 16:24:22  ID:ISETQD0O.net(5)
>504
もうちょっと詳しく教えてくだしゃいませお奉行様。
コメント1件

506
デフォルトの名無しさん[sage]   投稿日:2015/09/19 16:31:57  ID:H93lCnag.net(4)
>505
ゆーざーえーじぇんと php ぐぐる
コメント1件

507
デフォルトの名無しさん[sage]   投稿日:2015/09/19 16:35:59  ID:ISETQD0O.net(5)
>506
index.phpのサンプル作ってくだしゃいませ、
お代官様!

508
デフォルトの名無しさん[sage]   投稿日:2015/09/19 16:41:10  ID:UDnFG9E7.net
IE弾く流れがあるから
IE使ってても見れるのに見れなくしてるサイトとかあるし
IE使いが積極的にUA偽装してるし意味ないで・・・

509
デフォルトの名無しさん[sage]   投稿日:2015/09/19 17:46:05  ID:H93lCnag.net(4)
ブラウザの分岐つくんのめんどくさいんだぜ。テキトーにどっかの拾って使っとけ。
コメント1件

510
デフォルトの名無しさん[sage]   投稿日:2015/09/19 17:59:55  ID:NWKVhdko.net
IE9ってまだ現役扱いで対応してる?
切り捨てているサイトが出てきたな

511
デフォルトの名無しさん[sage]   投稿日:2015/09/19 19:15:52  ID:ISETQD0O.net(5)
>509
>テキトーにどっかの拾って使っとけ。
それをここに書きなさい。この紋所が目に入らぬか!控えおろー
コメント1件

512
デフォルトの名無しさん[sage]   投稿日:2015/09/19 19:27:17  ID:+Kt9F6BW.net
BrowserMatch/ReWriteRuleとかwebサーバ側で判断と分岐させるか、
php側で$_SERVER['HTTP_USER_AGENT']見て読ませるcss/js変えたりheader()でLocation吐いて移動させたりしろ
はい終わり
コメント1件

513
デフォルトの名無しさん[sage]   投稿日:2015/09/19 19:52:46  ID:H93lCnag.net(4)
>511
アホ

514
デフォルトの名無しさん[sage]   投稿日:2015/09/19 21:34:22  ID:ISETQD0O.net(5)
>512
かたじけない。

515
デフォルトの名無しさん[sage]   投稿日:2015/09/20 02:47:51  ID:X3nquW9o.net
PHPはもう捨てようぜ・・・

516
デフォルトの名無しさん[sage]   投稿日:2015/09/20 03:03:07  ID:RNt2QHn9.net(2)
ua詐欺ってどこで見分けられんだろjavascriptでそのブラウザ特有の命令投げればわかんのかな
コメント1件

517
デフォルトの名無しさん[sage]   投稿日:2015/09/20 07:47:40  ID:dFW+uZ12.net
そっちのほうが確実
js切ってるやつ考慮してとかいってphpやhtaccessで分けるのはクレイジー

518
デフォルトの名無しさん[sage]   投稿日:2015/09/20 09:34:13  ID:1JwuQWhK.net
>516
tteb?

519
デフォルトの名無しさん[sage]   投稿日:2015/09/20 11:19:00  ID:Ptvv9YCq.net(2)
UA詐称まで視野に入れてUA判定しなきゃならない状況がそもそもクレイジー
といってもこれまで存在し続けたブラウザの独自仕様がなくなることは無いんだろうな

520
デフォルトの名無しさん[sage]   投稿日:2015/09/20 11:20:28  ID:GyUJ1dZ9.net(2)
Operaに当たり前のようにUA詐称機能が付いてた頃が懐かしい。

521
デフォルトの名無しさん[sage]   投稿日:2015/09/20 13:39:59  ID:VoXgoN5g.net(2)
UA詐称されて困るのってどういう時?
コメント1件

522
デフォルトの名無しさん[sage]   投稿日:2015/09/20 13:45:51  ID:f3Nx3+I+.net
>521
おれもそれが知りたい

523
デフォルトの名無しさん[sage]   投稿日:2015/09/20 17:02:18  ID:BPPcfRt3.net
直接困るのは、そのブラウザをはじきたいと思っている場合じゃないか?
背景は宗教的な理由かもしれない。

524
デフォルトの名無しさん[sage]   投稿日:2015/09/20 18:50:13  ID:4L7qLZxU.net
憎きリンゴ教とかな

525
デフォルトの名無しさん[sage]   投稿日:2015/09/20 19:10:09  ID:Ptvv9YCq.net(2)
焼きリンゴ教にみえた

もはやphp関係ないが、正確なブラウザ名知りたいってときは、あとはアクセス統計したいとか
ブラウザ依存の機能や独自仕様対策を使いまくってるとか、そんなところかね
それか、ガラケースマホなど機種に応じた処理をしたい一方で
これらを詐称するブラウザを広告のためとかの理由ではじきたいとか

526
デフォルトの名無しさん[sage]   投稿日:2015/09/20 19:42:55  ID:GyUJ1dZ9.net(2)
クライアントを特定のものに強制するくらいなら、専用アプリにwebviewでも乗っけた方がマシだな。

527
デフォルトの名無しさん[sage]   投稿日:2015/09/20 20:20:12  ID:daw+dtLw.net
はじきたいからやるんじゃない。このアホンダラ

UAでNPAPIかどうか、WebRTC使えるかどうか、デスクトップかスマホかタブレットかの判定してレイアウトとか挙動を各アプリインターフェイスガイドラインに沿って作り込むんだよ。ドサンピン
言わせんな恥ずかしい。ノータリン

UA詐称っつーのはサーバーサイドの開発者が使うんだよ。どシロウトが

知らんけど
コメント1件

528
デフォルトの名無しさん[sage]   投稿日:2015/09/20 20:48:13  ID:VoXgoN5g.net(2)
>527
詐称した人が正しく動かないことまでわざわざフォローする必要ないよねって話。
コメント1件

529
デフォルトの名無しさん[sage]   投稿日:2015/09/20 23:52:17  ID:RNt2QHn9.net(2)
safari使ってる人面倒い人が多いから対応したくないなりー

530
デフォルトの名無しさん[]   投稿日:2015/09/21 06:56:58  ID:mABftDP3.net
>528
自己責任だよな

531
デフォルトの名無しさん[]   投稿日:2015/09/21 10:53:04  ID:/htKyytw.net(3)
ど素人の質問です

lampの環境を自分で作ってみたい。
xpが入ってたPCにリナックスをいれて鯖を立てると思う。
すでに簡易のサーバーを立ててHTMLのHPぐらいは表示できたがLAMPではまだです。

CentOSを落としていろいろやると思いますがかなり苦戦するんでしょうか?
何時間ぐらい必要でしょうか?

また一度サーバーを立てると、PHPやJavaのサーブレットで掲示板みたいなのをつくり
そのファイルをサーバーに置くだけで設置になるため
ただの置き場所みたいな状態になるんですか?
簡易サーバーの時はそんな感じでした。
コメント1件

532
デフォルトの名無しさん[sage]   投稿日:2015/09/21 14:07:32  ID:FK25Dm7Z.net

533
デフォルトの名無しさん[sage]   投稿日:2015/09/21 14:16:28  ID:A7EzE/Oa.net
linux板いけっちゅう話だな

534
デフォルトの名無しさん[sage]   投稿日:2015/09/21 15:03:36  ID:/htKyytw.net(3)
>532
サンプはつかったことあります。LAMPです

535
デフォルトの名無しさん[sage]   投稿日:2015/09/21 15:10:19  ID:iVgIunoX.net
ぶっちゃけかなりの割合でmysqlというかDBいらんよな

536
デフォルトの名無しさん[sage]   投稿日:2015/09/21 15:22:15  ID:eqstY8VZ.net
何がどうど素人の質問なのか分からないんだけど、人によるとしか言いようがないよそれ。

初めてlinuxインストールするってのならだいぶ時間かかるだろうけど、
とはいってもどこまで理解しながら作業を進めるかでやはり時間は大きく変わる。

537
デフォルトの名無しさん[sage]   投稿日:2015/09/21 15:24:15  ID:/htKyytw.net(3)
LinuxのCDでは起動したことありますが
自分で特定のlinuxをやいてそこから起動となるでしょうから多分そこで詰まりそう

538
デフォルトの名無しさん[]   投稿日:2015/09/21 15:44:15  ID:VEzrvsWB.net
社名 労基 
でググると過去の2chスレが出てくる会社
and(orではない)
転職会議で2.5点の会社は超絶要注意
and
IT系です

転職する際は注意

539
デフォルトの名無しさん[sage]   投稿日:2015/09/22 02:03:17  ID:O8icbsBo.net(5)
アンケートのフォーム作ってポストした後にブラウザの更新押すとフォームの再投稿になるのを防ぎたいんだけど、POST処理の後にheader('Location: http://〜');を書いてもリダイレクトされないんだけどどうしてなの?

因みにリダイレクトするとアクセスはGETになるんだよね?

540
デフォルトの名無しさん[sage]   投稿日:2015/09/22 03:06:46  ID:Lx7QSeWZ.net(2)
コードも書かずにどうしてなの?もクソもねえだろ
header()の手前でなんか出力してねえかerror_reporting(E_ALL);してみろ
コメント1件

541
デフォルトの名無しさん[sage]   投稿日:2015/09/22 04:09:53  ID:7aj0zY2+.net(4)
クライアントが何を受け取ったか確認するのが手っ取り早いのに

542
デフォルトの名無しさん[sage]   投稿日:2015/09/22 04:23:47  ID:sy60767L.net
金だ。金を受け取ったんだ。

543
デフォルトの名無しさん[sage]   投稿日:2015/09/22 14:00:52  ID:h5oh6xqR.net
ajaxでやればいいんじゃね

544
534[]   投稿日:2015/09/22 15:40:53  ID:O8icbsBo.net(5)
>540
すまん…;そっか、header関数は直前に何も出力しちゃいけないのかー…
どこで使えばいいかわかんねぇ…

【~/anke.php】

<form method="post" action=“anke.php">
<textarea name="kitou”></textarea>
<input type="submit" name=“toukou” value="送信"></form>

<?php
//送信ボタンを押した後に別のtxtファイルデータに回答を格納
$lines = file(‘anke.txt');
if ($_POST[‘toukou’]) {
$kaitou = htmlspecialchars($_POST[‘kaitou’]);
$data = “kaitou¥n”;
array_unshift($lines, $data);
}
//結果を表示
echo “<p>回答:{$items[0]}</p>”;

//データ格納用ファイルを開いて投稿を書き込む
$kakunou = fopen(‘anke.txt', 'w');
foreach($lines as $line) fputs($fp, $line);
fclose($kakunou);
?>

こんな感じなんだけど、どのタイミングでリダイレクトさせればいいんでしょうか…
コメント1件

545
デフォルトの名無しさん[sage]   投稿日:2015/09/22 15:58:33  ID:WwQzZTLz.net(2)
>544
<form method=・・・

POST受取時に、この部分がすでに書き込まれる
それがまずい

546
540[]   投稿日:2015/09/22 16:21:22  ID:O8icbsBo.net(5)
色々試したのですが、htmlタグの一番上に

<?php
//POSTでアクセスしてきた場合はページをリダイレクトしてGETに
if ($_SERVER['REQUEST_METHOD'] == "POST"){
header('location: http://anke.php');
}
?>

と書いたらなんかうまくいきました。
header関数って本当に前後に何も書いちゃいけないんだね;
微妙な空白が入っててもダメだったのか…

547
デフォルトの名無しさん[sage]   投稿日:2015/09/22 17:56:31  ID:7aj0zY2+.net(4)
PHPサイドから見ればこういう気持ちだよ。

指示に従って本文を途中まで(もちろん空白であっても)出力しているのに、
いまさらヘッダ送れとか何言ってんだ?無理無理。どう考えても手遅れ。

548
デフォルトの名無しさん[sage]   投稿日:2015/09/22 19:14:14  ID:Lx7QSeWZ.net(2)
いまさらじゃねーよなんでヘッダ先に送ってんだよflushしてねーんだからちょっと溜めといてくれよ
と思う開発者もいるかもしれない

549
デフォルトの名無しさん[sage]   投稿日:2015/09/22 19:19:10  ID:7aj0zY2+.net(4)
そんな人にも最適。出力バッファリング機構が用意されております。
って、知っててかいてるよね。

550
540[]   投稿日:2015/09/22 19:27:53  ID:O8icbsBo.net(5)
そもそもヘッダがなんなのかすらさっきまでわかってなかった;
コメント1件

551
デフォルトの名無しさん[sage]   投稿日:2015/09/22 19:44:29  ID:yEiScBEC.net
つか, そもそも論だけども, Viewは分離しよう
コメント1件

552
デフォルトの名無しさん[sage]   投稿日:2015/09/22 20:08:22  ID:7aj0zY2+.net(4)
>550
分かるようになったってすごいことじゃん。おめでとう。

>551
PHPの根底思想がhtmlの一部を動的にできたらなぁ。
そうだ、コードを埋め込めるようにしよう(ピコーン)なわけで、
まずそこから始めるというのを無闇に否定できないと思う。

Cでオブジェクト指向の記述ができないわけじゃないけど、
まずは手続き型で記述することを勉強しようねというのと似てるかも。

553
デフォルトの名無しさん[sage]   投稿日:2015/09/22 23:13:57  ID:O8icbsBo.net(5)
無料ブログサービスしか使ってなかったからサーバーの仕組みとかわかんなかったんだよな

掲示板とかも作れるみたいだけど、データベース使わずにテキストファイルに投稿を保存するやり方でもいいの?
コメント4件

554
デフォルトの名無しさん[sage]   投稿日:2015/09/22 23:24:45  ID:A/BppHMq.net
>553
独自フォーマットのテキストファイルを管理する方がめんどくさいと思うけど。
排他ロックとか修正とか独自フォーマットに沿った読み書きとか、全部自分で面倒みないといけないよ?
コメント1件

555
デフォルトの名無しさん[sage]   投稿日:2015/09/22 23:33:11  ID:WwQzZTLz.net(2)
>553
自分のPCに仮想環境を作って、そこでサーバー立ててみると良いよ
コメント1件

556
デフォルトの名無しさん[sage]   投稿日:2015/09/23 00:02:05  ID:r+N6ISIe.net(3)
>553
×サーバの仕組み
○HTTPの仕組み

557
デフォルトの名無しさん[sage]   投稿日:2015/09/23 00:09:41  ID:5Jki+Gg9.net(4)
>555
一応さくらのサーバー借りてるからこれから色々弄ってみる!

558
デフォルトの名無しさん[sage]   投稿日:2015/09/23 00:12:41  ID:LtBCHtUp.net
>553
軽量化のためあえてそういう選択をするのは大いにアリだと思う。
ただ泥臭い部分まで面倒見ないといけなくなるから、そこら辺を考えた上での選択だね。
アンケートみたいにただただ追記していき後で集計、みたいなのなら独自データファイルでも十分簡単だと思う。
掲示板だと現在何件書かれているか、リクエストされたページに表示すべきレコードをデータファイルからどう抽出するか etc. 割と面倒くさくなりそうだし、軽量化を狙ってトータルで重くなるなんて何やってんだかわからないことにもなるかも。
コメント1件

559
デフォルトの名無しさん[sage]   投稿日:2015/09/23 00:14:19  ID:6kWxNQrp.net(3)
プロトコルのお約束、DNSの仕組み、そういうのからは結局逃げられん

>554
DBはDBでめんどくさいぞ
RDBMSの仕組みや応答、SQL、型、リレーション、テーブル設計すんのだけでも膨大な知識が要る
テーブルごとの連携を必要としないならDBなんていらん。1回勉強しちまえば楽なのはDBもテキストも変わらん

560
デフォルトの名無しさん[sage]   投稿日:2015/09/23 00:15:28  ID:moqzHvv1.net
一からサーバーを立てて、
アパッチを設定し、PHPを設定し、DBを設定し、
動かしてみる。
エラーが出たらログを見てその原因を特定し、直す。
この繰り返しで大体マスターできる。

レンタルサーバーではなかなかできないよ
許されることが限られるからね。

561
540[]   投稿日:2015/09/23 00:26:54  ID:5Jki+Gg9.net(4)
>558
アンケートぐらいならなんとかなりそうってことか…
ファイルに書き込む時に改行(水平タブ?)みたいなのを入れたりして見やすくしてるんだけど多くなってくると面倒臭そうだな

サーバーはドットインストール見てPHP用にローカルサーバー建てたことならあるけどサイバーダックが使い物にならなくなったから放置してるわ…

562
デフォルトの名無しさん[sage]   投稿日:2015/09/23 01:33:07  ID:98opwncD.net
自分でテキストファイルを使うのは、排他制御などが難しい。
DBなら皆が同じように使っているから、情報を集めるのも楽

結局、WordPress
コメント1件

563
デフォルトの名無しさん[sage]   投稿日:2015/09/23 01:38:44  ID:sohVsCxT.net
>562
なんでそこで結論が飛躍するんだよw

564
デフォルトの名無しさん[sage]   投稿日:2015/09/23 03:05:32  ID:5Jki+Gg9.net(4)
ワードプレスもインストールして使ってみる

565
デフォルトの名無しさん[sage]   投稿日:2015/09/23 03:28:24  ID:r+N6ISIe.net(3)
ありものを使うというのはとてもいい選択の一つだよ。
自分でえっちらおっちら作って、そのときに得た知識をあとで使わないって人もよくいるし。

566
デフォルトの名無しさん[sage]   投稿日:2015/09/23 04:53:51  ID:8RODq+xl.net
くだらねぇ

567
デフォルトの名無しさん[sage]   投稿日:2015/09/23 09:21:42  ID:VaH5eN5d.net
wpを高速で動かすにはphpが速く動く高性能鯖にするのが一番か?

568
デフォルトの名無しさん[sage]   投稿日:2015/09/23 11:33:01  ID:DXyy1a0Y.net
phperなんだからwordpressをコードレベルでカスタマイズしていらないコードをごっそり削るのが一番いいんじゃね
勉強にもなるし楽しいぜ
セキュリティ修正があったら該当コード組み込むぐらいで機能的なアップデートはスルー

569
デフォルトの名無しさん[sage]   投稿日:2015/09/23 13:05:16  ID:6385dCY6.net
手っ取り早く効くのはキャッシュだろう

570
540[]   投稿日:2015/09/23 15:35:35  ID:5Jki+Gg9.net(4)
アンケート作ってるんだけど、一回解答したユーザーの二重投稿を防ぐには

・利用者のIPアドレスを検出して変数に格納
・投稿データを保存したテキストファイルを開いて上から下までループ文で検出
・一致するIPがあった場合、エラー文を提示して投稿拒否

ってやり方でいいの?
コメント1件

571
デフォルトの名無しさん[]   投稿日:2015/09/23 15:45:58  ID:fiqO6gPv.net
IPじゃ駄目だろう。変えられたら分からなくなるぞ。
それでも良いという緩いチェックなら構わないけど。

572
デフォルトの名無しさん[sage]   投稿日:2015/09/23 15:52:39  ID:6kWxNQrp.net(3)
そんな簡単に中の人の同一性チェックができるなら苦労しねーっつの

573
デフォルトの名無しさん[]   投稿日:2015/09/23 16:24:58  ID:KUv2kphT.net
Cookie 渡すという手もあるけど
複数PC使われたり、削除されたら駄目だしな。

アンケートサイトによくあるのは、
メールアカウント+パスワードによる認証だけど、
これだって複数メールアカウント取れるわけだし。
ポイント制だと、最後は特定個人に紐付けられるから、
架空人物だと色々問題が起きる。
その辺でごまかしを抑制するという程度か。

574
デフォルトの名無しさん[sage]   投稿日:2015/09/23 16:37:43  ID:1jqGrEyR.net
異常な連続ホストを弾けば多少はマシになるかと
後は公開串禁止とか

575
デフォルトの名無しさん[sage]   投稿日:2015/09/23 17:08:39  ID:N4Wzlgzs.net
oauthでfacebookとかのアカウントでログインさせるというのも手かもな。
ぶっちゃけcookieで管理する程度で十分だろうけど。

576
デフォルトの名無しさん[]   投稿日:2015/09/23 17:24:23  ID:ByrCNK4a.net
ログインなしで個人認証するのをいまから作成する

577
デフォルトの名無しさん[sage]   投稿日:2015/09/23 17:50:33  ID:RaRZfipQ.net
うまいやり方あれば教えてください

renderにとある処理(セッションを削除する処理)を入れてるんですが、
同ページ内で2回renderを呼び出す時、1度目の呼び出しでセッションが消えてしまいます(当たり前なんですが)が2回目の呼び出し時にセッションを削除したいです

↑補足ですが何故こんな事になったかというと、
同じようなことをしてる処理を共通化する為元々1つだったControllerを分けたら、そのページのrenderと共通化した部分のrenderが2回呼ばれてしまいました
コメント1件

578
デフォルトの名無しさん[sage]   投稿日:2015/09/23 18:06:30  ID:r+N6ISIe.net(3)
セッションを削除する処理がレンダリングと関係あるとは思えない

579
デフォルトの名無しさん[sage]   投稿日:2015/09/23 18:20:43  ID:6kWxNQrp.net(3)
コードも環境もなしに問うなと 標準関数の話しかすんなとは言わんが
renderにoptionalな引数入れてそれ確認させれば?うまいやり方かどうかは知らんけど

580
デフォルトの名無しさん[sage]   投稿日:2015/09/23 19:20:27  ID:KGKC2S3B.net
クッキーとIPともう一つなんか足せば大丈夫だろーって話題変わってた

581
デフォルトの名無しさん[sage]   投稿日:2015/09/24 02:21:46  ID:KIwTvfAf.net
>570
IPアドレスでは、同じネットカフェの、異なるPCでも、
同一人物に判定されてしまうので、友達同士で投稿できない

2chでも、同じネットカフェなら、どのPCからアクセスしても、
IDが同じになってしまうのよ
コメント1件

582
デフォルトの名無しさん[sage]   投稿日:2015/09/24 02:38:55  ID:IK2Xge5y.net
>581
マジかよ…
スタバとかのwifeでもそうなるってことか

ってか2ちゃんでたまに何もしてないのに規制かかって書き込みできなくなるのも同じiPの奴が規制されたのに巻き込まれてるってことなの?
コメント1件

583
デフォルトの名無しさん[sage]   投稿日:2015/09/24 02:57:43  ID:biV9B2V5.net
>582
お前の奥さんのことなんて知らんよ
コメント1件

584
デフォルトの名無しさん[sage]   投稿日:2015/09/24 03:20:31  ID:nbO+sd/Q.net
>583
違うぞ。スタバにいる人妻のことだぞ。

585
デフォルトの名無しさん[sage]   投稿日:2015/09/24 07:51:16  ID:n2zeSQ7H.net
スタバの現地妻か、裏山

586
デフォルトの名無しさん[sage]   投稿日:2015/09/25 19:41:28  ID:trjxrUIW.net(2)
>577
普通に片方のセッション削除する処理消せばいいだけじゃないの

587
デフォルトの名無しさん[]   投稿日:2015/09/25 21:39:08  ID:f2COha4U.net(4)
file get contentsでとあるサイトをスクレイピングしてるんだけど、1~3回ほどページ更新すると内容が表示されなくなる
これってそのサイトがスクレイピング対策をしてるってこと?
コメント1件

588
デフォルトの名無しさん[sage]   投稿日:2015/09/25 21:51:43  ID:+5sW3GLu.net
>587
そのサイトに聞けよ!
コメント1件

589
デフォルトの名無しさん[]   投稿日:2015/09/25 22:09:07  ID:f2COha4U.net(4)
>588
いや、その前にphpの問題なのかなと思って。
それにブロックするなら最初からスクレイピングさせないもんなんじゃないの?
暫く時間たった後にまた更新すると今度はちゃんと取得できてるんだよね…
なんなの?これ
コメント1件

590
デフォルトの名無しさん[sage]   投稿日:2015/09/25 22:14:25  ID:S9QW43Ts.net
>589
どうやってスクレイピング判定するの?
コメント1件

591
デフォルトの名無しさん[sage]   投稿日:2015/09/25 22:19:10  ID:6j3mg6Uy.net
負荷対策してるだけなんじゃない

592
デフォルトの名無しさん[]   投稿日:2015/09/25 22:26:49  ID:f2COha4U.net(4)
>590
それもわからんorz;
ってかブロックできるもんなのかすらわからん…

<ソース>
$html = file_get_contents('http://');
$html = str_ireplace($kesu, "", $html);
$doc = new DOMDocument();
$doc->loadHTML($html);
$hoge = $doc->getElementById(‘hoge’);
echo $doc->saveHTML($hoge);


一回目:普通に表示→更新ボタンおす
二回目:表示
三回目:非表示(スクレイピングしてるとこだけ)

〜3時間ほど経過〜

四回目:表示


ってなる。どうしてなんや
コメント1件

593
デフォルトの名無しさん[sage]   投稿日:2015/09/25 22:33:11  ID:suy8B6gV.net
ステータスが何を返しているか見ている?
初回とその後で変わっていない?
コメント1件

594
デフォルトの名無しさん[sage]   投稿日:2015/09/25 23:13:50  ID:trjxrUIW.net(2)
>592
スクレイピングと同じようにブラウザからアクセスするとちゃんと表示される?
コメント1件

595
デフォルトの名無しさん[]   投稿日:2015/09/25 23:17:54  ID:f2COha4U.net(4)
>593
変わってないと思う…

>594
ブラウザからのアクセスだといつも通りちゃんと表示される。
コメント2件

596
デフォルトの名無しさん[sage]   投稿日:2015/09/26 00:20:22  ID:F1OYRTCW.net
>595
HTTPレスポンスコード見てみ

597
デフォルトの名無しさん[]   投稿日:2015/09/26 00:25:44  ID:xWCYZ6+4.net
>595
statusに304が返ってきてないか?

598
デフォルトの名無しさん[sage]   投稿日:2015/09/26 00:27:45  ID:VnXY6/gA.net
他のサイトでもやってみるとか、
自分でもっと単純なサイトを作って、試してみるとか、

ソースコードのあちこちに、Print文をばらまいて、
デバッグしてみるとか

何か、saveHTML()というのが、やばそうな気がする。
それを実行すると、バグを引き起こすとか、
ロックされたりするとか

599
デフォルトの名無しさん[sage]   投稿日:2015/09/26 01:09:23  ID:7dfhRWtS.net
クローラー判定は別に難しくないしそういう制限をサーバでするのは可能
ブラウザと同じヘッダ送出して同じ手順を踏んで公開サーバー経由でなければいけるだろう

600
デフォルトの名無しさん[]   投稿日:2015/09/26 01:27:35  ID:UIDpKSqR.net
エラー検出してみたら、「このIPは制限されています」って返ってきた\(^o^)/
やっぱり対策してるんだね
ぶっちゃけ2ちゃんの過去ログサイトなんだけどさ…
そりゃ誰もがスクレイピングしようとするもんなぁ
コメント1件

601
デフォルトの名無しさん[sage]   投稿日:2015/09/26 02:34:06  ID:gDkHrrbc.net
>600
エラー検出って難ですか?

602
デフォルトの名無しさん[sage]   投稿日:2015/09/26 09:55:12  ID:piyEqEap.net
スクレイピングして何に使うのかは知らないけど 一時期やらおんだかの捏造記事で訴えるとか訴えねーとかやってた気がしたのどうなったんだろ

603
デフォルトの名無しさん[sage]   投稿日:2015/09/26 21:13:16  ID:v7fSGmLa.net
クライアント側のJSを公開したくないので、サーバーのPHPなどでそのJSを実行したいんですが、
可能ですか?まったく同じ動作結果になるようにするにはどういうやり方をするんでしょうか?
ググルキーワードを教えてください。
コメント3件

604
デフォルトの名無しさん[sage]   投稿日:2015/09/26 21:22:54  ID:LSY/VAID.net
>603
JSによる
とりあえずどんなJSなのか見せて
コメント1件

605
デフォルトの名無しさん[sage]   投稿日:2015/09/26 21:46:46  ID:ey0zQ6i9.net
>603
Ajax

606
デフォルトの名無しさん[sage]   投稿日:2015/09/27 01:48:51  ID:IWmq2jg0.net
>603
ブラウザの機能を叩くクライアントサイドスクリプトと完全互換にはなり得ない

つかクライアントサイドスクリプトを公開したくないってどういう状況よ?

607
デフォルトの名無しさん[sage]   投稿日:2015/09/27 02:44:15  ID:9FNu5D9+.net
お前のパソコンで処理させろ!
でもなにしてるかは聞くな!

608
デフォルトの名無しさん[]   投稿日:2015/09/27 04:12:00  ID:gZb7XvC3.net
echo`x=hoge;echo $x`;
ってしたいんだけど、
PHP側で勝手に変数展開されて
bashに渡る文字列が"x=hoge;echo "になっちゃう。
変数展開してほしくないときのシングルクオートみたいなのはないの?
コメント3件

609
デフォルトの名無しさん[sage]   投稿日:2015/09/27 05:27:35  ID:QHSPW0OV.net
>604
そんな特殊な処理ではないので、
どりあえず、どういう手法があるか
ググルためのキーワードを教えてください。

610
デフォルトの名無しさん[]   投稿日:2015/09/27 08:10:30  ID:Ek3Ll/Tz.net(2)
「この記事を見た人はこんな記事も見てます。」
ってよくあるけど、あれってどういうアルゴリズムというかロジックで実現してるんでしょうか?
やはりDBに何らかの情報を記録する必要がありますよね?ではどういうテーブルにどういう項目を?そしてどういう計算を?
どのページからどのページに行ったかという遷移ですかね?
うーーーーん難しい。誰かご教授いただけますと嬉しいです。

611
デフォルトの名無しさん[sage]   投稿日:2015/09/27 08:37:47  ID:Q5TaQhUz.net(2)
同じ分類のPV多い記事並べただけちゃいますのん?
コメント2件

612
デフォルトの名無しさん[sage]   投稿日:2015/09/27 08:45:57  ID:hy9T85ay.net
この記事を見た人は→この記事を見た人"達"とは言っていない
コメント1件

613
デフォルトの名無しさん[sage]   投稿日:2015/09/27 11:28:08  ID:KXvZe9oE.net
レコメンド アルゴリズムで検索
コメント1件

614
デフォルトの名無しさん[sage]   投稿日:2015/09/27 12:09:27  ID:w5aIV8MQ.net
>608
echo`x=hoge;echo $x`;
これはこうじゃないの?
echo`$x="hoge";echo $x`;

あと、シングルクオート「'」でなくて、
バッククオート(実行コマンド)「`」でいいのか?
bashの文法も確認した方がいい。
コメント1件

615
デフォルトの名無しさん[sage]   投稿日:2015/09/27 14:52:00  ID:Ek3Ll/Tz.net(2)
>611
え?そんな簡単!?

>613
名称のご教示ありがとうございます。
検索してみるとやっとまともな情報にありつけました。名称知ることは大事ですね。
勉強します。

616
デフォルトの名無しさん[sage]   投稿日:2015/09/27 16:16:41  ID:Q5TaQhUz.net(2)
セッションか何かでアクションおっかけてデータにしてそれをマイニングするとか骨が折れちゃうぜ。

617
デフォルトの名無しさん[sage]   投稿日:2015/09/27 23:26:33  ID:UYzM99J3.net
簡単なものなら

1 ページA → ページB
2 ページA → ページC
3 ページA → ページC

こうやってデータをため込んで、 この3データだったら
ページAを見た人はページCも見てますって表示するだけでしょ
コメント1件

618
デフォルトの名無しさん[sage]   投稿日:2015/09/27 23:34:00  ID:VOKvc2Zg.net
>611がアイテムベースで>612がユーザーベースだろ

619
デフォルトの名無しさん[sage]   投稿日:2015/09/27 23:34:43  ID:hvy9lckk.net
>617
ページID、IPアドレス、タイムスタンプを履歴として取っておき、
特定ページにアクセスがあったときに、
そのページにアクセスがあり、現在のアクセスと異なるIPアドレス群を取得し、
そのIPアドレス群がアクセスしたページIDを
アクセス数順に必要な数だけ表示すればいいんじゃない?

620
デフォルトの名無しさん[]   投稿日:2015/09/28 00:54:18  ID:s97i3FEf.net
>614
bashは変数代入時に$は不要、参照は必要
変数値を""で囲む必要もない(囲んでもいい)
だからコマンド自体は間違ってない

> x=hoge
> echo $x

621
デフォルトの名無しさん[sage]   投稿日:2015/09/28 02:23:19  ID:mTZVEwhb.net
>608
" " で囲めば、変数展開される
' ' で囲めば、変数展開されない

それと、ヒアドキュメント

622
デフォルトの名無しさん[sage]   投稿日:2015/09/28 13:25:40  ID:ewoIlnRc.net(2)
>608
shell_execをつかう。

623
デフォルトの名無しさん[sage]   投稿日:2015/09/28 14:35:52  ID:yBwbnPi+.net
php初心者でうまく説明出来ないんだけど・・・
***.phpのURLリクエストが来て、その処理をするときに 外部のDBを使って確認したい時とかありますよね!
そういう情報ってアドオンとかにあるライブヘッダーとかで覗かれたりしないんですか?
(´・ω・`)作り方による場合、どういった作り方をすればいいんでしょうか
コメント2件

624
デフォルトの名無しさん[]   投稿日:2015/09/28 14:52:20  ID:ruFObRnM.net
phpソースがおかれたDirのアクセス権限を設定すればなんとか

625
デフォルトの名無しさん[sage]   投稿日:2015/09/28 16:17:02  ID:3Q9ZQIvE.net
>623
アドオンが何のアドオンでライブヘッダーとは如何なるものか示さなければ何言ってるのかわからん

626
デフォルトの名無しさん[sage]   投稿日:2015/09/28 17:21:04  ID:ewoIlnRc.net(2)
>623
phpと外部のDBとの通信と、クライアントとphpの通信は互いに疎。

627
デフォルトの名無しさん[sage]   投稿日:2015/09/29 16:56:38  ID:ifZ4QSeP.net(3)
上の質問が終わってからで構わない

phpのヒアドキュメントでhtmlを書いて、それを他のサイトでJSみたいに呼び出す事って出来る?
他のサイトは無料ブログサービスだからサーバーサイド弄れない前提で
コメント1件

628
デフォルトの名無しさん[sage]   投稿日:2015/09/29 17:29:33  ID:ux+ZVrLF.net(5)
phpでjavascriptのコード出力すればいいだけ
そんでscript srcにそのphp指定すりゃいい
コメント1件

629
デフォルトの名無しさん[]   投稿日:2015/09/29 17:36:47  ID:ifZ4QSeP.net(3)
>628
それだとヒアドキュメントを使う旨味がなくない?
JSだと文字列リテラルとかいうので’’の間を改行したりできないじゃん
ヒアドキュメントならHTMLをそのまんま貼り付けて出力できるじゃん?
コメント1件

630
デフォルトの名無しさん[sage]   投稿日:2015/09/29 17:53:47  ID:DjqaY7BG.net(3)
>627
> phpのヒアドキュメントでhtmlを書いて、
ヒアドキュメントである必要性はないよね。
iframeでも使えば?

631
デフォルトの名無しさん[sage]   投稿日:2015/09/29 18:06:03  ID:ux+ZVrLF.net(5)
>629
だいたいそんな仕組みがあるわけないじゃない
JSで呼びたいならJSのスタイルにしなきゃいけないわけで
そもそも改行とかhtmlはbrで判断してんだからどうでもいいでしょ

632
デフォルトの名無しさん[sage]   投稿日:2015/09/29 18:14:09  ID:ux+ZVrLF.net(5)
ああ、+をつけたくないってことか

633
デフォルトの名無しさん[sage]   投稿日:2015/09/29 18:27:20  ID:ux+ZVrLF.net(5)
$html = <<<EOF
<p>hello world</p>
<p>hoge
hoge<br>hoge</p>
EOF;

$html = preg_replace('/'.PHP_EOL.'/', '', $html);
echo "document.write('{$html}')";

これなら少しは可読性あがるんでない
コメント2件

634
デフォルトの名無しさん[sage]   投稿日:2015/09/29 19:13:43  ID:DjqaY7BG.net(3)
>633
その用途でPHP_EOL使う人って何をどうこじらせてるのか興味がある。
コメント1件

635
デフォルトの名無しさん[sage]   投稿日:2015/09/29 19:24:15  ID:rgPn5SeK.net(2)
むしろPHP_EOLはどういうとこで使うべき定数なんだ?

636
デフォルトの名無しさん[sage]   投稿日:2015/09/29 19:58:07  ID:ux+ZVrLF.net(5)
その用途ってなんだよw
改行コードさしてんだから問題ないでしょ

637
デフォルトの名無しさん[sage]   投稿日:2015/09/29 20:08:13  ID:twisClEL.net(2)
>634
何が正解?
コメント1件

638
デフォルトの名無しさん[sage]   投稿日:2015/09/29 20:12:38  ID:twisClEL.net(2)
\r\n|\r|\nじゃなくてたんに\r|\nでいいよね?
\r\nも指定しないとマズイケースってある?
コメント1件

639
デフォルトの名無しさん[sage]   投稿日:2015/09/29 20:29:36  ID:DjqaY7BG.net(3)
>638
今回の場合、単に削るのが目的だから\r\nはいらないね。
あとpreg_replaceなんて超絶高機能なものを使う必要もないのでstr_replaceでやる。

640
デフォルトの名無しさん[]   投稿日:2015/09/29 21:38:10  ID:ifZ4QSeP.net(3)
>633
うお、それは思いつかなかった…あたまいいな
記事にウィジェットっていうか、最新記事とかおすすめ記事とか広告とか全部まとめて1セットで表示したいときってあるじゃん?
それを一々貼り付けるんじゃなくて外部化できたらメンテナンス上楽かなと思って。

JSでやってもいいんだけど、可読性が悪いし変更もし辛いんだよね

641
デフォルトの名無しさん[sage]   投稿日:2015/09/29 21:38:46  ID:1MZ0DxPh.net(2)
str_replace何回までならpreg_replaceより早いかを試すベンチマークを書いてくれ!

642
デフォルトの名無しさん[sage]   投稿日:2015/09/29 21:55:16  ID:rgPn5SeK.net(2)
マルチバイトを含む文字列の検索・タグ付け処理で、検索文字列1500セットを、
トライ木構造な1個のパターンでpreg_replace1回で済ます方法、
strposとstr_replaceで置換して溜めていって最後に引数に配列入れたstr_replaceで一括置換する方法、

この2パターンでどっちが早いか試したらphp5.3とphp5.6で結果が逆転した経験がある
5.6だとstrpos/str_replaceのほうが早かった

643
デフォルトの名無しさん[sage]   投稿日:2015/09/29 22:15:08  ID:1MZ0DxPh.net(2)
1500とか大勝利ですやん

644
デフォルトの名無しさん[sage]   投稿日:2015/09/29 22:57:48  ID:ssY7AIaz.net
>637
個人的には /\x0D\x0A|[\x0A\x0D]/ とASCIIコード指定で書くのが趣味

645
デフォルトの名無しさん[]   投稿日:2015/09/30 01:29:57  ID:MFXzG0RB.net(3)
PHPで自分専用の日記帳&思いつきメモ&金銭管理&タスク管理ツールつくって自己管理するの楽しすぎワロタ

646
デフォルトの名無しさん[sage]   投稿日:2015/09/30 02:41:45  ID:EyIEkC/I.net(5)
単純な文字列の複数置き換えでも、
str_replace("c", "", str_replace("b", "", str_replace("a", "", $str)));
とか見づらいからpreg_replace使ってしまう。
ラッパークラス書けばいいけどなんかあほくさいし、標準実装してほしいわ。
$s = new String($str);
$s->replace("a","")->replace("b","")->replace("c","");
コメント1件

647
デフォルトの名無しさん[]   投稿日:2015/09/30 02:45:08  ID:Eb56OawZ.net(5)
str_replace( ["a", "b", "c",], "", $str); か
str_replace( ["a", "b", "c",], ["", "", "",], $str); 
でできるはずだし
こっちのほうが速い

648
デフォルトの名無しさん[sage]   投稿日:2015/09/30 02:58:18  ID:5VICgqtC.net(5)
>646
だからあほだといわれるんだよ。
マニュアルは読めよ。何度でも読めよ。
コメント1件

649
デフォルトの名無しさん[sage]   投稿日:2015/09/30 03:03:20  ID:EyIEkC/I.net(5)
arrayでしょ?
知ってるけど、それはもっと嫌。

650
デフォルトの名無しさん[sage]   投稿日:2015/09/30 03:06:27  ID:5VICgqtC.net(5)
1行目で笑わざるを得ないけれど、何がいやなの?
コメント2件

651
デフォルトの名無しさん[]   投稿日:2015/09/30 03:09:06  ID:Eb56OawZ.net(5)
好き嫌いは別にしてこれらは内部動作的に無駄が多い。
PHP文字列と内部のC言語文字列の変換を繰り返す事と正規表現を使う事で。
ここへ処理が集中するケースだと時間とCPUリソースを使う。



str_replace("c", "", str_replace("b", "", str_replace("a", "", $str)));
$s->replace("a","")->replace("b","")->replace("c","");

652
デフォルトの名無しさん[sage]   投稿日:2015/09/30 03:23:47  ID:Eb56OawZ.net(5)
ほとんど差が出なかった。


$loop=10000;
$str=""; for($n=0;$n<3000;$n++) $str .= base64_encode(mt_rand());

$time = microtime(true);
for($n=0;$n<$loop;$n++)
$s = str_replace("c", "", str_replace("b", "", str_replace("a", "", $str)));
$time = microtime(true)-$time; echo "$time\n";

$time = microtime(true);
$A=["a", "b", "c"];
for($n=0;$n<$loop;$n++)
$s = str_replace( $A, "", $str);
$time = microtime(true)-$time; echo "$time\n";

$time = microtime(true);
$A=["a", "b", "c"]; $B=["", "", ""];
for($n=0;$n<$loop;$n++)
$s = str_replace( $A, $B, $str);
$time = microtime(true)-$time; echo "$time\n";
コメント1件

653
デフォルトの名無しさん[sage]   投稿日:2015/09/30 03:34:17  ID:EyIEkC/I.net(5)
>650
mixedっていう概念が。

654
デフォルトの名無しさん[sage]   投稿日:2015/09/30 03:39:56  ID:EyIEkC/I.net(5)
str_replace(array("a","b","c"), array("","",""), $str);
とか、
str_replace("c", "", str_replace("b", "", str_replace("a", "", $str)));
より最悪だよ。
2・3個程度ならいいけど、対応するものを探すのにも労力がかかる。
対応するのをハイライトしてくれるIDEもあるのかもしれんけど、
基本前から1,2,3…とか数えないとだめなとこがもううんkでしかない。

655
デフォルトの名無しさん[sage]   投稿日:2015/09/30 03:59:00  ID:Eb56OawZ.net(5)
関数呼び出しが、複数回か一回かで比較してるわけだが。

656
デフォルトの名無しさん[sage]   投稿日:2015/09/30 04:03:22  ID:EyIEkC/I.net(5)
あ、いや、別に無視するつもりはなかったんだけどあんま見てないw
あほって言われたからかっちーんってきて、>648 >650にレスをしてる。

657
デフォルトの名無しさん[sage]   投稿日:2015/09/30 04:11:08  ID:6yKygfp8.net
>652 と同じようなことして時間計ってみた結果。
str_replace の入れ子 : 1.43s
str_replace を array で : 1.46s
strtr を array で : 5.67s
preg_replace で [abc] を置換 : 6.96s
preg_replace で [abc]+ を置換 : 7.19s

php 5.1.6 での結果。
str_replace を array で使うより入れ子にした方が速いってのは意外に感じた。
文字の出現率に偏りがあるなら入れ子の順序で最適化もできそうだね。
コメント1件

658
デフォルトの名無しさん[sage]   投稿日:2015/09/30 04:16:21  ID:Eb56OawZ.net(5)
a-zまでの複数個置換だったら配列のほうが速いはずとおもうがやってはいない

659
デフォルトの名無しさん[sage]   投稿日:2015/09/30 04:24:19  ID:GOPPmiIs.net(4)
個人的には array() でなく [] を使うのが違和感
5.4から使えるようになった、わかるよ
内部的に速度差がない文字数少ない書きやすい慣れれば見やすい、わかるよ でもそういうんじゃねーんだ

660
デフォルトの名無しさん[sage]   投稿日:2015/09/30 04:24:56  ID:5VICgqtC.net(5)
>657
そのstrtrには何かウェイトでも?
http://ideone.com/01biJO
コメント1件

661
デフォルトの名無しさん[sage]   投稿日:2015/09/30 04:35:32  ID:GOPPmiIs.net(4)
>660
5.4.12以前の使ってたり書き方次第でstrtrは遅くなる
が、お前さんの書き方、なんだそれ
引数3個入れるときは長さ揃えないと無視される結果、それだと置換されないぞ早くて当然
実際動かして結果確認してから時間計りなさい

662
デフォルトの名無しさん[sage]   投稿日:2015/09/30 04:37:18  ID:5VICgqtC.net(5)
こりゃあすまんかった

663
デフォルトの名無しさん[sage]   投稿日:2015/09/30 04:39:56  ID:5VICgqtC.net(5)
なおした。遅いな。

664
デフォルトの名無しさん[sage]   投稿日:2015/09/30 04:56:24  ID:O5d+GXPE.net
配列はPHP7から実装されたものですん!

665
デフォルトの名無しさん[]   投稿日:2015/09/30 14:48:02  ID:MFXzG0RB.net(3)
普通に$kaeru{a,b,c}; $kaeta{d,e,f,};

str_ireplace{$kaeru,$kaeta,$html}じゃあかんの?
メンテしやすいし

666
デフォルトの名無しさん[sage]   投稿日:2015/09/30 16:24:43  ID:JBefBAW1.net(2)
いったいなんだいその書き方は?
PHP7にしたら動くのかね?

667
ゆうき[]   投稿日:2015/09/30 20:56:39  ID:5In1o3Ll.net
だれか、このプログラム作ってください
よろしくおねがいします
以下の要件を満たすプログラムを作成せよ
&amp;#61656;課題名:引数・返り値に構造体を使った複素数計算関数
&amp;#61656;
&amp;#8226;要件
&amp;#8211;複素数の足し算を行うcomplex_sum関数と掛け算を行うcomplex_product関数を作成せよ
&amp;#8226;引数:複素数(その1),複素数(その2)の2つ
&amp;#8226;返り値:複素数(計算結果)
&amp;#8226;動作:複素数その1と複素数その2を足してその結果を返り値にする
&amp;#8211;このとき,計算は作成した関数で,出力はmain関数で行うこと
&amp;#8226;出力:

1つ目の複素数の実部,虚部を入力してください:【実数値(1),実数値(2)を入力】
2つ目の複素数の実部,虚部を入力してください:【実数値(3),実数値(4)を入力】
(【実数値(1)】+【実数値(2)】i)+(【実数値(3)】+【実数値(4)】i)=【加算結果】
(【実数値(1)】+【実数値(2)】i)×(【実数値(3)】+【実数値(4)】i)=【乗算結果】

668
デフォルトの名無しさん[sage]   投稿日:2015/09/30 21:12:13  ID:JBefBAW1.net(2)
作って下さいはスレチ
ていうかここC言語スレやないんやで

669
デフォルトの名無しさん[sage]   投稿日:2015/09/30 21:30:58  ID:GOPPmiIs.net(4)
複素数とか懐かしいなオイ

670
デフォルトの名無しさん[]   投稿日:2015/09/30 23:00:55  ID:MFXzG0RB.net(3)
テキストエリアに書いた文字をそのままの状態で保存することってできる?
更新ボタン押してもそのまま書き込まれてる状態っていうか…

例えて言うならevernoteとかmacのメモみたいな感じで

671
デフォルトの名無しさん[sage]   投稿日:2015/09/30 23:12:46  ID:8HX6e1yX.net
>更新ボタン押してもそのまま
最近のブラウザならデフォルトでそういうのついてるでしょ

まぁ下書き機能とか普通にあるじゃん
10秒おきにajaxでサーバに保存とか
ログイン状態ならいいけど非ログイン状態ならセッション使うことになるからクッキーでよくね?って話だけど

672
デフォルトの名無しさん[sage]   投稿日:2015/09/30 23:26:53  ID:GOPPmiIs.net(4)
最近のブラウザでも昔のブラウザでも、
metaのcache-controlやHTTPヘッダのExpires・Last-Modifiedあたりの状況によって
更新ボタン押下時に入力内容がリセットされたりする
あと<form>の構造、逆に言えばこの辺の調整で保存されるようになりうるんだけど……

他の手段だと、cookie、session、サーバ保存、あとlocalstorageも当然だけど全部普通に実装しようとするとjavascript依存だな

673
デフォルトの名無しさん[]   投稿日:2015/10/01 00:26:51  ID:Dxsc0OBp.net(3)
現在のプロジェクトでフルPHPで作成されたWEBアプリケーションのパフォーマンスが出なくなってきたので、
バックエンド部をjavaにしようという話が出ています。
PHP5以降でjavaと連携する方法が今一つまとまらないので質問させて下さい。
フルPHPから緩やかにjavaに移行しようと考えているらしく、PHP/Java Bridgeも使用しにくい状況です。
この場合、PHPからfile_get_contentsでtomcatのサーブレットコンテナへHTTPリクエストし、
json形式などでレスポンスを受け取ってPHPでクライアントレスポンスを出力、
という方法しかないでしょうか。
同一マシン上にPHPとjavaが存在していればループバックと出来るものの、
メモリ、CPUリソースの負担が増えてパフォーマンス的に上がるのかかなり微妙な予感がしています。
コメント3件

674
デフォルトの名無しさん[sage]   投稿日:2015/10/01 00:31:04  ID:LSWhCnNG.net
ページの beforeUnload かなにかで cookie に保存すればいいんじゃね

675
デフォルトの名無しさん[]   投稿日:2015/10/01 00:50:27  ID:z1lAS5eB.net(2)
話が出ていますっつーならその話を出したやつに考えさせろよ
コメント1件

676
デフォルトの名無しさん[]   投稿日:2015/10/01 00:53:50  ID:Dxsc0OBp.net(3)
>675
そうなんですよね。
ホントに下らない話だと自分でも思っているからここで質問させて頂いています。

677
デフォルトの名無しさん[sage]   投稿日:2015/10/01 00:55:08  ID:uSsV6wdT.net(2)
すっげー知り合いの香りがするwww
コメント1件

678
デフォルトの名無しさん[]   投稿日:2015/10/01 00:59:42  ID:Dxsc0OBp.net(3)
>677
あ、もしかしたら隣の席の・・・。

679
デフォルトの名無しさん[sage]   投稿日:2015/10/01 01:30:25  ID:M2hxjHUk.net
HHVMでもいいけどまずはPHP7にしてみるとかいう選択肢はないのか
来月に正式版がリリースされるはず
無駄にコストかけるより環境の置き換えと少しのコード修正でテスト出来るならそっちのがいいんじゃない
コメント1件

680
デフォルトの名無しさん[sage]   投稿日:2015/10/01 03:53:24  ID:kBF9/RuM.net
>673
パフォーマンスが悪い理由は調査したんだろうか。
してなきゃそんな話にはならないだろうけれど、本当に改善できないんだろうか。
コメント1件

681
デフォルトの名無しさん[]   投稿日:2015/10/01 06:48:02  ID:z1lAS5eB.net(2)
できるわけないじゃん
>673自身がjavaに移行すれば早いのになと言い出したか
権力強い無能が言い出したか知らんが
別言語で書き直して高速化で解決できるならその前にボトルネック調査して修正してるわ

682
デフォルトの名無しさん[sage]   投稿日:2015/10/01 13:07:15  ID:uSsV6wdT.net(2)
phpってそんな言うほど遅い?
コメント1件

683
デフォルトの名無しさん[sage]   投稿日:2015/10/01 14:48:48  ID:xUyWxNo6.net(2)
>682
毎秒10リクエスト程度だったら全然問題ない

684
デフォルトの名無しさん[sage]   投稿日:2015/10/01 18:17:38  ID:yb6zYl2l.net
どうせインデックスあたらないSQLでも投げてんだろ
コメント1件


685
デフォルトの名無しさん[sage]   投稿日:2015/10/01 18:20:38  ID:FLynHvaU.net
遅い部分だけC言語で処理したらいい。レンタルだと不明だが。
コメント1件

686
デフォルトの名無しさん[sage]   投稿日:2015/10/01 18:22:30  ID:xUyWxNo6.net(2)
つか、逆にJavaって速いのか?
Jenkinsとか糞重いんだが。
コメント1件

687
668[]   投稿日:2015/10/02 01:02:38  ID:NE1jsZAh.net
みなさん有難う御座います、>673です。

>679
HHVMはエンジニア総とっかえになりそうですし、真っ先にやるとすればやはりPHP7ですよね。
百歩譲っても設計からやり直してJavaに移行だろ、と。
自分もなんでこのタイミングでこんなコストが掛かる話が出て来たのかと思っています。
現状の方針にストップを掛ける方向に材料を提供して行ってみます。

>680から>684
ボトルネックはどう考えてもDBなんですよ。
物理設計がまずくて無駄なDB問い合わせとDB更新が頻発してるんだろ、と。
でもそれなりに同時アクセスがあるサービスなので混乱してるのかな、と思います。
設計からやり直しを決定出来る権力が欲しい。。。

>685
現場にC出来るエンジニアがおらんとです。

>686
言語のパフォーマンスで言えばC系に次ぐものがありますので、それなりに早いです。
でも設計に大きく依存しますので・・・。

皆さんもやはり違和感を感る話なんだな、と認識出来ました。
自分はストップを掛ける方向に動くことにします。
考え直してくれると良いのですが。
コメント4件

688
675[sage]   投稿日:2015/10/02 03:15:33  ID:cle9kUAg.net(2)
>687
かわいそうに。
ボトルネックがDBなら、工数かけてJavaに変えても結局パフォーマンス上がらんじゃないかって
上層部が顔を真っ赤にして怒鳴り散らす未来が待ってるね。
俺がその状況ならとっととクエリを改善して、もうパフォーマンス悪くないからその話進めなくていいよね?ってする。

689
デフォルトの名無しさん[sage]   投稿日:2015/10/02 03:25:00  ID:j2xAjxnc.net(2)
Ruby資格の教科書を見たが、5年前の求人割合では、
Java:Ruby = 10:1 だが、今では、5:1 で、
5年後には、2:1 と予測されている。
JavaからRubyへの流れが、止まらない

こういう情勢で、速度が問題となるのに、
違和感を感じる

DBの全レコードを探索しているのでは?
まさか、インデックスの付いていない項目で、
検索しているのでは?

Where文の左側で、先にインデックスで比較して、
レコード件数を絞らないといけない

バグのほとんどはプログラムにあるのではなく、
設計段階での論理矛盾が原因。
テーブル設計時に、どこが悪いかわかるはず

690
デフォルトの名無しさん[sage]   投稿日:2015/10/02 03:36:20  ID:gMdpYExV.net
あえてエスパーしてみるが
・全部ウソ
・現場で実際に問題になってることと>687の頭の中が全然別物で682があらぬ方向に突っ走ってるだけ
どっちかだと思う

691
デフォルトの名無しさん[sage]   投稿日:2015/10/02 03:46:44  ID:MaT1v7mR.net
>687
DB を SSD に置いてみたら

692
デフォルトの名無しさん[sage]   投稿日:2015/10/02 04:04:24  ID:j2xAjxnc.net(2)
最初に振り分けサーバーで、顧客ID・地域などで、
処理するサーバーを変える

HDDからSSDへ、変えれば速い

物理メモリーの量を増やす

リアルタイム性のいらない統計処理などは、閉店後に行う

インデックスを使って検索しているか、チェックする

テーブル全体をロックせず、その行だけをロックする(行ロック)

Stored Procedureを使う

693
デフォルトの名無しさん[sage]   投稿日:2015/10/02 05:18:46  ID:XsCDb17v.net(2)
10倍速いサーバーを使え

694
デフォルトの名無しさん[sage]   投稿日:2015/10/02 05:35:03  ID:MZbKrQpC.net
HDDもSASじゃなくてSATAなんだろ

695
デフォルトの名無しさん[sage]   投稿日:2015/10/02 09:36:38  ID:Gd8B7UmP.net
>687
以前のジョブでも、現在のジョブでも、
DBアクセスを丹念にチェックして、
一分かかっている処理を1秒以内に終わる様に改造した。
見違える様になったぞ
コメント1件

696
デフォルトの名無しさん[sage]   投稿日:2015/10/02 14:03:22  ID:XsCDb17v.net(2)
>695
ジョブズならそのサーバーを水槽に投げ込んでまだ隙間がある。
って言うんだよな

697
デフォルトの名無しさん[sage]   投稿日:2015/10/02 17:28:42  ID:ExAoDKGZ.net
健全でない言葉が含まれているため表示しません 内容を確認する

698
デフォルトの名無しさん[sage]   投稿日:2015/10/02 18:12:25  ID:cle9kUAg.net(2)
健全でない言葉が含まれているため表示しません 内容を確認する

699
デフォルトの名無しさん[]   投稿日:2015/10/03 08:23:38  ID:oanQRH4z.net(4)
Webアプリに詳しい人が多いと思うので質問

JavaのServletなんかをいまさらやっても求人はほとんどないんですよね?
Javaの練習としては意味あるのかな?JSPはいらないと思うから極力JSPを使わず
HTMLJQueryのみと最小限のServletつかってHPなんかを作る

って意味ありますか?
プログラム2年目の初心者です。そのごPHPやろうかなと

700
デフォルトの名無しさん[sage]   投稿日:2015/10/03 08:24:14  ID:oanQRH4z.net(4)
1個言語極めたほうがいいと聞いてるので
PHP後なんです。PHPの言語の本は読んでますが

701
デフォルトの名無しさん[sage]   投稿日:2015/10/03 08:28:42  ID:kqQdpap+.net
この臭さ

702
デフォルトの名無しさん[sage]   投稿日:2015/10/03 09:24:17  ID:ajbLAT8w.net(2)
JavaでAndroid開発頑張れよ
いくらでも仕事あるぜ

703
デフォルトの名無しさん[sage]   投稿日:2015/10/03 09:28:31  ID:oanQRH4z.net(4)
クラウドなど使ってるのでWEBの知識もつけたいんです

704
デフォルトの名無しさん[sage]   投稿日:2015/10/03 09:39:58  ID:Ah57aA4b.net
Web技術はプログラミング言語とは独立な話だけど

705
デフォルトの名無しさん[sage]   投稿日:2015/10/03 09:42:54  ID:oanQRH4z.net(4)
そうなですか。JSONを送る練習したほうがいいとききました
コメント1件

706
デフォルトの名無しさん[sage]   投稿日:2015/10/03 16:04:31  ID:giCn6CLq.net
送る練習ってなんだ ただ仕様調べてその通り書くだけだろ

707
デフォルトの名無しさん[sage]   投稿日:2015/10/03 17:37:45  ID:K3yeuoy4.net(2)
ジェイソン来られても困るわ

708
デフォルトの名無しさん[]   投稿日:2015/10/03 21:35:32  ID:B7qJf8Bu.net
以前アンケート作成について質問させてもらった者ですが、今二重投稿を防ぐためのIPチェックのコードを書いてて、うまくいかないからアドバイス貰えると嬉しいです‥

// IPアドレスを取得して変数にセットする
$ip = $_SERVER["REMOTE_ADDR"];

//投稿データを貯めたファイルを変数に格納
$lines = file(‘【投稿情報を格納したファイル】.txt');

//ファイルのデータを上から下までチェック
for ($i = 0; $i < count($lines); $i++) {

//各データを区切ってる水平タブを削除
$items = explode("¥t", $lines[$i]);

//データの10番目のアイテムが投稿者のIPなので、現在のIPと一緒の場合は別処理
if ($items[10] == $ip) {
echo 'ip重複やで';
}}


これ何が間違ってる?
コメント3件

709
デフォルトの名無しさん[sage]   投稿日:2015/10/03 21:40:51  ID:1PQVSqiN.net
>708
10番目のアイテムは$item[9]じゃね?

710
デフォルトの名無しさん[sage]   投稿日:2015/10/03 22:17:47  ID:g7xKsIu0.net
wpってもっさりして動きがのろいんだがphpが遅いのが原因だろ?
速いphpって無いのか?
コメント1件

711
デフォルトの名無しさん[sage]   投稿日:2015/10/03 22:31:29  ID:ajbLAT8w.net(2)
phpが遅いのが主原因ではない
php以外でのサーバの最適化とソフトウェア(wp)自体の最適化を行わないことには一緒
そういうのを全部やってるサーバ借りるのが一番

712
デフォルトの名無しさん[sage]   投稿日:2015/10/03 22:44:12  ID:K3yeuoy4.net(2)
サーバーのスペックのがでかいわ

713
デフォルトの名無しさん[sage]   投稿日:2015/10/03 23:39:19  ID:DW7EPY85.net(2)
>705
将来的にも食っていきたいならJavaの前にCどうぞ。
コメント1件

714
デフォルトの名無しさん[sage]   投稿日:2015/10/03 23:40:00  ID:DW7EPY85.net(2)

715
デフォルトの名無しさん[sage]   投稿日:2015/10/03 23:41:16  ID:tV482q2K.net
>708
大筋間違ってないと思うが、世の中固定のグローバルIPアドレスを一人で専有するユーザーなんてほぼいないんだから、せめて「一定時間内の」同一IPを弾くとか工夫した方がいいと思う。
あと、重複チェック用にチェック項目だけを書いたファイルを用意しておくといいと思う。
IPアドレスとタイムスタンプ、あと UA あたりとか。

つか、受け付け時はノーチェックで受け付けて集計時に重複排除すればよくね?
リアルタイムに集計結果をページに反映させたいなた無理だろうが、受け付ける時はなるべく余計なことしない方がいいと思う。
コメント1件

716
デフォルトの名無しさん[sage]   投稿日:2015/10/04 05:08:32  ID:FsLwYc7A.net(2)
>714
7って本当に速いのか?

717
デフォルトの名無しさん[sage]   投稿日:2015/10/04 06:24:37  ID:6bPbjGVx.net
wordpressを早くしたいならまずはサーバをapacheから変えることだな
コメント1件

718
デフォルトの名無しさん[sage]   投稿日:2015/10/04 07:04:55  ID:JXiMzRO3.net(2)
fpmって付随効果はいろいろありがたいけど
phpの実行速度そのものはmodule版とあんま変わらないよね

719
デフォルトの名無しさん[sage]   投稿日:2015/10/04 10:13:44  ID:J4whK/1Y.net
>708
ネットカフェだと、異なる人が、
異なるPCから投稿しても、
同じIPアドレスになってしまう

ネットカフェ内の誰かが、2chに書き込むと、
連続投稿となり、他の人が書き込めなくなった

720
デフォルトの名無しさん[sage]   投稿日:2015/10/04 11:30:31  ID:FsLwYc7A.net(2)
>717
何に変えるのか言ってくれよ

721
デフォルトの名無しさん[sage]   投稿日:2015/10/04 14:30:47  ID:NaI5stH8.net(4)
>713
Cはほんの軽くやってます。きちんとやったほうがいいんでしょうか。やるとなると何がいいですか?MAC持ってませんがiphone?
コメント1件

722
デフォルトの名無しさん[sage]   投稿日:2015/10/04 15:44:38  ID:DWkf6ASR.net(2)
触ったことあるのと理解してるのは別の話、そこを分かってるとおいそれと「やってる」なんて言わないからな。
黙々とやってみるわけでもなく、何をやったらいいかとぐだぐだこんなところで聞いてくるなら別の職を検討する方がいいと思うよ。
コンサルとか案外向いてるかも。
コメント1件

723
デフォルトの名無しさん[sage]   投稿日:2015/10/04 15:50:26  ID:/KIHQ6WK.net(3)
>721
iphone?objective-cやりたいの?
というか、きちんとやったほうがいいのかどうかからずいぶん飛躍したところに着地してるよそれ。
言語をきちんと学ぶかどうかだよね。とりあえずK&Rを隅から隅まで読むこと。

724
デフォルトの名無しさん[sage]   投稿日:2015/10/04 16:44:58  ID:3q2CjWiD.net(2)
今時K&Rは流石に古い

725
デフォルトの名無しさん[sage]   投稿日:2015/10/04 16:46:56  ID:/KIHQ6WK.net(3)
確かに今じゃもう古いってのはあるけど、しかし代わりになるものがないのも事実じゃないかな。

726
デフォルトの名無しさん[sage]   投稿日:2015/10/04 16:54:09  ID:3q2CjWiD.net(2)
まぁC言語のスレじゃないから掘り下げる気はないよ

727
デフォルトの名無しさん[sage]   投稿日:2015/10/04 18:18:46  ID:NaI5stH8.net(4)
>722
ヘルプデスクのことですか?
あれって60歳まで仕事ないからだめかな

組み込みで簡単なゲームウォッチ
作ったかな
コメント1件

728
デフォルトの名無しさん[sage]   投稿日:2015/10/04 19:48:30  ID:EdfN5JOs.net
>727はたぶん学び続ける職全般に向いてないからやっぱりコンサル向きだ
コメント2件

729
デフォルトの名無しさん[sage]   投稿日:2015/10/04 19:58:02  ID:NaI5stH8.net(4)
>728
ヘルプデスクのこと?本を読んで覚えるのはできるけど
家でPC開いて一人で土日つぶす式の勉強は無理かな

730
デフォルトの名無しさん[sage]   投稿日:2015/10/04 20:00:27  ID:NaI5stH8.net(4)
通勤時間に勉強できるようならできるだろうけど

731
デフォルトの名無しさん[sage]   投稿日:2015/10/04 20:08:57  ID:JXiMzRO3.net(2)
楽しそうだな君たち

732
デフォルトの名無しさん[sage]   投稿日:2015/10/04 21:44:32  ID:DWkf6ASR.net(2)
>728
いやコンサルはむしろ新しいことを取り入れ続ける人間が向いてると思うよ。
聞きかじった新しいことをさも分かってる風に堂々と並べ立てられるスキルが求められる。
エンジニアはなかなかあのニオイを出せないけど、それをぷんぷん漂わせてるんだから天職だと思うよ。

733
デフォルトの名無しさん[sage]   投稿日:2015/10/04 21:52:59  ID:/KIHQ6WK.net(3)
なんでコンサルからヘルプデスクにつながるんだろう

734
デフォルトの名無しさん[sage]   投稿日:2015/10/05 02:32:17  ID:pXkN35Nh.net
プログラミングヤる前に色々勉強した法が良さそう・・・

735
デフォルトの名無しさん[]   投稿日:2015/10/05 15:12:10  ID:2wXr8eiu.net
windowsサーバー2003 R2 SP2
PHP5.3.8
【質問内容】配列がおかしい、配列番号どおりに並んでいない

【詳細】
$hoge_arr = array();
$hoge_arr[0] = "あああ";
$hoge_arr[2] = "ううう";
$hoge_arr[3] = "えええ";
$hoge_arr[1] = "いいい";
$hoge = implode("\n",$hoge_arr);
print $hoge;

【期待する結果】
ああああ
いいいい
うううう
ええええ

【実行結果】
ああああ
うううう
ええええ
いいいい

なぜなんでしょうか?(*_*)
コメント3件

736
デフォルトの名無しさん[sage]   投稿日:2015/10/05 15:15:52  ID:kPKq1OVt.net
>735
PHPの配列とはそういうものです。
マニュアルを読みましょう。

737
デフォルトの名無しさん[sage]   投稿日:2015/10/05 15:31:04  ID:2gaTZTqA.net
あうえい、それぞれ一個増える仕様です

738
デフォルトの名無しさん[sage]   投稿日:2015/10/05 15:47:13  ID:IPku5sGT.net
>$hoge = implode("\n",$hoge_arr);
ここの前で
ksort($hoge_arr);
すりゃいい

739
デフォルトの名無しさん[sage]   投稿日:2015/10/05 22:47:07  ID:hKC6CL9o.net
>735
PHP7でなら期待する結果が得られると思われる
コメント1件

740
デフォルトの名無しさん[sage]   投稿日:2015/10/05 23:44:57  ID:0vUoyrfn.net
>739
1 2 3 0の順で格納した場合に、配列だと判断してくれる(=内部でデータ変更してくれる)かどうかが気になるところだよね。

741
デフォルトの名無しさん[sage]   投稿日:2015/10/06 00:51:13  ID:1MaEKRz1.net
PHP7でそんな変更があるとはどこにも書いてないな。
基本的な文法は後方互換持たせてるっぽいし。
コメント1件

742
デフォルトの名無しさん[sage]   投稿日:2015/10/06 02:14:13  ID:7bWwpFop.net(2)
RCで試してみればよいか, 俺は正式リリース後にするが
コメント1件

743
735[sage]   投稿日:2015/10/06 03:09:20  ID:wqvPEXhX.net
>741
https://nikic.github.io/2014/12/22/PHPs-new-hashtable-implementation....
めっちゃ分かりやすく書いてくれてたのでオヌヌメ

744
デフォルトの名無しさん[sage]   投稿日:2015/10/06 10:58:33  ID:8pBv5L1n.net(3)
>742
そろそろ俺も7.0使ってみるかと思ってインストールしたら、7.1.0-devがインストールされてしまった。
7.0インストールするのめんどいのでこのまま>735を実行してみる。

php -v
PHP 7.1.0-dev (cli) (built: Oct 6 2015 10:52:14) ( NTS )
Copyright (c) 1997-2015 The PHP Group
Zend Engine v3.0.0-dev, Copyright (c) 1998-2015 Zend Technologies

実行結果:
あああ
ううう
えええ
いいい

結論:
互換性は保たれている。

745
デフォルトの名無しさん[sage]   投稿日:2015/10/06 11:39:11  ID:O9Pn11VB.net
そこの挙動が変わったらいろいろ大変そうだもんな
既存システムの検証なんて気が遠くなる

746
デフォルトの名無しさん[sage]   投稿日:2015/10/06 11:44:44  ID:8pBv5L1n.net(3)
7.0 RC5でもやってみたけど、当然ながら同じ結果だった。

php -v
PHP 7.0.0-dev (cli) (built: Oct 6 2015 11:24:05) ( NTS )
Copyright (c) 1997-2015 The PHP Group
Zend Engine v3.0.0-dev, Copyright (c) 1998-2015 Zend Technologies

747
デフォルトの名無しさん[sage]   投稿日:2015/10/06 11:47:49  ID:8pBv5L1n.net(3)
あ、RC 5じゃなくて、RC 4+αなのか。
NEWSファイルに
> 15 Oct 2015, PHP 7.0.0 RC 5
って書かれてたから、RC 5は10/15リリース予定なのかな。

748
デフォルトの名無しさん[sage]   投稿日:2015/10/06 15:40:51  ID:MPuxCYgs.net(2)
print_rとかvar_dump使うとフリーズしたり真っ白画面になったりするんだけど、どうしたらいいんだろうか
コメント2件

749
デフォルトの名無しさん[sage]   投稿日:2015/10/06 15:49:24  ID:SmWERlUR.net
>748
内容が膨大で出力に時間がかかってるかタイムアウトしてるんじゃね。
オブジェクトの必要な部分だけをダンプしたら。
コメント1件

750
デフォルトの名無しさん[sage]   投稿日:2015/10/06 17:13:58  ID:MPuxCYgs.net(2)
>749
レスありがとうございます。個別にした所表示されました。
内容的には 連想配列5セット?分程度なんですが
渡し方が悪いのか妙にいろんなのがくっついてきてて・・・OTL

751
デフォルトの名無しさん[sage]   投稿日:2015/10/06 23:36:29  ID:7bWwpFop.net(2)
>748
さぁprint_rやvar_dumpを使う代わりにテストを書くんだ

752
デフォルトの名無しさん[]   投稿日:2015/10/07 12:02:18  ID:qdqRCjiZ.net
受ける会社大丈夫?
下記の条件が全て当てはまる会社にご注意下さい。

・IT系 in tokyo
・「社名 労基」でググると過去の2chスレが出てくる
・転職会議で2.5点

753
703[]   投稿日:2015/10/07 20:44:42  ID:8dqqBgV+.net
>715

IPアドレスで制限はやめた方が良さそうなんだね

とりあえず「一定時間内の同一IPを弾く」でやろうと思うんだけど、タイムスタンプ?っていうのはどうやればいいの?

検索して調べる際のキーワードというか‥ヒントでもいいから教えてくれないだろうか‥
コメント1件

754
デフォルトの名無しさん[sage]   投稿日:2015/10/07 22:10:07  ID:G4XQLQ5p.net(3)
>753
タイムスタンプって、ある事象が起きた時刻のことだよ。
ここで言えば回答を受け付けた時刻で、たとえば time() で取れる。
time の値は一見時刻に見えないただの数値で、この数値のまま記録して経過時間を判別することもできるけど、
処理系への依存性を減らしたりデータファイルの視認性を上げるためにおれなら日時形式にフォーマッティングして記録する。
2015-10-07 21:57:15 みたいな。

アンケートを受け付けた時、重複検索用に次のようなレコードを出力にしておき、
<タイムスタンプ>¥<IPアドレス>¥<UA>

チェック時には 現在時刻-判定時間 の「判定時刻」を求め、その判定時刻より大きいタイムスタンプを持つ行を検索し、IPアドレスとかUAをチェックする。
重複検索用のファイルはたまに判定時間を過ぎた古いレコードを削除してやるといい。
コメント1件

755
デフォルトの名無しさん[sage]   投稿日:2015/10/07 22:17:36  ID:OQQ44hBw.net
セッション使えばよくね
コメント2件

756
デフォルトの名無しさん[sage]   投稿日:2015/10/07 22:18:22  ID:G4XQLQ5p.net(3)
レコード形式書き直し

<タイムスタンプ>¥t<IPアドレス>¥t<UA>

¥t はタブね。
カンマでもいいけど UA に使われそうにない ¥t がいい。
が、どっちにしても UA に区切り文字が含まれることを想定して、文字列は置換かけて利用して。
フィールド区切りを ¥t、レコード区切り(改行)を ¥n にするなら、UA は必ず ¥t や ¥n、ついでに ¥r をスペースに置換したものを利用する。
これやらないとセキュリティホールになりえるから抜け目なく。

757
デフォルトの名無しさん[sage]   投稿日:2015/10/07 22:47:03  ID:WJBWsnfN.net
fgetcsv(), str_getcsv()あんだからさあ・・・

758
デフォルトの名無しさん[sage]   投稿日:2015/10/07 22:56:56  ID:0iwSPjqO.net
>755
セッションだと同じ人が、
いったんブラウザを閉じてから、
また接続して投票するかも

759
デフォルトの名無しさん[sage]   投稿日:2015/10/07 23:08:21  ID:07QWenOi.net
>755
セッションもキーのやり取りがCookieですしおすし
意図しない2重投稿の拒否には効果的だと思うけど, 能動的に多重投稿しようとする場合にはなー

>754,751
態々TSVでそんな処理を実装するなんて馬鹿げてると思うんだ
初めからSQLiteでも使って適当なテーブル設計にしておけばSQL文ひとつで済む処理だぜ, それ

ついでに言っとくと, 日時形式はタイムゾーン(UTC, JST, &c...)まで書かないとロケール依存だし, そもそもUNIX時間に処理系/環境依存性なんてない
コメント1件

760
デフォルトの名無しさん[sage]   投稿日:2015/10/07 23:55:06  ID:G4XQLQ5p.net(3)
>759
大元がdb使う話じゃないからそれに合わせたまでだよ。
今時 db 使えない環境も無いだろうが、順を追って覚えていく上でもファイルベースの処理はやって損はないでしょう。
環境についても、別に既存データを別環境に引っ越すことを狙ってるわけじゃないからロケールは不要だし、そこら辺まで意識したいなら UTC にでもすればいい話。
環境依存性の話は、どちらかと言えば時刻の取り扱いが異なる言語やOSへ引っ越す場合についての話。
その処理系で返される値がintじゃなかったら?時刻の新旧と値の大小の対応が不連続な処理系だったら?という話だよ。
2038年問題にどう対処されるか、負のタイムスタンプが何を表すか、そこら辺に違いが出る可能性があるでしょ。
日付と時刻でフォーマッティングしとけば、そこら辺の違いを吸収しやすくなりポータビリティが上がるでしょ。
コメント2件

761
デフォルトの名無しさん[sage]   投稿日:2015/10/08 00:09:08  ID:+wLyjalJ.net(3)
うむ、ヘルプデスク君

762
デフォルトの名無しさん[sage]   投稿日:2015/10/08 00:25:30  ID:pWF1/z0v.net
db使った方が日付のポータビリティ高そう
コメント1件

763
デフォルトの名無しさん[sage]   投稿日:2015/10/08 00:27:44  ID:EtqyyL8e.net(4)
>762
そりゃそうだ

764
デフォルトの名無しさん[sage]   投稿日:2015/10/08 01:42:25  ID:fFP80ZXX.net(3)
>760
まぁ, 日付時刻フォーマットにするならISO8601とかあるし, 理由もなくオレオレフォーマットにするぐらいならそっち使った方がいいよ
コメント1件

765
デフォルトの名無しさん[sage]   投稿日:2015/10/08 02:25:14  ID:EtqyyL8e.net(4)
>764
目的を考えろよ。
別システムと情報交換するわけでもなく、自分ローカルの値なんだぞ?
簡単な文字列比較で時刻の新旧が比較できることが要件であり、それを満たしさえすればオレオレで充分だろ。
もちろん標準に添うことに反対するわけではないが、基本を勉強する段階で従うべきルールを不必要に増やすこともないでしょ。
コメント1件

766
デフォルトの名無しさん[sage]   投稿日:2015/10/08 03:01:17  ID:fFP80ZXX.net(3)
>765
目的考えればUNIXタイムが最適じゃない?
コメント1件

767
デフォルトの名無しさん[sage]   投稿日:2015/10/08 03:07:36  ID:zAcCECc5.net
いいや。おれの腹時計だ。

768
デフォルトの名無しさん[sage]   投稿日:2015/10/08 03:11:49  ID:EtqyyL8e.net(4)
>766
通常はそれで充分だと思うよ。
当面は unixタイムスタンプが扱える環境であれば同じように動作するだろうし。
おれが言ってるのは unixタイムスタンプを直接取れない処理系、及び unixタイムスタンプの溢れに対する対処に差がある処理系の考慮の話で、
少なくとも php に限定すれば気にするような話じゃないからね。
んまあこのコードを 2038年以降の 32bit版PHP で動かせるか、そこは気になるけどね。
負数に回り込んだりしてうまく比較できなくなるのであれば、その対応コードが必要になっちゃうよね。
コメント1件

769
デフォルトの名無しさん[sage]   投稿日:2015/10/08 03:26:34  ID:9a4rvECp.net(3)
>760
> その処理系で返される値がintじゃなかったら?
それはつまり、time がリファレンス通りの動作をしない実装の PHP を想定してのレスだよね。
その状況で、他の処理等々がリファレンス通りの動作をすると信じていいのかい?
コメント1件

770
デフォルトの名無しさん[sage]   投稿日:2015/10/08 03:28:25  ID:fFP80ZXX.net(3)
>768
意図は分かったけど, それ自分で言ってる基本とか目的云々とは対極の立場だよ
コメント1件

771
デフォルトの名無しさん[sage]   投稿日:2015/10/08 04:15:37  ID:EtqyyL8e.net(4)
>769
そこで言ってる処理系って他言語も含めての話だよ。
例えば同じことを windows api で書かなくちゃいけなくなった場合、得られるタイムスタンプの型は何種類かあるけど、まずどれを使うかという選択をしなくちゃならないし、そしてネイティブにはunixタイムスタンプを得られる api が無いという事情もある。
でもどんな処理系でも何らかの形で日付時刻として対応の取れる値を取得する手段はあるから、その形で値を管理すれば処理そのものは元のインタフェースの事情から解放されるでしょ。
そして、そう作るのに大きな手間がかかるというわけでもなく、PHP なら
date('Ymdhis')
とやるだけで要件を満たす値が得られるし、ついでに
date('Y-m-d h:i:s')
とやって視認性を高めてもいいでしょって話だよ。

>770
環境と処理の本質を疎にするため値を目的に応じた表現にして管理するってのは基本でしょ。
ラッピングと同じように。
コメント1件

772
デフォルトの名無しさん[sage]   投稿日:2015/10/08 07:28:26  ID:JPpo1zNY.net
if文の評価式で、変数に値が入っているかどうかを聞く場合、
$hoge = 'hogehoge';

if($hoge)

if($hoge != '')

どっちが正解?
コメント1件

773
デフォルトの名無しさん[sage]   投稿日:2015/10/08 12:31:05  ID:9a4rvECp.net(3)
>771
ああ、その層の話をしてたのね。はあくした。

774
デフォルトの名無しさん[sage]   投稿日:2015/10/08 12:32:39  ID:9a4rvECp.net(3)
>772
空文字列であるかどうを知りたいなら if ($hoge !== '') が正解
コメント1件

775
デフォルトの名無しさん[sage]   投稿日:2015/10/08 17:56:58  ID:vrJgyY4U.net
>774
ありがとう
他人の書いたソースで、文字列でも数値でも
if($hoge)でやってるから、どうなのかと思って

776
デフォルトの名無しさん[sage]   投稿日:2015/10/08 19:38:15  ID:DbNAUAeX.net
0とかfalse、null等の扱いを厳密にするならきっちり分けるべき。
!==でなく!=を使ってる時点で、曖昧でも問題がない設計なんだろう。
厳密な型の比較には注意が必要。
http://php.net/manual/ja/types.comparisons.php

777
デフォルトの名無しさん[sage]   投稿日:2015/10/08 20:26:28  ID:9yien46K.net(3)
Javascriptスレで聞いたら
>PHP等の手を借りないと
>Javascriptだけでは不可能です
と言われたのでここに来ました。
index.htmlを表示している状態で、どこかの任意のWEBサイト
(例:www.yahoo.co.jp)を非表示の状態で読み込んで、そのサイトの
文章などの文字列を取得してindex.htmlの中で利用したいのですが、
どういう手順になるのか見当も付きません。
おおまかな流れを教えてください。
コメント1件


778
デフォルトの名無しさん[sage]   投稿日:2015/10/08 21:46:10  ID:bUX/DeaC.net
>777
javascriptのajax( )でやれば?
phpのファイル呼び出して特定のdivコンテナにぶち込めばいいさ
コメント1件

779
デフォルトの名無しさん[sage]   投稿日:2015/10/08 21:53:46  ID:9yien46K.net(3)
>778
レス有難うございました。
おおまかな流れは分かりました。
クライアントサイドだけでは出来ないんですね。

780
デフォルトの名無しさん[sage]   投稿日:2015/10/08 22:17:06  ID:+wLyjalJ.net(3)
クロスドメインのクの字も出てきてないのに何を納得したんだろうか
コメント1件

781
デフォルトの名無しさん[sage]   投稿日:2015/10/08 22:24:14  ID:9yien46K.net(3)
>780
ajaxを使うこと

782
デフォルトの名無しさん[sage]   投稿日:2015/10/08 22:49:04  ID:6F5A76Bc.net(2)
JavaScriptにはクロスドメインの制約あるけど、AjaxでPHPを呼んで、
そのPHPでスクレイピングして結果を戻す場合にも制約にかかるの?
コメント1件

783
デフォルトの名無しさん[sage]   投稿日:2015/10/08 23:00:47  ID:+wLyjalJ.net(3)
当然ながら、呼ぶ.phpの場所が読んでるhtmlと同じ場所なら、かからん
ただ、読み込むWebサイトを動的に変化させたい、php呼び出し時の引数で外部WebサイトのURLを指定して…とかになると
同時にセキュリティホールを生み出しかねないのはCORSと同じだが
コメント1件

784
デフォルトの名無しさん[sage]   投稿日:2015/10/08 23:28:47  ID:6F5A76Bc.net(2)
>783
>当然ながら、呼ぶ.phpの場所が読んでるhtmlと同じ場所なら、かからん
疑問が晴れた。ありがとう。
PHPで動的な処理をする場合、セキュリティが必須なのも同意。

785
デフォルトの名無しさん[sage]   投稿日:2015/10/09 00:46:12  ID:D2kqon1E.net(2)
Googleのrecaptchaを突破する方法知りませんか?

786
デフォルトの名無しさん[sage]   投稿日:2015/10/09 00:52:39  ID:+sCz9Yei.net
おそらく答えるのは不正アクセス禁止法違反幇助に該当するので

787
デフォルトの名無しさん[sage]   投稿日:2015/10/09 00:58:07  ID:l3A42VSr.net
画像に書いてある英数字を読んで入力するだけじゃん
コメント1件

788
デフォルトの名無しさん[sage]   投稿日:2015/10/09 02:57:28  ID:a9mGxvsP.net
みんなphp以外だとどんな言語使ってる?
使えるじゃなくて普段使ってるもので良かったら利点等々聞けると・・・

789
デフォルトの名無しさん[sage]   投稿日:2015/10/09 09:42:04  ID:DHEVIjM9.net(2)
>782
PHPはこの場合proxyに過ぎないわけでかかるかどうかは相手サーバ次第が正解
コメント2件

790
デフォルトの名無しさん[sage]   投稿日:2015/10/09 09:55:44  ID:SYQG11wT.net
>789
じゃあ同一生成元ポリシーに引っかかるかどうかが
相手サーバに依存する具体例よろ
コメント3件

791
デフォルトの名無しさん[sage]   投稿日:2015/10/09 17:37:39  ID:DHEVIjM9.net(2)
かかるってのはアクセス出来ないという話で
同一生成元ポリシーとかそういう話じゃない
どういうケースかというと相手方がproxyであるかチェックを行うサイト
コメント1件

792
デフォルトの名無しさん[sage]   投稿日:2015/10/09 19:12:36  ID:BO+xHSp1.net
>791
Q「(クロスドメインの)制約にかかるの?」
A「かかるかどうかは相手サーバ次第」←アクセスできるかどうかという話だ。

というやり取りをしていることについてどう思う?
コメント1件

793
デフォルトの名無しさん[sage]   投稿日:2015/10/09 22:49:18  ID:D2kqon1E.net(2)
>787
画像を選ぶ方式に変わったんです

794
デフォルトの名無しさん[sage]   投稿日:2015/10/09 23:18:45  ID:FgkOUotZ.net
現在地取得(今いる住所取得)は
geolocation APIとグーグルマップAPIを使い算出してました。

PHP側で同じようなパッケージなどありますでしょうか?

795
デフォルトの名無しさん[sage]   投稿日:2015/10/10 00:11:17  ID:YSjtdWRL.net(3)
>792
そもそも質問がおかしいだろ
コメント2件

796
デフォルトの名無しさん[sage]   投稿日:2015/10/10 00:48:54  ID:g8ZQ4q1/.net(2)
>795
そう思うならそこを指摘するべきであり、支離滅裂なレスをすることの理由にはならんだろ
コメント1件

797
デフォルトの名無しさん[sage]   投稿日:2015/10/10 01:27:12  ID:/QYhRBFu.net
globalは避けたい、staticプロパティやsingletonもglobal量産みたくなりかねないから避けたい
定数乱発もできるだけ回避したい
でも呼び出し側の設定によって関数・classの動作を変えるなど柔軟に作りたい
コメント1件

798
デフォルトの名無しさん[sage]   投稿日:2015/10/10 02:13:33  ID:+26wGx+X.net
>797
スクリプトを実行して終了するまでの間はずっと同じ設定値なの?
実行中に設定値が一定なら define が妥当じゃね。
define のスコープの広さが気にくわないのであれば、設定値クラスみたいのを作ってスクリプト実行時に好きに初期化して、
設定値を利用したい方のクラスではコンストラクタに設定値クラスオブジェクトを渡しておくとか?
実行中に設定値が一定なら設定値クラスと処理クラスを一緒にしてしまえということになりそうだけど、static の乱発したくないというならこうなるのかね。
んまあ設定値クラスが持つ値の元はやっぱり define かなにかで定義することになりそうだけど。

つか、設定値で動作を変えるという内容にもよると思うけど、処理の差が出る部分を派生クラスで実装変更するというのはどうなの。

799
デフォルトの名無しさん[sage]   投稿日:2015/10/10 03:38:04  ID:YSjtdWRL.net(3)
>796
同一生成元ポリシーってのはJavaScriptでの話であってPHPは関係ない
>790があのようなレスで返したこと自体が謎
コメント1件

800
デフォルトの名無しさん[sage]   投稿日:2015/10/10 03:45:58  ID:YSjtdWRL.net(3)
あ、質問がおかしいではなく>790がおかしいだな

801
デフォルトの名無しさん[sage]   投稿日:2015/10/10 03:50:35  ID:g8ZQ4q1/.net(2)
>799
>795の「質問」って>790のことを言ってる?
>789がすでにおかしなレスなんだからそこが問題だろ。
コメント1件

802
デフォルトの名無しさん[sage]   投稿日:2015/10/10 03:51:54  ID:wKf2WBeU.net(5)
>801
このスレには割とガチで頭の可笑しいのが一人いる, そう思っておくとスルー出来てよい

803
デフォルトの名無しさん[sage]   投稿日:2015/10/10 04:14:26  ID:QDr2SJN2.net
AサイトからBサイトのAPIをajaxで呼び出す→クロスドメイン制約により不可能
AサイトからajaxでAサイトのPHPを呼び出しPHP経由でBサイトのAPIを呼び出す→ここに当てはまる答えを書きなさい

804
デフォルトの名無しさん[sage]   投稿日:2015/10/10 04:56:27  ID:NbY3/Ke0.net(2)
なんでそんな面倒なことすんの?

805
デフォルトの名無しさん[sage]   投稿日:2015/10/10 05:00:54  ID:DKs1l9pU.net
そらパクリサイトやろ

806
デフォルトの名無しさん[sage]   投稿日:2015/10/10 09:27:43  ID:NaWvx4mT.net
外部からDBに接続させたくないから、PHP本体がレン鯖にある場合にやってる

807
デフォルトの名無しさん[sage]   投稿日:2015/10/10 15:54:35  ID:onaXIcy1.net(4)
連想配列に代入する値に変数を使うことはできますでしょうか?

値を代入した変数を連想配列に代入したいのです。

具体的には多次元の連想配列の値に変数を使いたいと思ってます。


$params[] =array(
"id" => "aaa" ,
"fruit" => "apple",
"cooking" => "rice",
)

このキーidの値(aaa)に配列を使いたいわけです。

$id_hairetu = array("aaa", "bbb","ccc")

$params[] =array(
"id" => "$id_hairetu" ,
"fruit" => "apple",
"cooking" => "rice",
)

のようにしたいのですが、うまく行きません。わかりづらくてすみません
どなたかご指導のほどお願い致します。
コメント1件

808
デフォルトの名無しさん[sage]   投稿日:2015/10/10 16:01:10  ID:wKf2WBeU.net(5)
>807
それは, 代入後に$id_hairetuの値を変えた場合に$paramsの値も連動して変わるようにしたいということなのか, 或いは単に代入時の$id_hairetuの値をコピーしたいだけなのか
コメント1件

809
デフォルトの名無しさん[sage]   投稿日:2015/10/10 16:11:20  ID:onaXIcy1.net(4)
>808
後者です。
代入時に$id_hairetuの値をコピーしたいのです。。
コメント1件

810
デフォルトの名無しさん[sage]   投稿日:2015/10/10 16:14:28  ID:wKf2WBeU.net(5)
>809
そんなんだったら

$id_hairetu = array("aaa", "bbb","ccc");

$params =array(
&nbsp;&nbsp;"id" => $id_hairetu,
&nbsp;&nbsp;"fruit" => "apple",
&nbsp;&nbsp;"cooking" => "rice",
);

でいいじゃん

811
805[sage]   投稿日:2015/10/10 16:15:19  ID:wKf2WBeU.net(5)
今は&もエスケープされるのか

$id_hairetu = array("aaa", "bbb","ccc");

$params = array(
"id" => $id_hairetu,
"fruit" => "apple",
"cooking" => "rice",
);

812
デフォルトの名無しさん[sage]   投稿日:2015/10/10 16:53:54  ID:onaXIcy1.net(4)
>,805>811
ありがとうございます。

そのまま配列(id_hairetu)を代入したところ
idに3つめの"ccc"しか代入されませんでしたorz

params[0][id]=aaa
params[0][fruit]=apple
params[0][cooking]=rice

params[1][id]=bbb
params[1][fruit]=apple
params[1][cooking]=rice

params[2][id]=ccc
params[2][fruit]=apple
params[2][cooking]=rice

のようにしたいわけです。。
コメント1件

813
デフォルトの名無しさん[sage]   投稿日:2015/10/10 17:12:22  ID:wKf2WBeU.net(5)
foreachでも書けるけど

$params = array_map(function($i){return array('id' => $i, 'fruit' => 'apple', 'cooking' => 'rice');}, $id_hairetu);
コメント1件

814
デフォルトの名無しさん[sage]   投稿日:2015/10/10 17:56:56  ID:NbY3/Ke0.net(2)
>812 みたいな事よく起こるけどこれってなんでなんだろう?

815
デフォルトの名無しさん[sage]   投稿日:2015/10/10 17:59:48  ID:onaXIcy1.net(4)
>813
解決できました
ありがとうございます!

816
デフォルトの名無しさん[sage]   投稿日:2015/10/10 21:38:47  ID:LXdnro1p.net
visualstudioでphpを使えるの?
コメント1件

817
デフォルトの名無しさん[sage]   投稿日:2015/10/11 00:44:08  ID:Fm9fNPIx.net(2)
>816
はい使えます
コメント1件

818
デフォルトの名無しさん[sage]   投稿日:2015/10/11 01:19:29  ID:KbfkRHMw.net(3)
>817
デバッグは出来るの?
コメント1件

819
デフォルトの名無しさん[sage]   投稿日:2015/10/11 01:45:44  ID:Fm9fNPIx.net(2)
>818
はい出来ます

820
デフォルトの名無しさん[sage]   投稿日:2015/10/11 03:45:07  ID:c+Go0B7k.net(2)
VSでphp使う意味は?
コメント1件

821
デフォルトの名無しさん[sage]   投稿日:2015/10/11 05:56:49  ID:CC31UwIt.net
VSの話題なんて全然なかったのに同一人物がずっときいてんの?
板を移動した弊害?

822
デフォルトの名無しさん[sage]   投稿日:2015/10/11 07:05:41  ID:KbfkRHMw.net(3)
>820
普通は何を使うの?
コメント1件

823
デフォルトの名無しさん[sage]   投稿日:2015/10/11 08:37:01  ID:c+Go0B7k.net(2)
>822
質問を質問で返さないでもらえますか?
コメント2件

824
デフォルトの名無しさん[sage]   投稿日:2015/10/11 08:55:57  ID:HRXjUTC6.net
>823
PHPの開発にVSを使う意味を聞きたいのではなく、
VSでPHPを使う意味を知りたいって不思議な気もするよ

825
デフォルトの名無しさん[sage]   投稿日:2015/10/11 09:48:17  ID:KbfkRHMw.net(3)
>823
なぜですか?

826
デフォルトの名無しさん[sage]   投稿日:2015/10/11 10:51:19  ID:LbFd/0K7.net
VSスレで聞いて

827
デフォルトの名無しさん[sage]   投稿日:2015/10/12 07:03:36  ID:0McaFoKh.net
IDEなんて第三者が拡張できるようにしてることが多いんだから
何が出来るかなんてプラグイン次第だろ
デバッグなんてIDEの中核機能の1つとして当たり前に搭載されてるものであって
使うような仕組みそのものが用意されてないならただのエディタだ

828
デフォルトの名無しさん[sage]   投稿日:2015/10/13 07:32:40  ID:QMMb6qGP.net
クロージャーについてうまく理解していないんですが、phpにおいて、クロージャーを使用するメリットってなんですか?
いろいろ見てたのですが javascriptではかなりメリットがありそうですが、privateやクラスが実装されているphpでは使う意味が無いようにすら感じられます・・・
(´・ω・`)なんでこんなの使うの?
コメント1件

829
デフォルトの名無しさん[sage]   投稿日:2015/10/13 08:34:08  ID:IKf0MrqG.net(2)
スコープがどこであれ名あり関数定義は少ないほうがいい

普通の関数・クラスと違ってuseが使えるからcallback関数で使うのに便利
preg_replace_callbackの第二引数とかには、普通の関数じゃ自動で渡される$match以外は、値を引き渡せない
だから定数、global、singletonを使わざるを得ないように見えるけど無名関数ならいける
コメント1件

830
デフォルトの名無しさん[sage]   投稿日:2015/10/13 11:22:13  ID:K3Va9rOK.net
>829
無名関数とクロージャは違う。 たぶん違うと思う。

831
デフォルトの名無しさん[sage]   投稿日:2015/10/13 12:20:21  ID:DtUJdHVx.net(2)
便乗だけど

http://qiita.com/hugo-sb/items/3e344486658e3cfbd407
>このサンプルのような単純なケースの場合、静的変数を利用しても同様な処理は記述できますが、
>クロージャーを利用することでカウンターを保持する変数を関数内に閉じ込めることででき、
>また以下のように複数のカウンターを生成することも容易です。

複数のカウンター生成はそうなんだけど、カウンターを保持する変数を関数内に閉じ込めることができって、
別にstaticでも閉じ込められるよね?

function mycount() {
static $cnt;
++$cnt;
return $cnt;
}
echo mycount(); //1
echo mycount(); //2
echo mycount(); //3
echo $cnt; //エラー undefined var

閉じ込めてるってこういうことじゃなくて?
コメント2件

832
デフォルトの名無しさん[sage]   投稿日:2015/10/13 12:28:37  ID:MwC2t3jo.net
>831
それだとその関数のインスタンス(というのか分からんが)がひとつしか取れないじゃん。
変数の実体が隠蔽されてるというだけでグローバル変数と変わらない。
コメント1件

833
デフォルトの名無しさん[]   投稿日:2015/10/13 12:49:09  ID:7qM/SX9p.net(2)
【OS名】Win7
【PHPのバージョン】5.6
【質問内容】
文字列の一部分だけを置換したく以下のようなコードを書きました。
// 最初の"ほげ"を"hoge"に置換
$hoge = "ほげほげ";
$begin = mb_strpos($hoge, "ほげ");
$end = mb_strpos($hoge, "ほげ", $begin + 1);
$hoge2 = substr_replace($hoge, "hoge", $begin, $end - $begin);
print_r($hoge2);

当然といえば当然なのですが出力が文字化けしてしまいます。
substr_replaceのマルチバイト版を使おうと思ったらmb_substr_replaceは定義されておらず、
mb_ereg_replaceを使ってみたらすべての一致部分が置換されてしまいました。
マルチバイト文字を含む文字列の一部分置換を実現したい場合はどのようにすれば良いでしょうか?

834
デフォルトの名無しさん[sage]   投稿日:2015/10/13 12:57:31  ID:N777J+eM.net
preg_replace
ereg系は非推奨だからできれば使わない
コメント2件

835
デフォルトの名無しさん[sage]   投稿日:2015/10/13 13:01:34  ID:jBFoqp2r.net
>831
> 複数のカウンター生成はそうなんだけど、カウンターを保持する変数を関数内に閉じ込めることができって、
> 別にstaticでも閉じ込められるよね?

staticだと初期化できない(再び0からスタートすることができない)。
コメント1件

836
デフォルトの名無しさん[sage]   投稿日:2015/10/13 13:16:22  ID:7qM/SX9p.net(2)
>834
それで出来ました。ありがとうございます。

837
デフォルトの名無しさん[sage]   投稿日:2015/10/13 13:32:15  ID:IKf0MrqG.net(2)
そりゃ関数引っ張ってくるたび、その時useで引き渡した変数を保持してくれるけど
状態を持つインスタンスかインスタンスのような何かが欲しいだけだったら
単にcounterクラスを作って適宜newして作ってくれ、複数欲しけりゃ複数newしてくれ、初期化したかったら->init()作ったから使ってくれ、でもいいわけさ

だから>828はいろいろ見た結果、classがありゃ別に良くね?と思ったんだろうと考えた
他の言語ともそうだけどjavascriptのクロージャとphpのクロージャとは違うし
となるとあとはクロージャの元々の「親のスコープの変数を(呼び出し時に引数で渡されなくても)持ってこれる」点かなと
なんかヘンだろうか

>834
どうでもいいけどmb_ereg_replaceって非推奨なってないんじゃね?POSIXなeregと違ってバイナリセーフだから

838
デフォルトの名無しさん[sage]   投稿日:2015/10/13 19:41:25  ID:DtUJdHVx.net(2)
>832 >835
ありがとう。イメージつかめた。
変数を閉じ込めるだの変数の初期化だのってのは文字通りの意味ではなくて、
カウンターを別インスタンスにするってことか。
コメント1件

839
デフォルトの名無しさん[sage]   投稿日:2015/10/13 19:55:55  ID:lKovNds8.net
>838
それならクラスでもいいんだけど、大事なのは、、まぁやってりゃそのうち気づくと思うのでどうぞクロージャを。
コメント1件

840
デフォルトの名無しさん[sage]   投稿日:2015/10/13 20:54:24  ID:2Lm5yRxi.net
ガールズちゃんねるみたいな掲示板って、phpで作れる?

841
デフォルトの名無しさん[sage]   投稿日:2015/10/14 02:01:02  ID:QSQe/OJj.net
そんな質問してるようじゃ無理

842
デフォルトの名無しさん[]   投稿日:2015/10/14 05:35:18  ID:FCUQuge3.net
ファミコンゲームの開発に
PC-9801とか使ってたのは
どういう理屈で可能だったの?
(´・ω・`)

843
デフォルトの名無しさん[sage]   投稿日:2015/10/14 10:26:53  ID:vwkn6oKu.net
>839
つまりクロージャーのメリットはないんですね

844
デフォルトの名無しさん[sage]   投稿日:2015/10/14 17:31:47  ID:yK3lkgWZ.net
聞き出せなかったね

845
デフォルトの名無しさん[sage]   投稿日:2015/10/16 00:34:09  ID:3nqUFkcM.net
PHPにおいてクロージャのメリットはほぼ無いと思う。
PHPでは無名関数とか無名クラスとしてしか使い道ないよ。
コメント1件

846
デフォルトの名無しさん[sage]   投稿日:2015/10/16 01:24:59  ID:Z14D5oxv.net
>845
無名クラスはともかく無名関数とは比較にならないだろう

847
デフォルトの名無しさん[sage]   投稿日:2015/10/17 11:15:26  ID:CvIjhw+d.net
クロージャ言ってるけど公式的には無名関数なんだけどね

その公式からして
定義された時のスコープは参照できないけど
スコープにある変数は参照できるからクロージャとも名乗ってよくね?
なんてこまけぇこたぁいいんだよ理論で
クロージャと自称してるから仕方ないけど

848
デフォルトの名無しさん[sage]   投稿日:2015/10/17 17:09:50  ID:44Ma41Lx.net(2)
文字列のうちマルチバイト文字だけurlencodeするにはどうすればいいですか?
コメント1件

849
デフォルトの名無しさん[sage]   投稿日:2015/10/17 17:26:07  ID:VIGRJF+u.net
>848
マルチバイト文字だけにマッチする正規表現で preg_replace_callback とか?
コメント1件

850
デフォルトの名無しさん[sage]   投稿日:2015/10/17 22:48:49  ID:44Ma41Lx.net(2)
>849
マルチバイトだけ抜き出す肝心の方法がわからないんです
と思ったけどよく考えたらASCII除外とほぼ同じなんだからこれで大丈夫…なんですかね
preg_replace_callback(
  '/[^ -~]+/',
  function($matches){return urlencode($matches[0]);},
  mb_convert_encoding($string, 'UTF-8', 'auto')
);
コメント2件

851
デフォルトの名無しさん[sage]   投稿日:2015/10/18 06:04:12  ID:F4Gg11pg.net
>850のコード書く時どうやって書く?

自分的には

preg_replace_callback('/[^ -~]+/', function($matches){
  return urlencode($matches[0];
}, mb_convert_encoding($string, 'UTF-8', 'auto'));

なんだが
コメント1件

852
デフォルトの名無しさん[sage]   投稿日:2015/10/18 18:05:17  ID:H4W8oY2a.net
マルチバイト文字だけにマッチする正規表現かよ!

853
デフォルトの名無しさん[sage]   投稿日:2015/10/18 19:17:40  ID:wjDoFuRU.net
>850
mb_substrで一文字ずつ切り出してstrlenでバイト数 > 1の場合にurlencodeするとかどうでしょう

854
デフォルトの名無しさん[sage]   投稿日:2015/10/18 20:14:14  ID:5Pr0yIMd.net
1<strlen($string)よりisset($string{1})のほうが早くないか
と思って試したけど5%も違わなかった

855
デフォルトの名無しさん[sage]   投稿日:2015/10/18 22:47:05  ID:X/2nKuj7.net
>851
構文エラー埋め込んだだけにしか見えないけど、改行の話?

856
デフォルトの名無しさん[sage]   投稿日:2015/10/19 08:47:23  ID:teI61ugJ.net
書き方なんて文脈とコーディング規約と売り方に合わせりゃいいんだよ

857
デフォルトの名無しさん[sage]   投稿日:2015/10/20 03:21:23  ID:1/bgAIX6.net
file get contentsでスクレイピングする時、クローラーじゃなくてブラウザと同じヘッダを送りたいんだけどどうすればいいの?
コメント1件

858
デフォルトの名無しさん[sage]   投稿日:2015/10/20 03:34:12  ID:+JqN1HNW.net

859
デフォルトの名無しさん[sage]   投稿日:2015/10/20 16:59:27  ID:5+o2HAea.net(2)
ブースター飛距離が足りないとお嘆きのアナタに!!

860
デフォルトの名無しさん[sage]   投稿日:2015/10/20 17:01:12  ID:5+o2HAea.net(2)
ごばくごめん

861
デフォルトの名無しさん[sage]   投稿日:2015/10/21 19:42:02  ID:g4C44bEN.net(2)
起動するとウインドウが次々出てくるプログラムって作れたよね?
それを開くとウイルスみたいにクラッシュかフリーズするまで止まらないやつ
テキストファイルで作った記憶があるんだけど作り方知ってる人いませんか?

862
デフォルトの名無しさん[sage]   投稿日:2015/10/21 19:43:44  ID:g4C44bEN.net(2)
↑オフラインのPCでも起動できるからブラクラとはちょっと違ったはずなんだ

863
デフォルトの名無しさん[]   投稿日:2015/10/22 10:22:28  ID:CeSwqlxw.net
javascriptだろ、今はpopup禁止の設定多いから
自分で試すならそれ切ってな

864
デフォルトの名無しさん[sage]   投稿日:2015/10/22 16:54:44  ID:RFoUDNFf.net
>オフラインのPC
ブラクラの意味がわかってないようだなw

865
デフォルトの名無しさん[sage]   投稿日:2015/10/22 18:02:07  ID:/aknw9nT.net
スレチ

866
デフォルトの名無しさん[sage]   投稿日:2015/10/23 12:53:16  ID:pBHgjBfA.net(2)
ちょっと前にphpの無名関数の話が出てたけど

useで持ってこれる親の変数はあくまで無名関数が定義されたときの変数の中身で
そんで親の変数に対しての参照を持ってるわけじゃないから
例えば $counter=0; $func = function()use($counter){ ... ++$counter; ... }; とかしても
func();で呼ばれたときに$counterはfunc()内では常に0で始まり、
親側の$counterもfunc()によって増減しないしfunc()定義後に親の$counterが動いてもfunc()内では常に0で始まる

親の変数を持ってくるだけならいいけど、親と共有したいなら静的変数やグローバルを使うかcallbackと無名関数を使わないでwhileで直接まわしたりする
こういう挙動は、こういうものなの?、それともphpのコンパイラの都合?
コメント1件

867
デフォルトの名無しさん[sage]   投稿日:2015/10/23 14:26:29  ID:9JJo3sM8.net
>866
$func = function() use(&$counter) {}
コメント1件

868
デフォルトの名無しさん[sage]   投稿日:2015/10/23 15:25:14  ID:pBHgjBfA.net(2)
>867
悪い参照渡し頭からすっぽ抜けてた

869
デフォルトの名無しさん[sage]   投稿日:2015/10/27 18:08:57  ID:kr0AuHv9.net
どうでもいいけどシコった後って眠くなるよな
俺?今まさにその状態

870
デフォルトの名無しさん[sage]   投稿日:2015/10/27 23:44:48  ID:B8WGR4ja.net
$dt = new DateTime();
var_dump($dt);
これ
class DateTime#2 (3) {
public $date =>
string(26) "2015-10-27 23:42:06.000000"
public $timezone_type =>
int(3)
public $timezone =>
string(10) "Asia/Tokyo"
}
って表示されますが
このdate,timezone_type,timezoneの値はどうやって取得するんですか?
$dt->dateだとエラーになりました
コメント4件

871
デフォルトの名無しさん[]   投稿日:2015/10/27 23:51:35  ID:lR1b6/iE.net
【OS名】CentOS
【PHPのバージョン】5.5
【連携ソフトウェア】なし

【質問内容】
__get()や__set() はどうして遅いの?
コメント1件

872
デフォルトの名無しさん[sage]   投稿日:2015/10/27 23:58:28  ID:jZAx/6LC.net
>870
getTimezoneメソッドやgetTimestamp, formatメソッド

873
デフォルトの名無しさん[sage]   投稿日:2015/10/28 00:00:10  ID:EtBJvyZs.net
>871
ドライブがSSD
もしくはリードオンリー
ライブラリのオモフク
require多発
DNS周りの設定の時もある

いろいろあるで
まず切り分けせなあかんな

874
デフォルトの名無しさん[sage]   投稿日:2015/10/28 00:39:29  ID:i3wzfLRw.net(2)
>870
echo $dt->date;
自分の環境ではこれで普通に表示されたよ。
何か別のエラーじゃないの?つーかそのエラーを書くべき。
まあformatメソッドを使うべきだけど。

$dt = new DateTime();
var_dump($dt);
echo '<br><br>';
echo $dt->date;

875
デフォルトの名無しさん[sage]   投稿日:2015/10/28 00:44:20  ID:i3wzfLRw.net(2)
class DateTime#2 (3) {
ってなってるからこれならどう?
echo $dt::date;

876
デフォルトの名無しさん[sage]   投稿日:2015/10/28 02:11:40  ID:Gr82QenC.net
>870
iniファイルちゃいますの

877
デフォルトの名無しさん[sage]   投稿日:2015/10/28 02:15:59  ID:tfmfu5HE.net(2)
あれ
$dt = new DateTime();
var_dump($dt);
echo $dt->date;
ってやるとエラーがでませんでした
しかし
$dt = new DateTime();
echo $dt->date;
だとPHP Notice: Undefined property: DateTime::$date

getTimezoneメソッドやgetTimestamp, formatでも取得できますが
phpの仕様としてはpublicな変数に->でアクセスできるはずなので
コメント2件

878
デフォルトの名無しさん[sage]   投稿日:2015/10/28 02:16:57  ID:tfmfu5HE.net(2)
PHP 5.6.8

879
デフォルトの名無しさん[sage]   投稿日:2015/10/28 03:03:50  ID:Li6zvEko.net

880
デフォルトの名無しさん[sage]   投稿日:2015/10/28 04:21:08  ID:cCNG5eR4.net
>877
DateTimeはプロパティを列挙するタイミングでそれらのプロパティをセットする
かと言って読み書きする事を前提にした実装にはなっていない
互換性のためか何か理由があるんだろうけど
ぶっちゃけ不具合みたいなものだから使ってはいけない

881
デフォルトの名無しさん[sage]   投稿日:2015/10/28 09:26:04  ID:fdp+6Zs/.net
>877
マニュアルに書いてないものは存在しないものとみなすべき

882
デフォルトの名無しさん[]   投稿日:2015/10/28 11:45:24  ID:KIgU+Tc4.net(3)
POSTされたデータを$_POSTや$_REQUESTじゃなくて生のまま受け取る方法ってある?
GETはわかる$_SERVER["QUERY_STRING"]がある

883
デフォルトの名無しさん[sage]   投稿日:2015/10/28 11:56:41  ID:KIgU+Tc4.net(3)
健全でない言葉が含まれているため表示しません 内容を確認する

884
デフォルトの名無しさん[]   投稿日:2015/10/28 12:57:25  ID:WdTv92Vj.net
んんんんっwwwwwwwwww

んんwwwwwwwwwwwwwwwwwwwwwww

んんんんんんんんんっwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

885
デフォルトの名無しさん[]   投稿日:2015/10/28 20:35:52  ID:obxDMXos.net
usernamekana1を半角カナオンリーにしたいので
↓のようにやっていますが

$usernamekana1=str_replace(array(" ", " ",'.','-',"\t","\r\n","\r",
"\n",'<','>'), "", $firstname_kana);
//↑半角カナ以外
$usernamekana1=mb_convert_kana($usernamekana1,hks);//なので

我ながら不恰好ですので良い表現方法ありませんでしょうか?

ご教授頂けますようよろしくお願いしますm(_ _)m
コメント1件

886
デフォルトの名無しさん[sage]   投稿日:2015/10/28 21:24:10  ID:KIgU+Tc4.net(3)
>885
文字コードと$usernamekana1に入りうる文字によるが
preg_*で文字コードから正規表現で範囲指定して全角かな全角半角カナだけ取ってきて処理する手法がある
どっちが早いかは状況次第
コメント1件

887
デフォルトの名無しさん[sage]   投稿日:2015/10/29 20:34:13  ID:b5qdY+6i.net
($time=time()).','.date('Y/m/d H:i:s', $time)

とか

$pos = 0;
while( ($pos=strpos($string, $needle, $pos+1)) !== false ){ ... }

みたいな評価順序を利用した書き方って使わないほうがいい?
可読性とコーディング規約が許すなら別に問題ない?
コメント1件

888
デフォルトの名無しさん[sage]   投稿日:2015/10/29 21:35:18  ID:bUytiJ2C.net(2)
その条件なら問題ないよ

889
デフォルトの名無しさん[sage]   投稿日:2015/10/29 21:45:42  ID:GhGzx96S.net
>889
直観的でないな。読みづらい。
コメント1件

890
デフォルトの名無しさん[sage]   投稿日:2015/10/29 21:56:39  ID:mJa4MfsR.net
>889
自虐かよ

891
880[]   投稿日:2015/10/29 22:10:07  ID:wwuM8Qzg.net
>881さん
コメントありがとうございます。

すいません。
ググったのですがサンプルが見つからないので
半角カナ以外すべて$usernamekana1から消す方法は

$usernamekana1=mb_convert_kana($usernamekana1,hks);

↓みたいな関数があれば良いのですけど……
$usernamekana1=mb_convert_kigou_dell($usernamekana1);

遅くても良いので良い方法をご助力頂けないでしょうか?
コメント3件

892
デフォルトの名無しさん[sage]   投稿日:2015/10/29 22:40:27  ID:bUytiJ2C.net(2)
>891
ぐぐったけどサンプルが見つからないっていうのが、
>886の方法をやらなかった理由?

893
デフォルトの名無しさん[sage]   投稿日:2015/10/29 23:53:04  ID:ZblI1NQd.net
>891
記号を削除するんじゃなくて、半角カナになる文字だけ取り出す操作の方がいい。
コメント1件

894
デフォルトの名無しさん[sage]   投稿日:2015/10/29 23:54:40  ID:zirA75NK.net
>887
前者はコードゴルフが目的でなければ止めた方が良い
whileの書き方は定石なので問題ない

895
デフォルトの名無しさん[sage]   投稿日:2015/10/30 00:00:30  ID:A2BJ2A1c.net(3)
>893
対象だけ取り出すって面倒じゃない?preg_replaceで対象以外取り除けば1回で済むけど

896
デフォルトの名無しさん[sage]   投稿日:2015/10/30 12:34:45  ID:+QhXPTHH.net(2)
function mb_convert_kigou_dell($usernamekana1) {
mb_regex_encoding('UTF-8');
mb_internal_encoding('UTF-8');
$str = mb_convert_kana($usernamekana1, 'hks');
$str = preg_replace('/[^ヲ-゚]/u', '', $str);
return $str;
}
コメント1件

897
デフォルトの名無しさん[sage]   投稿日:2015/10/30 12:38:57  ID:AKFcUkih.net
変な関数名つけてくると思ったらやっぱ英語怪しい人かよ
コメント1件

898
デフォルトの名無しさん[sage]   投稿日:2015/10/30 13:00:11  ID:+QhXPTHH.net(2)
>897
ごめんなさい。
お手本のコードをぜひ見せてください。
コメント1件

899
デフォルトの名無しさん[]   投稿日:2015/10/30 15:22:31  ID:sATRB+gZ.net(2)
PDOのプレースホルダで、bindParamの値に(int)0で渡すと空白で置き換えてくれちゃうんですけど、回避方法ありますか?

$value = 0;
bindParam(':name', $value, PARAM_INT);

こんな感じです
コメント2件

900
デフォルトの名無しさん[sage]   投稿日:2015/10/30 15:46:55  ID:RESFqDek.net
kigou_dell
んんん???

901
デフォルトの名無しさん[sage]   投稿日:2015/10/30 17:11:04  ID:SCV1iGnU.net
>899
PDO::PARAM_INTでないのか
コメント1件

902
デフォルトの名無しさん[sage]   投稿日:2015/10/30 17:18:48  ID:sATRB+gZ.net(2)
>901
すみません
投稿時の書き間違えです
PDO::PARAM_INT
でやってもint型の0が無視されるんです

ちなみにstring型の'0'ならちゃんと変換されます

903
デフォルトの名無しさん[sage]   投稿日:2015/10/30 17:34:24  ID:qHOKDsW1.net
DB側の型がintならデフォルトを0にすっぺ

904
デフォルトの名無しさん[sage]   投稿日:2015/10/30 17:51:06  ID:5biB/KHY.net
>898
横からスマンがdellって何の略?
コメント1件

905
デフォルトの名無しさん[sage]   投稿日:2015/10/30 18:11:21  ID:A2BJ2A1c.net(3)
>896
別解として入力バリデーションで既にUTF-8の全角カナ半角カナひらがなと半角記号しかないのが確定してるとかなら
$str = preg_replace('/[\x00-\x73]/', '', $str); などとすれば半角記号だけ除去ができて'/[^ヲ-゚]/u'よりちょっとはやい
ブラックリスト方式も早くて良いと思うんだけどだからまあ状況と要求次第

しかしUTF-8で半角カナは…データサイズの利点が無いから文字幅が狭くなる利点しかないんじゃないのか

906
デフォルトの名無しさん[sage]   投稿日:2015/10/30 18:43:31  ID:A2BJ2A1c.net(3)
>899
空白になってるのをどう確認したのかよくわかんないけど (int)($value) で引き渡せば
…ってのはおいといてPDO::bindParamじゃなくてPDO::bindValue使ってみたら?

907
デフォルトの名無しさん[sage]   投稿日:2015/10/30 19:30:55  ID:j3BSCHnJ.net
>904
何だろうね? >891 に聞いてみて。

↓みたいな関数があれば良いのですけど……
$usernamekana1=mb_convert_kigou_dell($usernamekana1);

908
デフォルトの名無しさん[sage]   投稿日:2015/10/31 02:23:28  ID:DFwcARkZ.net
PhpStormでCtrl+[がDeclarationになっているの外せないのかな?
Keymapで見ても、Command+BしかDeclarationには割り当てられていないんだけど。。
なぜか効いてしまいます。

909
デフォルトの名無しさん[]   投稿日:2015/10/31 11:45:31  ID:aFSNNsaQ.net(2)
【OS名】windows8.1
【PHPのバージョン】5.3.5
【連携ソフトウェア】MySQL
【質問内容】
初心者です。やりたことはチャットに画像アップ機能をつけたくて、画像はmySQLに保存します。
教えていただきたいことはいくつかあるのですが、長くなるので一つずつお願いします。

画像の保存は出来たのですが、表示されません。
が、そもそもほんとに正しく保存されてるのか?が謎なのですが、

テーブル内のフィールドは、
up mediumblob //画像用
ext varchar(5) //拡張子用

で、 upに [BLOB - 3.2KiB]
   extに jpg
   
と書き込まれています。これは正常に保存されているということで良いのでしょうか?
よろしくお願いします。
コメント2件

910
デフォルトの名無しさん[sage]   投稿日:2015/10/31 12:17:55  ID:t/jaIjM4.net
どっちみち取り出さないといけないんでしょ?
取り出してみればわかることを聞くんじゃありません
コメント1件

911
デフォルトの名無しさん[]   投稿日:2015/10/31 12:43:10  ID:aFSNNsaQ.net(2)
>910 さん、 >909です。
お返事ありがとうございます。 す、すみません!!表示出来ないのはもしかして、 読み込み側のコードではなく、そもそも書き込みが正しく出来てなかったからとか? と思ったものですから。

それでは読み込みのコードでおかしいところがあったら教えてください。

display.php

<?php
if (isset($_GET["id"])) { $id = $_GET["id"]; }

//データベース接続

// up-typeテーブル
$up_type = array( 'jpg' => 'image/jpeg', 'jpeg' => 'image/jpeg', 'png' => 'image/png', 'gif' => 'image/gif');

$sql = sprintf(" SELECT up,ext FROM chat_tbl WHERE id=:id ORDER BY datetime DESC ");
$str = $dbh->prepare($sql);
$str->bindParam(':id', $id);
$str->execute();
if($str)
{
while($result = $str->fetch(PDO::FETCH_ASSOC)){ header('Content-type:'. $up_type[$result->ext]);
echo $result['up'];
} }
?>

エラーメッセージ等は後からでもいいかと思って入れてません。あと、ここに一度書き込みしたのですが、改行が多すぎるてエラーが出たのでデータベース接続は省いてあとも詰めて書いてます。読みにくかったらすみません。
よろしくお願いいたします。
コメント3件

912
デフォルトの名無しさん[sage]   投稿日:2015/10/31 13:01:23  ID:6kMgLpUU.net
改行が多すぎるエラーなんかはじめてきいたな

913
デフォルトの名無しさん[sage]   投稿日:2015/10/31 13:04:25  ID:eolGIlKB.net(4)
PHPじゃなく、2chの表示だろ
コメント1件

914
デフォルトの名無しさん[sage]   投稿日:2015/10/31 13:55:27  ID:iQz1e3kF.net
>911
もしかしてだけど、imgタグのsrcにechoしないとイケないんじゃないの
コメント1件

915
デフォルトの名無しさん[]   投稿日:2015/10/31 15:14:45  ID:OlIi4vyD.net(2)
ワードプレス専用スレってありませんか?
またないとしたらどこで質問するのがベストですか?

916
デフォルトの名無しさん[]   投稿日:2015/10/31 15:25:07  ID:cNb0xpTQ.net(2)
>909(>911)です。
書き方がわかりにくくてすみません、>913さんが書いてくださってるように、2chでのエラー表示えdす。

>914さん、コメントありがとうございます。

最終的に表示するのは、chat.phpで、

$str= $dbh->query('select * from chat_tbl order by dateTime desc');
if($str){
while($result = $str->fetch(PDO::FETCH_ASSOC)){
echo "{$result['handle']}>\n {$result['message']}:\n {$result['dateTime']}<br>\n";
$up = $result['up'];
if(!$up == "") {
echo "<img src = 'display.php'>\n";
} else{
echo "\n";
}
echo "<hr>\n";
} }

このようにしてますがこれでおかしいところがあったら教えてください。
ページを分けているのは、いろいろ調べたら、 header('Content-type:' がtextとimageと同じページ内に書いてはいけないので、画像用は別に書いてリンクさせるのが良い みたいにあったので、このようにしてみました。

で、これをブラウザで出力すると、画像アップした行には、画像であることを示すアイコンみたいなのが表示されてて、画像そのものは読み取れていません。
display.phpのページをURLをアドレスに入力して表示させると真っ白で何もありません。エラーメッセージ等も出てません。

よろしくお願いいたします。
コメント3件

917
デフォルトの名無しさん[sage]   投稿日:2015/10/31 15:25:46  ID:eolGIlKB.net(4)
WordPress(ワードプレス)でWebProg 質疑応答スレ 01 /WebProg板

こういうスレがあるけど、住民がいるかどうかは分からない
コメント1件

918
デフォルトの名無しさん[sage]   投稿日:2015/10/31 15:33:20  ID:eolGIlKB.net(4)
>916
>表示させると真っ白で何もありません。

この状態でソースを見るとどうなってるのかな?
ブラウザの機能で「ソースをみる」ってあるでしょ。
IEなら、メニューの「表示」「ソース」
FFなら、右クリック「ページのソース」
コメント1件

919
デフォルトの名無しさん[sage]   投稿日:2015/10/31 16:02:36  ID:WDNhA6EE.net(3)
>916
とりあえずdisplay.phpで,

while($result = $str->fetch(PDO::FETCH_ASSOC)){ header('Content-type:'. $up_type[$result->ext]);
echo $result['up'];
}

としている部分が理解不能。
画像ファイルのヘッダとか見たことあればレスポンス1件につき1つの画像ファイルしか返せんことは分かると思うが。

あとファイル末尾の ?> はバイナリを吐くときにゴミをつける可能性があるから無くすべき
コメント1件

920
デフォルトの名無しさん[]   投稿日:2015/10/31 16:13:55  ID:cNb0xpTQ.net(2)
>916です。
>918さん、お返事ありがとうございます!
ソースの方も真っ白というか、行番号を示す1というのが表示されているのみです。

>919さん。
具体的に書いてくださりありがとうございます!
すみません、画像ファイルのヘッダて見たことないです。1件しか表示できないんですか?では、アップしてるものをすべて表示するのって、どうすれば・・・ 何かヒントなどありましたら教えていただけるとありがたいです
コメント3件

921
デフォルトの名無しさん[sage]   投稿日:2015/10/31 16:24:03  ID:x63vysfN.net(4)
抽出されたのが0件なんじゃないの。

922
デフォルトの名無しさん[]   投稿日:2015/10/31 16:33:53  ID:OlIi4vyD.net(2)
>917
おーありがとうございます

923
デフォルトの名無しさん[sage]   投稿日:2015/10/31 16:35:12  ID:WDNhA6EE.net(3)
>920
display.phpにGETでもPATH_INFOでもなんでもいいが, 画像をidentifyするようなパラメータを付けて呼べばいい。
display.phpではidentifyされた画像ひとつだけを返せばよい

<img src="display.php?image_id=5">
コメント2件

924
デフォルトの名無しさん[sage]   投稿日:2015/10/31 16:39:19  ID:x63vysfN.net(4)
if (isset($_GET["id"])) { $id = $_GET["id"]; }
こう書いてるんだから image_id じゃなく id にしてあげなよ。
コメント1件

925
デフォルトの名無しさん[sage]   投稿日:2015/10/31 16:46:46  ID:WDNhA6EE.net(3)
データベース構造が分からんからidがユニークなのか分からんのだよなー, ユニークじゃない前提のコードが書かれてるし
コメント1件

926
デフォルトの名無しさん[sage]   投稿日:2015/10/31 16:53:29  ID:79rh8PzW.net
PHP書いてるとHTML/CSS/JSの絡みに困るんですけど模範的な設計とかデザインとかありますか?

927
デフォルトの名無しさん[sage]   投稿日:2015/10/31 17:03:45  ID:eolGIlKB.net(4)
>920
>911のところ

while($result = $str->fetch(PDO::FETCH_ASSOC)){ header('Content-type:'. $up_type[$result->ext]);

$result->ext を $result['ext'] に直してみて
コメント1件

928
デフォルトの名無しさん[sage]   投稿日:2015/10/31 17:10:16  ID:x63vysfN.net(4)
>925
ユニークじゃなければエラーになるんだからユニーク前提のコードとも取れる

929
デフォルトの名無しさん[]   投稿日:2015/10/31 17:15:32  ID:mOngkuFS.net
>920です。
お答えくださったみなさん、ほんとにどうもありがとうございます!

今は携帯からで、パソコンはまた明日のお昼間じゃないと使えないので、明日になったら書いていただいたことを試してみます!

それと、idがユニークかどうかについてですが、よくわかってないので勘違いだったらすみませんが、unsigned(綴り違ったかも) にしてます。これも、ネットであちこち見て真似てやってて、実際は意味がわかってません。恐縮です。
コメント2件

930
デフォルトの名無しさん[sage]   投稿日:2015/10/31 17:25:11  ID:x63vysfN.net(4)
>929
つまるところ、一番の問題点は>923が指摘しているように、display.phpにパラメータを渡せていないところだよ。
コメント1件

931
デフォルトの名無しさん[sage]   投稿日:2015/11/01 02:58:07  ID:552PnYcn.net
wpってこんな脆いのか

932
デフォルトの名無しさん[]   投稿日:2015/11/01 13:59:01  ID:+r1Q/vRP.net
>929です。
みなさん、昨日はほんとにどうもありがとうございました。
ユニークについては私の勘違いでした。すみません。見てみたらプライマリーになってましたが(参考にさせてもらったところのをそのまま真似ました)ユニークの方が良いのでしょうか?

>927さんがご指摘くださった部分変更しました。ありがとうございました。

で、>923さん、>924>>さん、>930さんが書いてくださってることですが、

<img src="display.php?id=5"> に変えてみましたが、この5というのは何を表しているのでしょうか?
あと、display.phpの方には何か書き加えないといけないのでしょうか?
わかっていなくてすみません。
よろしくお願いいたします。
コメント2件

933
デフォルトの名無しさん[sage]   投稿日:2015/11/01 14:01:17  ID:csWYRkSJ.net
ここはお前専用サポート掲示板

934
デフォルトの名無しさん[sage]   投稿日:2015/11/01 15:19:06  ID:gG04aPZk.net
自分で適当なphp作って内容を
<?php
var_dump($_GET);
var_dump($_POST);
とかにして
ブラウザのURL欄やformやaタグからそれ指定して
いろいろパラメタ付けて、試してみたらどうよ

あまりにも初歩過ぎて回答するだけで文句言われそうなレベル

935
デフォルトの名無しさん[sage]   投稿日:2015/11/01 15:23:51  ID:SDYYiCdp.net(2)
ここは、「下らねぇ質問」を受け付けるスレだから

936
デフォルトの名無しさん[]   投稿日:2015/11/01 16:03:21  ID:HuBu2yBp.net
>932です。
質問がくだらなすぎてほんとに申し訳ありませんでした。
書いていただいたことを調べながらやってみます。

みなさんほんとにどうもありがとうございました。
コメント1件

937
デフォルトの名無しさん[sage]   投稿日:2015/11/01 16:08:27  ID:SDYYiCdp.net(2)
>936
気にしなくていいよ。がんばれ。分からないことが出てきたらまたおいで

938
デフォルトの名無しさん[sage]   投稿日:2015/11/01 17:06:51  ID:yUX6gb++.net
まぁ下らねぇ質問はしてよいけどID:SDYYiCdpが実践している通り答えてやる必要はないわけだ

939
デフォルトの名無しさん[sage]   投稿日:2015/11/01 21:41:39  ID:+B1USwRt.net
質問するのもいいが、評価の高い初心者向けの入門書を数冊読めばいいと思うよ

940
デフォルトの名無しさん[sage]   投稿日:2015/11/01 22:40:11  ID:5JJhe8Sb.net
下らねぇ質問で恐縮ですが
評価の高い初心者向けの入門者を数冊教えてください

941
デフォルトの名無しさん[sage]   投稿日:2015/11/02 01:22:25  ID:xRbtggrb.net
市販の入門書はあてにしないのがこのスレのスタイル
良書とよばれたものはPHP4世代のもので古すぎる
PHP習熟者が増えた今現在
初心者向けの良書とよばれるものはおそらくでないだろうな
といっといてなんだが困ったときにはオライリーでおk

942
デフォルトの名無しさん[sage]   投稿日:2015/11/02 01:25:14  ID:NvAhCpQZ.net
php.net読みまくっとけばいいさ

943
デフォルトの名無しさん[sage]   投稿日:2015/11/02 14:20:29  ID:jL3WrFnr.net
>932 は質問する前にちょっと勉強したほうがいいな・・・
多分入門書程度のレベルでも1冊読めばその程度のことは書いてあると思う・・・

944
デフォルトの名無しさん[]   投稿日:2015/11/04 13:54:42  ID:MLcKFTKO.net(3)
2chの公務員板に書き込みした時、確認画面とか書き込み後に変なコードが出たんだけど大丈夫

945
デフォルトの名無しさん[]   投稿日:2015/11/04 14:09:11  ID:MLcKFTKO.net(3)
不安。

946
デフォルトの名無しさん[sage]   投稿日:2015/11/04 14:12:18  ID:QKGer34/.net
変なコードでわかると思う?つうか2chはPerlじゃないのか
コメント1件

947
デフォルトの名無しさん[]   投稿日:2015/11/04 14:33:14  ID:MLcKFTKO.net(3)
そうか。
calledとか出てた。
さっき書き込んだ時も罠を仕掛けたとかゲームっぽい広告のテロップが出たんだけど。
対策お願いいたします。
iPhoneで書き込みました。
コメント1件

948
デフォルトの名無しさん[sage]   投稿日:2015/11/04 16:12:09  ID:+We5XBc9.net

949
デフォルトの名無しさん[sage]   投稿日:2015/11/05 04:05:37  ID:kMVTOBKu.net
>946
保守、運営を担当してた海外のプログラマらの手によって、
haskellで書き直されたんじゃなかった?

950
デフォルトの名無しさん[sage]   投稿日:2015/11/05 04:11:36  ID:TC0aybFH.net(2)
haskellで書き直したのはread.cgi(read.so)じゃなかったか
書き込みに使われるのはbbs.cgi、bbs.cgiは現状はCだったようなPerlだったような

どっちにしてもphpじゃないとは思うが

951
デフォルトの名無しさん[sage]   投稿日:2015/11/05 15:18:44  ID:l9p4qEU8.net
PHPとは少し関係ない質問かもしれませんが、何処で質問したら良いのか分からず・・・
フォームを作成しmb文字や改行コードを受け付ける時 文字コードや改行コードといった文字コードは何によって決定されるのでしょうか
WindowsやMac、Android等で入力されてきたデータは全て確認し、変換して格納する必要があるのでしょうか
(´・ω・`)変な質問してたらごめんね
コメント2件

952
デフォルトの名無しさん[]   投稿日:2015/11/05 15:27:31  ID:Xj8bJ8Es.net
>951
改行コードはクライアント側が設定します。

953
デフォルトの名無しさん[sage]   投稿日:2015/11/05 20:49:51  ID:9YM3Wel+.net
>951
>WindowsやMac、Android等で入力されてきたデータは全て確認し、変換して格納する必要があるのでしょうか

文字化け対策として、各ファイルの文字コードを統一しておけば、確認や変換は不要。
最近は、UTF-8で統一しておくのが主流だね。
もっとも、セキュリティの観点で、入力されたデータの文字コードが
不正でないかのチェックはしたほうがいい。

954
デフォルトの名無しさん[sage]   投稿日:2015/11/05 21:21:03  ID:TC0aybFH.net(2)
>文字化け対策として、各ファイルの文字コードを統一しておけば、確認や変換は不要。

えっ

955
デフォルトの名無しさん[]   投稿日:2015/11/09 14:53:03  ID:J2sa9vnc.net
〜(波ダッシュ)ShiftJis↔UTF間の変換、直してくれないかな
コメント1件

956
デフォルトの名無しさん[sage]   投稿日:2015/11/09 15:10:24  ID:Bvj183hS.net
>955
あれは Windows のが間違ってる
でもそれより Mac の濁点文字をなんとかしてほしい

957
デフォルトの名無しさん[sage]   投稿日:2015/11/09 15:44:17  ID:E71YiunB.net
濁点文字ってNFDのこと?

958
デフォルトの名無しさん[]   投稿日:2015/11/12 20:40:45  ID:pgvdnRZv.net
PHPのvar_dump()を他言語でも使えるように作ろうかと思うだけど、
var_dumpの内部構造どっかで見られない?
最近PHPやってなかったらどこ見ればいいか分かんなくなってしまった

959
デフォルトの名無しさん[sage]   投稿日:2015/11/12 23:14:53  ID:6DBAG3QU.net(2)
三項演算子をこんな感じでネストさせて使おうと思って

return ( $v === 0 ) ? 'hoge' :
     ( $v === 1 ) ? 'fuga' :
     ( $v === 2 ) ? 'foo' : 'default' ;

とりあえずテストしてみたらなんかおかしい、php.netみたらphpではこういう書き方できないのだと知った、今日この頃
おとなしくif分岐使いますわ…
コメント4件

960
デフォルトの名無しさん[sage]   投稿日:2015/11/12 23:29:03  ID:NEuWYquR.net
可読性が落ちるから、どの言語でも三項演算子のネストはご法度。
コメント1件

961
デフォルトの名無しさん[sage]   投稿日:2015/11/12 23:32:38  ID:5T+ZDMx8.net(2)
>959
カッコ使えばできるけど、それはお望みじゃないんだよね
コメント1件

962
デフォルトの名無しさん[sage]   投稿日:2015/11/12 23:35:46  ID:6DBAG3QU.net(2)
>961
うん
書くのが楽で、書き方に気をつければ見た目わかりやすいのが利点だから
それとももしや後ろに行くほどカッコが増えたりしない書き方できたりする?
コメント1件

963
デフォルトの名無しさん[sage]   投稿日:2015/11/12 23:41:21  ID:5T+ZDMx8.net(2)
>962
いや、カッコが増えていく
でも if を列挙するのもなんだかなって感じだよね
なんで PHP はこれを左結合にしたんだろうね

964
デフォルトの名無しさん[sage]   投稿日:2015/11/12 23:42:35  ID:L6COn33V.net
>960
少なくともCやJavaScriptの仕様なら>959は見た目すぐ分かるだろ。一般的に禁止もされてないと思うが。
PHPだけ?がへんてこな仕様な訳で。

GoogleのC++/JavaScriptのコーディング規約なら公開されているが、三項演算子についての言及はない。
http://www.textdrop.net/google-styleguide-ja/cppguide.xml#%E6%9D%A1%E4%BB%B6%E6%96%87
http://cou929.nu/data/google_javascript_style_guide/

965
デフォルトの名無しさん[sage]   投稿日:2015/11/13 01:04:13  ID:aSxPYOOa.net
>959
switch使え

966
デフォルトの名無しさん[sage]   投稿日:2015/11/13 01:20:05  ID:WtbCnw9P.net
厳密な比較をしてくれるswitchがあったら問題なかった
switch( true )を使うやつは冷凍豆腐に頭ぶつければいいと思う

phpの三項演算子が左結合なのは、ただ初期の設計ミスを見落としただけらしい
変えること自体はラクにできるけども、既存のソースとの兼ね合いで変えるに変えられないとか
コメント2件

967
デフォルトの名無しさん[sage]   投稿日:2015/11/13 01:26:59  ID:99szWd6E.net(2)
>966
気になって調べたらそうだったっぽいね。
しかしこの左結合を有効利用してるコードなんてあるんだろうか。
せめてコンフィギュレーションできるようにすりゃいいのに。
あるいは文末に来る閉じカッコを省略できるようにしてもいいかも。
そうすりゃこんな書き方で対応できる。

return ( $v === 0 ) ? 'hoge' :
     ( ( $v === 1 ) ? 'fuga' :
     ( ( $v === 2 ) ? 'foo' : 'default' ;

閉じカッコ省略はカシオのポケコンで取り入れられてたけど、結構便利なんだよなぁ
コメント1件

968
デフォルトの名無しさん[sage]   投稿日:2015/11/13 01:34:14  ID:Zno4BFZq.net
ギエピー!!PHP初心者が学べるサイトやツールなど教えてくれピー!!

969
デフォルトの名無しさん[sage]   投稿日:2015/11/13 11:22:00  ID:q2jJ+eFR.net
>966
switch(true)が害悪な理由がわからんヘタクソなんで
理由を教えて下さい。
コメント1件

970
デフォルトの名無しさん[sage]   投稿日:2015/11/13 11:55:54  ID:iyo8Ja05.net(3)
>969
ケースを羅列したいのに出来ないから生まれた苦肉の策だから
じゃないかな

971
デフォルトの名無しさん[]   投稿日:2015/11/13 11:56:45  ID:iyo8Ja05.net(3)
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】なし
【質問内容】

ftp_nlist でエラーになった時に
エラーの詳細な情報を取得したいんだけど
どうしたらいいの?

972
デフォルトの名無しさん[sage]   投稿日:2015/11/13 15:22:33  ID:Y891nyvQ.net
2chでサーバーエラー出たときにPHPの変なタグ出てきた事あったよ
そして行く末知らないけどひろゆきにソースコードの著作権があるのに
それをJimが勝手に使ってるからなんか色々
コメント1件

973
デフォルトの名無しさん[sage]   投稿日:2015/11/13 17:32:16  ID:RUmdr/fe.net
三項演算子を "積み重ねて" 使用することは避けましょう。
ひとつの文の中で複数の三項演算子を使用した際の PHP の振る舞いは、少々わかりにくいものです。
http://php.net/manual/ja/language.operators.comparison.php#language.operators.comparison.ternary

公式マニュアルはこう言ってるね。
switchが緩い比較だとしても、事前に $v の型チェックをすればいいんじゃない。
コメント2件

974
デフォルトの名無しさん[sage]   投稿日:2015/11/13 18:00:21  ID:99szWd6E.net(2)
>973
それはあくまで “PHPでは” だよね。
他言語では true項も false項も対等だし可読性を保った書き方もできるから避ける必要など無い。
まあコンパイルするような言語では switch にしとくと最適化されやすいという考慮点はあるが。
コメント1件

975
デフォルトの名無しさん[sage]   投稿日:2015/11/13 18:26:40  ID:a7TZTyJc.net
PHPの三項演算子-disは超既出です

976
デフォルトの名無しさん[sage]   投稿日:2015/11/13 18:38:00  ID:iyo8Ja05.net(3)
>974
多言語でも参考演算子は積むなって言われるやろ

お前が天才だから、ではなく、演算子の優先順位が云々、でもなく
読めない・読まないアホが読める形にするために、だよ
コメント2件

977
デフォルトの名無しさん[sage]   投稿日:2015/11/13 18:38:27  ID:MH+cSPko.net
〜を~に変換するプログラムで7Eに変換したはずなのに 全角のままだった
(´・ω・`) 全角の〜(チルダや波線)を一括で~に変換するプログラムってどうやったらいいんでしょうか
コメント1件

978
デフォルトの名無しさん[sage]   投稿日:2015/11/13 19:26:12  ID:D5Uq6av0.net(2)
>976
php以外でどこで言われてる?
そういう規約があるなら貼ってみてよ。

979
959[sage]   投稿日:2015/11/13 19:28:47  ID:YRkhsUKe.net
>976
> 多言語でも参考演算子は積むなって言われるやろ
いやだからそれは言われてないと俺は思うが。少なくともGoogleのC++/JavaScriptでは言及がない。
(PHPのは仕様が変だから禁止で妥当)

最近俺は>959>967の方が見やすいと感じてるよ。
実際if文で書いたら、3つreturnが必要で、すべて読まなければならない。(3つreturnが書いてあるかどうかとかも)
三項演算子で書けば、最初にreturnが確定して、後は値だけになる。
俺は代入の時にもよく使っているが、それは左辺側が同一だと確定するから。
if文で書くと左辺が同じ変数かどうかを確認する必要がある。(タイポとかもあり得る)

if文だとなんでも書ける分、全部読む必要がある。
三項演算子だと最初に動作が確定、値についてはこれこれ、という書き方になる。
読む内容が減る分だけ楽になると思うが。
コメント1件

980
デフォルトの名無しさん[sage]   投稿日:2015/11/13 19:33:19  ID:hvMZ1Ugb.net(2)
>977
var_dump(mb_ereg_replace( '〜' , '~', '(^〜^)'));

>973
> switchが緩い比較だとしても、事前に $v の型チェックをすればいいんじゃない。
実際その辺どうなんだろう?
とりあえず今 mt_rand() で取り出した数字を switchで3と比較して結果次第で別の文字を代入、三項演算子でも同様に、
というのを100,000回ほど交互に繰り返してみたら、三項演算子が 0.115sec、switchが 0.183secだった

$array[0]と$array['0']が全く同一だったりとか、php内部の変数の扱いは良くわからん
コメント2件

981
デフォルトの名無しさん[sage]   投稿日:2015/11/13 19:38:25  ID:hvMZ1Ugb.net(2)
>972
それ確か、サーバの500だかのエラー表示の中のApache Serverのシグニチャにphpが入ってたってやつ
要は当時2chのいずれかのサーバにmod_phpが入っていたというだけの話で、2chがphpで動いているかどうかは関係ない話

982
デフォルトの名無しさん[sage]   投稿日:2015/11/13 19:53:06  ID:D5Uq6av0.net(2)
>979
コーディング規約持ち出すと、return は関数末尾にひとつだけ、みたいなのに出くわしたことがある。
そういう体制では三項演算子を if で置き換えたら変数で受ける必要まで出てきて面倒だな。
なんにしてもコーディング規約に書いてあるならそうしなさいということんだけど、
php 以外で三項演算子について規定してるのって知らないな。
コメント1件

983
デフォルトの名無しさん[sage]   投稿日:2015/11/13 20:22:08  ID:9Z3jJmN8.net
規約によって言語の機能を禁止する行為が愚かだという流れから禁止していないだけであって、
問題ない範囲で使えよという行間がある。
分かりやすくいうとgotoは禁止すべきじゃないし、トリプルポインタだって禁止すべきじゃない。

984
デフォルトの名無しさん[sage]   投稿日:2015/11/14 08:24:41  ID:LUyUmkqN.net
>980のテストは時間取得して代入するコストを減算してなかった、比較が1回だけだった、switch( true )法とifが無かった
2回比較3分岐で、switch, switch( true ), ()つけた二重の三項演算子, if分岐(, 無処理)で50万回ループしたらこの結果
switch: 0.48583 sec   switch( true ): 0.47236 sec   cond: 0.14173 sec   if: 0.13103 sec

結論 switch使えねえ
前処理で型をチェックする前提なら普通のswitchでも予想外のバグはある程度抑制できるけど
やると煩雑になるし別途コストかかるし、switch( true )はそのコストがかからない点と見た目以外変わらない
だったら最初からif使えって話、何より遅い

985
デフォルトの名無しさん[sage]   投稿日:2015/11/14 10:42:48  ID:JEd33JqI.net
速度を重視するか可読性を重視するかにもよるんじゃない?
要件満たさないほど遅い場合にはボトルネックを見つけてから
そこを改善すればいいんだし。

986
デフォルトの名無しさん[]   投稿日:2015/11/14 16:50:40  ID:p29z202R.net(5)
PHPで掲示板を作ろうと思ってるんだが、調べてみたらCGIってのが掲示板の主流みたいじゃないか

サーバー上で動作するプログラムで動的にHTMLを吐き出すって点ではどっちも同じみたいだけど、掲示板作成するならどっちつかった方がいいの?
コメント2件

987
デフォルトの名無しさん[sage]   投稿日:2015/11/14 17:03:18  ID:+bixUoUA.net(3)
>986
PHPにしとけば
それが完成したら他に手を出してみればいい
コメント1件

988
デフォルトの名無しさん[sage]   投稿日:2015/11/14 17:06:16  ID:ASkZSMfE.net
掲示板って動的にHTMLはくような事してんの?随分面倒な処理してるんだな負荷軽減?になるのか

989
デフォルトの名無しさん[]   投稿日:2015/11/14 17:21:46  ID:p29z202R.net(5)
>987
サンクス

PHPのやつは一応ある程度まで出来たんだが、ネットでオープンソースのCGI掲示板配布してたからそれを導入してちょくちょく弄ってった方が近いのかなと。。

CGIってのがよくわからんのだけど、プログラム言語?のことなの?
コメント2件

990
デフォルトの名無しさん[sage]   投稿日:2015/11/14 17:33:32  ID:uq7iZ3Y9.net
>986
俺は余り詳しいわけではないが、多分今時はPHPの方が主流だと思うぞ。
当たり前だがPHPのオープンソース掲示板も配布されている。
てかむしろ、「今時CGIかよ」って馬鹿にされていたと思ったが。
コメント1件

991
デフォルトの名無しさん[sage]   投稿日:2015/11/14 17:44:46  ID:+bixUoUA.net(3)
>989
CGI ってのは webサーバ下で動く実行ファイルのことだと思えばいい。
webサーバはクライアントからのリクエストを受け、実行ファイルを起動してその出力をクライアントに返す。
だから言語は問わず、perl で書いても C で書いてももちろん PHP を利用しても実行ファイルになってさえいればいい。

いわゆる PHP と言うと、CGI みたいにいちいちプロセスとして起動されるわけじゃなく、webサーバプロセスで PHP が実行される感じで、CGI とは違う形態になってる。
PHP はそれそのものがテンプレートエンジンみたいなもんだから webサーバとの協調に馴染む。

992
デフォルトの名無しさん[sage]   投稿日:2015/11/14 17:48:53  ID:qxo7dVQH.net
>982
車載系はそんなもんだよ
MISRAはつらい

993
デフォルトの名無しさん[]   投稿日:2015/11/14 17:56:10  ID:p29z202R.net(5)
>990
やっぱそうなんだ。
CGIってあんまり聞いたことなかったからやっぱり…

1から作ったしょっぼいしょっぼい掲示板捨ててオープンソース探してみるわ…

994
デフォルトの名無しさん[]   投稿日:2015/11/14 17:57:24  ID:p29z202R.net(5)
>989

実行ファイルってことは、さっき書いた「HTMLを吐き出す」ってことの意味がPHPと全然違うんだね;
すまんかった。

それなら何も考えずにPHPつかった方がダイレクトでいいってことか。
コメント2件

995
デフォルトの名無しさん[sage]   投稿日:2015/11/14 18:06:58  ID:+bixUoUA.net(3)
>994
どっちも基本的に HTML(とは限らずクライアントへ返したいものなんでも)を吐き出す処理を書くものだからそう変わらないよ。
CGI は webサーバと統合されるもんじゃないからインタフェースが簡単で、昔から使えたというだけ。

996
デフォルトの名無しさん[sage]   投稿日:2015/11/14 18:09:03  ID:bqWycdSK.net
>994
PHPだって実行ファイルに出来ますし・・・・・
別に言語としてPHPを使いつつCGIとして実行だって出来る

所謂PHPはサーバソフトにmod_phpというPHPを処理するモジュールを組み込んでおいて, サーバソフトがmod_phpを使ってPHPを実行する。
対してCGIではmod_cgiというモジュールを使って, サーバが別プロセスを立ち上げて実行可能ファイルを実行する。

997
デフォルトの名無しさん[]   投稿日:2015/11/14 18:55:31  ID:p29z202R.net(5)
なるほどねー
ガルちゃんみたいなスレッド式掲示板ぐらいならPHPで良さそうだな。

998
デフォルトの名無しさん[sage]   投稿日:2015/11/14 19:00:57  ID:AjDQR89s.net
更新情報
・スレッド一覧ページで過去ログのタイトル検索・一覧表示ができるようになりました(2016/1/20)
NGワード登録
登録する
スレッド内検索

プログラム板 タイトル検索

このスレッドが人気です(実況系)
NHK総合を常に実況し続けるスレ 134282 (453)NHK実況
実況 ◆ フジテレビ 83488 (434)フジ実況
おはよう!時代劇 暴れん坊将軍4 #21(第22話)[字][再] (563)テレ朝実況
はやドキ!& あさチャン!月曜日★1 (398)TBS実況
別冊アサ(秘)ジャーナル 「明徳義塾」 (641)TBS実況
フランケンシュタインの恋 #8 (965)NTV実況
岩合光昭の世界ネコ歩きチリ・ノルウェー★3 (533)NHK実況
ダウンタウンのガキの使い 「ダウンタウン2Sトーク」★2 (781)NTV実況
このスレッドが人気です(ニュース系)
【モータースポーツ】佐藤琢磨が日本人初のインディ500優勝! (798)音楽・芸能ニュース
【話題】使うと年寄り認定される「昭和言葉」ランキング ナウい、アベック、チャンネルを回す、チョッキ など★2 (529)ニュー速+
【出会い系バー出入り】前川・前文科次官「行ったことは事実」「女性の貧困について実地の視察調査の意味合いがあった」★89 (695)ニュー速+
【話題】使うと年寄り認定される「昭和言葉」ランキング ナウい、アベック、チャンネルを回す、チョッキ など (1001)ニュー速+
【出会い系バー出入り】前川・前文科次官「行ったことは事実」「女性の貧困について実地の視察調査の意味合いがあった」★88 (1001)ニュー速+
【話題】「スサノオ」を祀ったほとんどの神社が被災を免れたのに、「アマテラス」を祀る神社の大半は被災…津波と神社との関係が論文に (922)ニュー速+
【出会い系バー出入り】前川・前文科次官「行ったことは事実」「女性の貧困について実地の視察調査の意味合いがあった」★87 (1000)ニュー速+
【社会】「欲望に素直、カッコいい」バブル時代に憧れる若者たち★4 (1001)ニュー速+
プログラム板の人気スレ
Excel VBA 質問スレ Part48 (305)
ふらっと C#,C♯,C#(初心者用) Part128 (611)
次世代言語議論スレ[Go Rust Kotlin Scala]第4世代 (808)
Xamarin Part4 (439)
C言語なら俺に聞け 140 (322)
【統計分析】機械学習・データマイニング15 (644)
くだすれPython(超初心者用) その33 (994)
オブジェクト指向って自然な文法だな 3 (645)
ねねっちと一緒にプログラムを勉強するスレ第2話 (790)
Visual Studio 2017 Part2 (543)
Java入門・初心者質問スレ Part.3 (580)
Ruby 初心者スレッド Part 60 (300)
プログラミング言語 Rust 3 (61)
推薦図書/必読書のためのスレッド 81 (905)
C#, C♯, C#相談室 Part94 (288)
Linuxでお手軽にプログラムを組む方法を教えてくれ (61)
Swift part10 (733)
C++相談室 part130 (395)
Git 15 (824)
Visual Studio 2015 Part8 (741)
JavaScript の質問用スレッド vol.123 (311)
ふらっと C#,C♯,C#(初心者用) Part127 (408)
Pythonのお勉強 Part53 (84)
C# vs Java どっちが好き? その3 (286)
スマホでは容量的にナンセンスなブロックチェーン (86)
関数型プログラミング言語Haskell Part30 (600)
Androidプログラミング質問スレ revision53 (369)
WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part21 (79)
このサイトについて
このサイトは2ちゃんねるからデータを取得し、表示するサービスです。
画像のインライン表示機能について
画像のURLの後ろにある[画像をインライン表示]をクリックすると、URLの下に表示します。
表示される画像は横幅100pxに縮小されていて、クリックすると原寸で表示します。
このサイトの特徴
1)スレッド内検索ができます
2)レス(「>>1」など)のポップアップができます
3)不適切な言葉を含む投稿を表示しません
4)ページ内で画像を直接表示できます
5)2ch他スレッドへのリンクはタイトル・板名つきでリンクします
6)すっきりとしたデザインで表示します
7)最新スレや前スレをチェック・一覧表示します
8)NGワード機能の搭載でイヤな言葉が目に入りません
9)荒らしを自動チェックします
10)スレッド内・同一IDの書き込みだけ表示できます
11)レスの返事をレスされた発言の下に表示する「まとめビュー」が利用できます
12)シリーズ化したスレッドの一覧を表示します
13)最新のスレッドがある場合はお知らせします
削除について
こちらをご覧ください
機能要望について
現在機能要望受付中です。
問い合わせについて
こちらのページからどうぞ
広告


首都圏の方、ソフトバンク光オススメですよ


このサイトは2ch.scからデータを取得・表示しています。削除などについてはこちらをご覧ください。 アクセスモード:差分取得 - 新着書き込みなし(304)