【PHP】下らねぇ質問はここに書き込みやがれ 6 [無断転載禁止]©5ch.io
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2016/06/23(木) 21:05:50.59ID:8l+T8FXAまず読むこと【PHPマニュアル】
http://www.php.net/manual/ja/
前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 5 [無断転載禁止]c2ch.net
http://echo.2ch.net/test/read.cgi/tech/1462970810/
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
0002デフォルトの名無しさん
2016/06/23(木) 21:06:36.21ID:8l+T8FXA【OS名】CentOS
【PHPのバージョン】7.0
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・ 解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・ 誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・ SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0003デフォルトの名無しさん
2016/06/23(木) 21:07:40.50ID:8l+T8FXA■本家マニュアル http://www.php.net/manual/ja/
■日本PHPユーザ会 http://www.php.gr.jp/
■PHPNG https://wiki.php.net/phpng
■PEARマニュアル http://pear.php.net/manual/ja/
■メーリングリスト http://ml.php.gr.jp/mailman/listinfo/
■ZFマニュアル http://framework.zend.com/manual/ja/
■Smartyマニュアル http://www.smarty.net/manual/ja/
(以下英語)
■Zend本家 http://www.zend.com/
■Zend Framework http://framework.zend.com/
■php | architect http://www.phparch.com/
■Smarty http://www.smarty.net
■Smartyマニュアル http://smarty.php.net/manual/en/
■PECL本家(英語) http://pecl.php.net/
0004デフォルトの名無しさん
2016/06/23(木) 23:54:19.00ID:pXTHavhiしっかり使っていくようにな
0005デフォルトの名無しさん
2016/06/24(金) 00:33:29.08ID:ujwOOFVb0006デフォルトの名無しさん
2016/06/24(金) 01:17:56.65ID:NyqhaMMw0007デフォルトの名無しさん
2016/06/24(金) 03:11:27.00ID:hjmxRhIJこんな過疎スレに一日30回近く書き込みする物好きがいると聞いて見物している
994 名前:デフォルトの名無しさん[] 投稿日:2016/06/23(木) 22:09:04.47 ID:pXTHavhi [4/4]
さっさと埋めろや無能ども
からの >>4
と来たらこれはもう、ね。
0008デフォルトの名無しさん
2016/06/24(金) 06:20:25.59ID:1oHte2Uaどうぞよろしく。
0009デフォルトの名無しさん
2016/06/24(金) 12:12:15.09ID:4+1ZXWB2この間に検索機能、管理機能、対客機能、その他もろもろ10機能以上いれた
ポータルサイトをひとつ完成させなければならない。
プログラマー俺、デザイナー1人
デスマーチ確定。
0010デフォルトの名無しさん
2016/06/24(金) 12:40:38.62ID:gnQKCvjhそれでいくらもらえるの?
0011デフォルトの名無しさん
2016/06/24(金) 12:55:38.42ID:mnFRrG4Xうすらさむいわ
0012デフォルトの名無しさん
2016/06/24(金) 13:06:18.69ID:NyqhaMMwそっとNGに入れて生暖かい目で見守ってやれ
0013デフォルトの名無しさん
2016/06/24(金) 13:09:40.53ID:ujwOOFVbそこまでキツくないような気がするのは俺だけか
※仕様とデザインと文章・画像などコンテンツが全部固まっているなら
0014デフォルトの名無しさん
2016/06/24(金) 13:11:10.98ID:mfGmErJk0015デフォルトの名無しさん
2016/06/24(金) 13:13:54.16ID:9djNrQD60016デフォルトの名無しさん
2016/06/24(金) 13:15:23.86ID:mnFRrG4X無能と罵られてキレるのは無能のみぞ
0017デフォルトの名無しさん
2016/06/24(金) 13:19:25.42ID:hNKdYhKF0018デフォルトの名無しさん
2016/06/24(金) 13:48:53.29ID:F82Jth68> そこまでキツくないような気がするのは俺だけか
作業が二人に分かれてる時点で無理でしょう。
0019デフォルトの名無しさん
2016/06/24(金) 14:06:04.15ID:4+1ZXWB2月々は3万〜5万もらうが、初期費用はゼロ
いつもお世話になってるところだからという理由
インターフェース的な動きや見栄えにすごくこだわる客で完成してから大幅な仕様変更いいまくるところだから
この際よそいってもらいたい
>>13
2ヶ月って小学生の夏休みより長いし
夏休みの宿題のボリュームを思い出すと
いけるかも?と俺もおもったけど
ガントチャートつくってみたら
「あ、どうか考えても無理だわw」
になった。
>>18
完全MVCで作るから、一応同時進行は最大限できる
てかMVCで作らないと絶対無理
0020デフォルトの名無しさん
2016/06/24(金) 14:20:27.22ID:LGCXeils月3〜5万てw
コピペで作れるサイトならともかく、あんま安く請けると業界の首を絞めるぜ。
0021デフォルトの名無しさん
2016/06/24(金) 14:56:51.32ID:ujwOOFVb客との間の事情がまあいろいろあるんだろうけどな
超適当に人日40,000として2人30日としても回収し切るまでの期間を計算すると……
0022デフォルトの名無しさん
2016/06/24(金) 14:58:14.67ID:F82Jth68> 完全MVCで作るから、一応同時進行は最大限できる
その最大限ってのが、一人で作るなら30人日分できるときに、二人だとWBS的な待ち合わせとか、
コミニュケーションコストとかで25人日分くらいに目減りすると思うんだ。
お互い使い慣れた管理画面とかのテンプレートやボイラープレートがあって、既に協業経験が
あるならいいけど、初めてだと意外と時間取られると思うよ。
0023デフォルトの名無しさん
2016/06/24(金) 15:33:49.96ID:RJmk5tzAOK
PHP7.0でもいいよ
http://php.net/supported-versions.php
0024デフォルトの名無しさん
2016/06/24(金) 15:59:15.50ID:3DHUitBKphp5.3.xを今でも使っています。
サポートもきちんとされているので安心です。
0025デフォルトの名無しさん
2016/06/24(金) 16:12:00.46ID:6jwsLRlP初期費用ゼロという時点でおかしいと気付かないと(この世界で生き残るのは)難しい
0026デフォルトの名無しさん
2016/06/24(金) 16:57:36.89ID:Ul20IDNbcentos7に入ってるのは5.4.16ですので
まだ5.6は一般的とは言えないのではないでしょうか?
0027デフォルトの名無しさん
2016/06/24(金) 17:17:30.95ID:c5qWvcYb0028デフォルトの名無しさん
2016/06/24(金) 17:35:51.53ID:F82Jth68意外と早いかもよ。
https://seld.be/notes/php-versions-stats-2016-1-edition
May 2016
PHP 5.6 39.67%
PHP 5.5 29.56%
PHP 7.0 20.24%
PHP 5.4 7.64%
PHP 5.3 2.43%
packagist.orgのアクセスログからのデータだから、5.3や5.4の人はあまりアクセスしないという事情もあるかもだが。
0029デフォルトの名無しさん
2016/06/24(金) 18:05:15.72ID:Ul20IDNbこんな感じに代入する側を条件により変えたいのですが
これだとエラーになります
どうにか出来ませんか?
0030デフォルトの名無しさん
2016/06/24(金) 18:06:01.44ID:Ul20IDNb○代入される側
でした
0031デフォルトの名無しさん
2016/06/24(金) 18:18:02.54ID:RDdMjpj7$b = $a ? 100 : 0;
$bに代入される値を
$aの真偽で変える
0032デフォルトの名無しさん
2016/06/24(金) 18:21:06.87ID:RDdMjpj7あとこういう書き方でも結果は同じ
0033デフォルトの名無しさん
2016/06/24(金) 18:26:51.76ID:F82Jth68$a = 100;
} else {
$b = 100;
}
と書くのが一番良い。
0034デフォルトの名無しさん
2016/06/24(金) 18:29:47.81ID:ujwOOFVb$aがbooleanなのかstringなのかわからんから === 評価を書くほうが良いのでは
0035デフォルトの名無しさん
2016/06/24(金) 18:37:57.35ID:Ul20IDNbというのは
代入される側を条件によって変えたい、
という問題を示すために適当にでっちあげた例です。
($c ? $a : $b) = 100;
方が良かったですね
0036デフォルトの名無しさん
2016/06/24(金) 18:38:42.89ID:RDdMjpj7if-elseで書き替える
さすがPHPスレだな
0037デフォルトの名無しさん
2016/06/24(金) 18:42:16.27ID:RDdMjpj7$c ? $a = 100 : $b = 100;
それならこうだ
0038デフォルトの名無しさん
2016/06/24(金) 18:44:20.46ID:ujwOOFVb代入先を変えたいならこういう手もあるけど、気に入る手法かどうかはわからん
${ ($a) ? 'a' : 'b' } = 100;
0039デフォルトの名無しさん
2016/06/24(金) 18:52:38.48ID:Ul20IDNbありがとうございます
自分も今
${($c ? 'a' : 'b')} = 100;
に辿り着いたところでした
0040デフォルトの名無しさん
2016/06/24(金) 18:58:33.14ID:4+1ZXWB2それをそのまま社長に誰か言って欲しい
0041デフォルトの名無しさん
2016/06/24(金) 19:00:19.91ID:ujwOOFVb0042デフォルトの名無しさん
2016/06/24(金) 19:27:17.23ID:1oHte2Uaゲラゲラ笑った。お前、なかなかプログラミングを分かってるじゃないか。とてもセンスがいい。
そうだ、プログラムってのはただの冗談でしかないんだ。
0043デフォルトの名無しさん
2016/06/24(金) 19:29:26.54ID:Ul20IDNbパフォーマンス的な意味で気になりますし。
ただ関数言語的な書き方に親しむと
同じことを二回書きたくない、
一時変数=ダサいっていう感覚になるんですね
右辺が100でなく複雑な式の場合、
一時変数を使わざるを得なくなりますが、それが嫌なんです
0044デフォルトの名無しさん
2016/06/24(金) 19:37:11.54ID:1oHte2Ua一応警告しておくぞ。
なんか暗号化する手段を用意しておけ。肝になる部分だけ暗号化すればバレにくい。
バレたら
「高速化のためにコンパイルが必要な言語を利用しています。
お金さえ払っていただければきちんと面倒見ます」と言え。
俺の友人である社長はそうして備えておいたので、
客が金を払わなくなったところでそのまま切り捨てたそうだ。
後で黒ヤギさんが文句のメールをよこしたらしいが、読まずに捨てた。
0045デフォルトの名無しさん
2016/06/24(金) 19:37:59.81ID:1oHte2Ua良いか悪いかはお前が判断すればいい。
俺はお前の心意気が面白いと言っている。
0046デフォルトの名無しさん
2016/06/24(金) 19:47:30.69ID:1oHte2Uaif(1 < $value < 10){ }
が出来る言語を欲している。
Is there anybody who think so too?
0047デフォルトの名無しさん
2016/06/24(金) 19:49:02.03ID:1oHte2Uaどこかにあるのかもしれない。
0048デフォルトの名無しさん
2016/06/24(金) 19:53:28.17ID:6jwsLRlP0049デフォルトの名無しさん
2016/06/24(金) 20:01:54.78ID:ujwOOFVb0050デフォルトの名無しさん
2016/06/24(金) 20:03:27.07ID:4+1ZXWB20051デフォルトの名無しさん
2016/06/24(金) 20:08:11.33ID:1oHte2UaLINQが何かよー知らんけど、ググって読んだ範囲では違うんじゃねぇかね?
0052デフォルトの名無しさん
2016/06/24(金) 20:10:05.04ID:1oHte2Ua0053デフォルトの名無しさん
2016/06/24(金) 20:12:24.95ID:1oHte2Uaバリデータとか作ってると、max, min指定して制限したい時とかあるじゃない。
ああいう時、
if(1 < $value < 10){ }
が出来ると綺麗になるんだよなぁ…
Don't you think so?
0054デフォルトの名無しさん
2016/06/24(金) 20:13:49.81ID:Fo67yJqk「|」はビット演算子のはずですが
0055デフォルトの名無しさん
2016/06/24(金) 20:22:49.13ID:1oHte2Uafile_put_contents
http://php.net/manual/ja/function.file-put-contents.php
flags
flags の値は、以下のフラグを組み合わせたものとなります 組み合わせる際には、論理 OR (|) 演算子で連結します。
<?php
echo FILE_USE_INCLUDE_PATH . "<br>\n";
echo FILE_APPEND. "<br>\n";
echo LOCK_EX. "<br>\n";
?>
-----
1 0001
8 1000
2 0010
-----
all → 1011
like this. Do you understand?
0056デフォルトの名無しさん
2016/06/24(金) 20:26:53.62ID:Fo67yJqkなるほど
これは凄い
0057デフォルトの名無しさん
2016/06/24(金) 20:28:52.19ID:1oHte2Ua0058デフォルトの名無しさん
2016/06/24(金) 20:40:03.33ID:o6ESDf8N0059デフォルトの名無しさん
2016/06/24(金) 20:52:03.55ID:4+1ZXWB2今月の手取り額の数字を検索したら
こんなんでてきた。
http://www.toipu-koi.com/gallery/2016/05/405279000.php
おれの一ヶ月はこれと同じ価値なのか。
0060デフォルトの名無しさん
2016/06/24(金) 20:54:42.55ID:1oHte2UaHey guy, Didn't your parents teach you
that you have to say "thank you so much" to your imam?
0061デフォルトの名無しさん
2016/06/24(金) 20:55:12.11ID:Fo67yJqkNo English
0062デフォルトの名無しさん
2016/06/24(金) 20:56:18.83ID:Fo67yJqk男ねえ、あなたの両親はあなたを教えていませんでした
あなたが言っていることをあなたのイマームに「ありがとうございましたか」 ?
0063デフォルトの名無しさん
2016/06/24(金) 21:02:59.10ID:1oHte2UaLet's translate this.
0064デフォルトの名無しさん
2016/06/24(金) 21:04:34.30ID:1oHte2Ua0065デフォルトの名無しさん
2016/06/24(金) 21:05:34.04ID:Fo67yJqkそれでは、これを翻訳してみましょう。
0066デフォルトの名無しさん
2016/06/24(金) 21:07:42.89ID:Fo67yJqk父だけで>>59の給料の5倍以上あるんだけどwwwwww
0067デフォルトの名無しさん
2016/06/24(金) 21:08:35.69ID:1oHte2UaDogs eat his shit, but you can't eat your shit code.
So, dogs has more convenience than you.
Do you wanna eat your shit?
0068デフォルトの名無しさん
2016/06/24(金) 21:14:35.11ID:1oHte2UaWow, that's great!
So, you gonna telling the story that swans gave birth to a duck, is it?
0069デフォルトの名無しさん
2016/06/24(金) 21:17:43.81ID:Fo67yJqkうわー、それは素晴らしいことです!
だから、あなたはそれは、白鳥がアヒルを出産したことを話をしてつもり?
TRUE
0070デフォルトの名無しさん
2016/06/24(金) 21:17:46.97ID:NRLOm1ol例えばmysql_connect()よりもmysqli_connect()を使うように推薦しています
古い形式に若干慣れてしまったのですが、今後のことも考えてMySQLiを使うべきでしょうか?
0071デフォルトの名無しさん
2016/06/24(金) 21:19:23.33ID:1oHte2UaIt's OK, if that is.
0072デフォルトの名無しさん
2016/06/24(金) 21:19:41.25ID:Fo67yJqkオフコース
if(MySQL Only){
MYSQLI
}else{
PDO
}
MYSQL_HOGE=UNKO
0073デフォルトの名無しさん
2016/06/24(金) 21:21:37.88ID:1oHte2Uaいいや、mysqliはあんまり推奨しねぇな。
確かにネイティブな関数はいろいろと出来るからいいが、当然の如くDBの変更に弱い。
素直にPDO使った方が良いんじゃねぇか?
DB特有の機能は使えなくなるが、そんなにDB特有の機能を使うことなんてねぇぞ。
0074デフォルトの名無しさん
2016/06/24(金) 21:22:03.70ID:Fo67yJqkPDO=OSOI
MYSQLI_FUNC=UNKO
MYSQLI_OOP=SUGOI
MYSQLI=ONLY
PDO=IROIRO_USE
0075デフォルトの名無しさん
2016/06/24(金) 21:22:26.78ID:1oHte2Ua0076デフォルトの名無しさん
2016/06/24(金) 21:23:32.13ID:Fo67yJqkMySQLしか使う予定ないならMySQLIだろ
こっちが早いし
あとDB特有の機能使えないことはないぞ
PDO使うメリットなくなるが
0077デフォルトの名無しさん
2016/06/24(金) 21:24:37.00ID:Fo67yJqk>>72で俺が
もしMySQLしか使わないなら、MySQLIで、
でなければ
PDO使えって言っただろ
俺が先だぞ
0078デフォルトの名無しさん
2016/06/24(金) 21:25:24.46ID:1oHte2UaYou should better to use mysqli if you think so.
i don't stop your folly.
0079デフォルトの名無しさん
2016/06/24(金) 21:26:34.89ID:1oHte2UaYeah, yeah. You are fine.
0080デフォルトの名無しさん
2016/06/24(金) 21:27:15.03ID:Fo67yJqkあなたがそう思うならばmysqliのを使用することをお勧めする必要があります。
私はあなたの愚かさを停止しないでください。
mysqliの方が高速
途中でDB変えるなんてありえない
0081デフォルトの名無しさん
2016/06/24(金) 21:28:08.84ID:6jwsLRlP0082デフォルトの名無しさん
2016/06/24(金) 21:28:13.38ID:Fo67yJqkDo you gaizin?
0083デフォルトの名無しさん
2016/06/24(金) 21:29:52.71ID:Fo67yJqkDo you out people?
0084デフォルトの名無しさん
2016/06/24(金) 21:31:44.13ID:1oHte2UaYou seems like a "gainin" rather than "gaizin".
You make me laugh much!
0085デフォルトの名無しさん
2016/06/24(金) 21:32:12.74ID:NRLOm1ol>>73
解答ありがとうございます
今のところMySQLしか使うつもりはないのでMySQLiを使おうと思います
PDOとそれぞれ一長一短なのが良く分かりました
0086デフォルトの名無しさん
2016/06/24(金) 21:34:23.95ID:Fo67yJqkI directory in not "gainin";
0087デフォルトの名無しさん
2016/06/24(金) 21:34:55.26ID:Fo67yJqkドットな
0088デフォルトの名無しさん
2016/06/24(金) 21:39:15.90ID:1oHte2Uain your case, you have to use
x Do you
o Are you
Do you understand?
>>86
You have no sense of humor. awesome duck!
0089デフォルトの名無しさん
2016/06/24(金) 21:46:15.68ID:1oHte2Uaわりぃ、見落としてた。
問題なのはMySQLをいつまで使うかじゃないんだ。
PDOはDBを使う上で必要な基本的な機能のみが揃っているってことだ。
だから、初心者はPDOを使うほうがDBに対する理解が早くなる。
その上で必要になったらネイティブ関数を使えばいいだけだ。
0090デフォルトの名無しさん
2016/06/24(金) 21:52:37.68ID:Fo67yJqkBecouse mysql only study OK.
0091デフォルトの名無しさん
2016/06/24(金) 22:02:43.97ID:1oHte2UaI think that you should better to say below.
x Free server are mysql only.
o Many free server can use only mysql.
x Becouse mysql only study OK.
o That's because why I recommend that.
You must be taught from your mother who had graduated from T university or W university.
0092デフォルトの名無しさん
2016/06/24(金) 22:11:09.02ID:Fo67yJqk0093デフォルトの名無しさん
2016/06/24(金) 22:14:03.94ID:1oHte2Ua白鳥が何故美しいのかをお前は考えた事があるのか?
0094デフォルトの名無しさん
2016/06/24(金) 22:14:26.16ID:es+Y6Nw50095デフォルトの名無しさん
2016/06/24(金) 22:17:55.32ID:1oHte2Ua$man = __SWAN;
__SWANが定義してなければエラー吐くだろ?
defineしろよ。しなければそこでNoticeだ。お前は今までNoticeを握りつぶしてきたんだろう。
0096デフォルトの名無しさん
2016/06/24(金) 22:18:40.75ID:1oHte2Ua糞なTVショーより面白いだろ?
0097デフォルトの名無しさん
2016/06/24(金) 22:26:53.65ID:qTbX1cTa初心者なので説明力、知識が乏しいですが申し訳ありません。
私は、不特定多数の人が画像をサイト上のみで
「読み込み→編集→ダウンロード」を全てできる画像編集サイトを作ろうと思っていて、
色々調べている内にImageMagickと言うプログラムにたどり着きました。
ですが使い方などが全くわからず、説明されているサイトは全て英語でどうしようか思い悩んでいます。
現在xサーバーを利用していてホームページを取得しています。
xサーバーは公式で既にImageMagickがインストールされているということです。(この事についてもいまいち分かりません)
どなたか分かりやすく画像編集サイトの作り方を教えていただけませんでしょうか。
OSはwin7 64bitです。
本当に困っています。
0098デフォルトの名無しさん
2016/06/24(金) 22:29:31.44ID:1oHte2Ua> 説明されているサイトは全て英語でどうしようか思い悩んでいます。
すばらしい、では英語を勉強しましょう。実に簡単だし、世界共通言語と等価です。
ぜひ!
0099デフォルトの名無しさん
2016/06/24(金) 22:35:14.06ID:1oHte2Ua"Use your brain or pay your money as he said."
覚えておきましょう。
0100デフォルトの名無しさん
2016/06/24(金) 22:50:25.50ID:Fo67yJqk多分PHPのプログラムは大した事ない
場合によっては、サーバーサイド言語は使わないくても出来る
ただ、JSの方が複雑になると思うから、JSスレで質問した方がいい
0101デフォルトの名無しさん
2016/06/24(金) 22:53:02.42ID:Fxh/SUOh画像処理 (ImageMagick)
http://php.net/manual/ja/book.imagick.php
基本的な使用法
http://php.net/manual/ja/imagick.examples-1.php
0102デフォルトの名無しさん
2016/06/24(金) 22:54:22.84ID:es+Y6Nw5何だかんだ、最先端の技術文献ってまず英語だもんな
0103デフォルトの名無しさん
2016/06/24(金) 23:05:25.07ID:qTbX1cTaです
みなさまありがとうございます。
参考になりました!
js板にて聞いてきます!
0104デフォルトの名無しさん
2016/06/24(金) 23:05:56.25ID:1oHte2Ua0105デフォルトの名無しさん
2016/06/24(金) 23:06:44.81ID:1oHte2Ua素敵!
0106デフォルトの名無しさん
2016/06/24(金) 23:35:02.36ID:qTbX1cTaphpの方が簡単と言われました
0107デフォルトの名無しさん
2016/06/24(金) 23:43:57.77ID:1oHte2Ua0108デフォルトの名無しさん
2016/06/25(土) 00:05:08.71ID:Y7imCRE6あ、ごめん
マジで受け取っちゃたか
とりあえずIDくらい見る癖つけた方がいいよ
>>103の書き込みで初心者かと思ったらガチ初心者だった
0109デフォルトの名無しさん
2016/06/25(土) 00:48:02.94ID:RtO3ILRZ不特定多数にでかい画像を編集させたりすると
あっという間にサーバリソース枯渇するんじゃないか
0110デフォルトの名無しさん
2016/06/25(土) 02:06:11.57ID:NFDjTfBfそんなもん作るくらいなら初めから編集操作は全部クライアントサイドでやって(既に誰か作って公開されてるに違いない)最終結果だけサーバサイドで処理する, これ以外の選択肢があるのか
0111デフォルトの名無しさん
2016/06/25(土) 06:14:41.26ID:q01GtCcP要素が空のインスタンスすら作れないことにイラッとして
自分でXMLクラス書いたら余程すっきり書けました
挿入や削除も出来るようにしたので配列にする必要もありませんし。
やっぱりSimpleXMLElementはイケてないです
0112デフォルトの名無しさん
2016/06/25(土) 06:24:05.90ID:SQhzEAbbでもイケてるクラスが出来たなら公開してくれよ。
0113デフォルトの名無しさん
2016/06/25(土) 07:10:52.21ID:EMJ+tt/RI had enjoyed enough last night. There's a really entertainment.
>>97
Well, you said that the WEB service for an unspecified number of people,
that means it create and modify a picture JPEG, PNG or GIF format at most, right?
In your purpose that you wrote,
you don't need learn the useage of ImageMagick and Imagick extension that enable to use ImageMagick in PHP.
Many PHP is compiled with GD, so you can use it.
http://php.net/manual/ja/book.image.php
Otherwise it is, for example, you wanna treat their images as PSD, TIFF, fuckin' BMP or other various format,
ImageMagick is surely good choice.
You seems better to think about it at first.
0114デフォルトの名無しさん
2016/06/25(土) 07:29:35.57ID:EMJ+tt/RWho above "must" read below.
https://www.jpcert.or.jp/at/2016/at160021.html
0115デフォルトの名無しさん
2016/06/25(土) 07:32:44.63ID:EMJ+tt/R0116デフォルトの名無しさん
2016/06/25(土) 08:26:17.90ID:nVk9lY4Nを英語では何て言うんだ?
0117デフォルトの名無しさん
2016/06/25(土) 08:52:31.30ID:6hks73uR0118デフォルトの名無しさん
2016/06/25(土) 08:52:35.48ID:x9ZpL4V50119デフォルトの名無しさん
2016/06/25(土) 09:02:11.27ID:MiNTH5Z/say below.
"Are you a monkey that can't understand what I said ?"
0120デフォルトの名無しさん
2016/06/25(土) 09:09:19.67ID:Y7imCRE6俺がPHPの方がおすすめと言う←イマココ
0121デフォルトの名無しさん
2016/06/25(土) 09:18:35.29ID:Y7imCRE6初心者に出来る内容じゃない
0122デフォルトの名無しさん
2016/06/25(土) 11:52:51.08ID:OUHcYt/l拡大縮小ならimagecopyresizedとかかね
0123デフォルトの名無しさん
2016/06/25(土) 13:58:24.92ID:EB7Ipfva0124デフォルトの名無しさん
2016/06/25(土) 14:10:48.78ID:EMJ+tt/Rお前が「大分わかって来たな」と感じた時から、お前の中ではそうだろう。
0125デフォルトの名無しさん
2016/06/25(土) 17:45:16.15ID:SsSykaVs> God morning
> every ones
> a really entertainment.
> it create and modify
> useage
> Many PHP is
0126デフォルトの名無しさん
2016/06/25(土) 18:30:56.18ID:EMJ+tt/R日本語ですらミスタイプなんて気にしねぇ2chではな。
とっくに気付いてるし、他にも色々あったろ?
0127デフォルトの名無しさん
2016/06/25(土) 18:35:17.39ID:IGrWHBep少しは恥じろ
0128デフォルトの名無しさん
2016/06/25(土) 18:37:15.53ID:EMJ+tt/R0129デフォルトの名無しさん
2016/06/25(土) 18:42:29.34ID:SsSykaVs0130デフォルトの名無しさん
2016/06/25(土) 18:42:39.59ID:EMJ+tt/Reveryone and every monkeys ってのが冗長で嫌だったから分けた。
文法的にoneを使うのは間違ってねぇんじゃねぇか?
ネイティブじゃねえから知らんけど。
0131デフォルトの名無しさん
2016/06/25(土) 18:43:25.34ID:IGrWHBep0132デフォルトの名無しさん
2016/06/25(土) 18:45:34.56ID:EMJ+tt/Rここ、なんのスレだと思ってんだよ、PHPだぞ。
そんなこまけえ事きにするタマか?
0133デフォルトの名無しさん
2016/06/25(土) 18:47:37.70ID:SsSykaVs0134デフォルトの名無しさん
2016/06/25(土) 18:50:09.44ID:EMJ+tt/R0135デフォルトの名無しさん
2016/06/25(土) 18:52:14.35ID:SsSykaVs0136デフォルトの名無しさん
2016/06/25(土) 18:53:14.69ID:IGrWHBep想像しろ。文法エラーとミススペルは害悪だから、無条件で死ね。
0137デフォルトの名無しさん
2016/06/25(土) 18:53:23.54ID:EMJ+tt/Rお前は翻訳家かなんかか?
0138デフォルトの名無しさん
2016/06/25(土) 18:57:18.65ID:EMJ+tt/R大して気にしてんぇからろくにチェックしねえで投げて後で気づいてんじゃん。
おまえの論理はいつもおかしいんだよ。
>>130は何がおかしいか言ってみてくれる?
0139デフォルトの名無しさん
2016/06/25(土) 19:00:03.03ID:EMJ+tt/Rじゃあお前、今後掲示板でミスタイプを一度でもしたら死刑な。
気をつけろよ、くれぐれもな。
俺はお前とは考え方が違うから関係ねぇけど。
0140デフォルトの名無しさん
2016/06/25(土) 19:01:43.39ID:SsSykaVsとっくに気づいてた他の間違いにはなんでやんなかったの?
別に伝わるからいいけど。
0141デフォルトの名無しさん
2016/06/25(土) 19:02:38.73ID:EMJ+tt/R「iPadは布団の中で使うには便利だが、ソフトウェアキーボードの使い勝手は最悪だ」って。
0142デフォルトの名無しさん
2016/06/25(土) 19:04:22.50ID:EMJ+tt/Rお前の中ではその言い分に論理性があんのか。サルはおもしれぇ考え方するな。
0143デフォルトの名無しさん
2016/06/25(土) 19:06:23.48ID:EMJ+tt/R大して気にしてねぇからって言ったじゃん。
だから俺の胸先三寸だって事さ、おさるさん。
0144デフォルトの名無しさん
2016/06/25(土) 19:07:03.50ID:SsSykaVs気にしないで。
0145デフォルトの名無しさん
2016/06/25(土) 19:08:09.50ID:IGrWHBep日本語のソフトキーボードのことをなんで英語でアップルに言わないといけないの?
0146デフォルトの名無しさん
2016/06/25(土) 19:10:18.82ID:EMJ+tt/R0147デフォルトの名無しさん
2016/06/25(土) 19:13:21.36ID:IGrWHBep0148デフォルトの名無しさん
2016/06/25(土) 19:13:46.14ID:EMJ+tt/R気にしてねぇって何度言わせんだ?
お前らが気にして絡んで来るから答えてるだけなのわかんねぇの? おさるさん。
>>145
誰が英語で文句言えって言ったんだ?
お前の頭ん中に別の誰かでもいんのか?
それは病気だから医者行って薬もらって来い。
0149デフォルトの名無しさん
2016/06/25(土) 19:15:17.09ID:EMJ+tt/RYeah, yeah.
You are just fine.
0150デフォルトの名無しさん
2016/06/25(土) 19:15:44.50ID:SsSykaVs>>130は何がおかしいか言わずに逃げたな!みたいなこと言わないでね。たいしたことない間違いだから
0151デフォルトの名無しさん
2016/06/25(土) 19:16:05.31ID:IGrWHBepだったらツイッターでアップルに直接言えばいいじゃん。あんた馬鹿?
0152デフォルトの名無しさん
2016/06/25(土) 19:19:44.21ID:EMJ+tt/Rこまけえ事気にしてるお前らが言えっていってるの、まだわからんの?
俺は気にしねぇから俺が言わなきゃいけない理由ねぇってまだわからんの?
お前の論理はどうしていつも変なの?
0153デフォルトの名無しさん
2016/06/25(土) 19:22:12.18ID:EMJ+tt/R>>130は何がおかしいか言わずに逃げたな!
0154デフォルトの名無しさん
2016/06/25(土) 19:24:26.66ID:IGrWHBep「every monkeys」
「every ones」
二つとも間違い。everyに対して複数形は使わない。
0155デフォルトの名無しさん
2016/06/25(土) 19:31:00.61ID:EMJ+tt/R最初っからそういえば良いじゃん。
だからPHPのスレなのにスレチが伸びるんだよ。自覚しろ、サル。
でも覚えとく、ビクンビクン。
and thank you so much.
0156デフォルトの名無しさん
2016/06/25(土) 19:32:04.75ID:EMJ+tt/R0157デフォルトの名無しさん
2016/06/25(土) 19:34:27.11ID:IGrWHBepお前みたいな日本人の恥さらしがいるから、トランプや幼稚園児に馬鹿にされるん
じゃないか。英語圏をなめるな。消え失せろ。
0158デフォルトの名無しさん
2016/06/25(土) 19:37:49.58ID:EMJ+tt/Rなのになんで日本語の掲示板に来てわざわざ日本語つかってんの?
たかが英語じゃん、伝わればどうでも良いんじゃねぇの?
あと、お前、喋りすぎると死刑になる事忘れんなよ。
0159デフォルトの名無しさん
2016/06/25(土) 19:41:40.11ID:EMJ+tt/R卑屈で肝っ玉の小さい日本人が嫌いなんだってさ。知らんけど。
0160デフォルトの名無しさん
2016/06/25(土) 19:47:45.98ID:lwjgGQ+N0161デフォルトの名無しさん
2016/06/25(土) 19:50:30.14ID:EMJ+tt/R0162デフォルトの名無しさん
2016/06/25(土) 19:55:02.09ID:EMJ+tt/Rやっぱりここはサルばかりだという再認識。
三谷幸喜、やっぱりサルばかりって番組つくらねぇかな…
0163デフォルトの名無しさん
2016/06/25(土) 20:38:39.64ID:x9ZpL4V50164デフォルトの名無しさん
2016/06/25(土) 20:51:06.14ID:EMJ+tt/Rいちいち言わないと自我が保てないっすか。
0165デフォルトの名無しさん
2016/06/25(土) 21:13:04.23ID:IGrWHBepThis thread exists for Japanese programmers. English users are minority in here.
If you wanna study English more, here is unreasonable for English study, so please get out of here.
0166デフォルトの名無しさん
2016/06/25(土) 22:00:47.38ID:EMJ+tt/R>This thread exists for Japanese programmers.
Hahaha, so, there is no problem. That's because I'm Japanese "computer" programmer
It's me who decide what here is. You don't need care about it.
Shut your mouth up and fix your shit code quietly.
Incidentally, native speakers hardly understand what the meaning of "programmer" you said.
In fact, my english teacher who is an anamerican could not understand what meaning does "programmer" that I said have.
You should better to say "computer" programmer.
0167デフォルトの名無しさん
2016/06/25(土) 22:21:29.70ID:SQhzEAbbボク英語使えてスゴいんですー と言いたいだけじゃなけりゃな
0168デフォルトの名無しさん
2016/06/25(土) 22:24:14.14ID:EMJ+tt/Rスレに合った内容の >>113 に文句つけてきたのは
ID:SsSykaVs と ID:IGrWHBep なんだけど、
お前は日本語が読めない人?
サル島だな、本当にここは。
0169デフォルトの名無しさん
2016/06/25(土) 22:30:17.60ID:IGrWHBep0170デフォルトの名無しさん
2016/06/25(土) 22:31:22.22ID:EMJ+tt/RBepさんは本当に訳の分からない事ばっか言うからとても面白い。
0171デフォルトの名無しさん
2016/06/25(土) 22:31:47.05ID:SQhzEAbb>>166 はスレに合った内容なの?
自分の書いてる内容も分からない人?
0172デフォルトの名無しさん
2016/06/25(土) 22:34:21.01ID:GZJ2skpSID:EMJ+tt/R
君はどこの国の人ですか?
0173デフォルトの名無しさん
2016/06/25(土) 22:35:04.58ID:EMJ+tt/R返信ってのは、相手の書いた内容に対してするもんだが、
お前はスレの趣旨にあってなきゃ返信しないのか?
おまえのそのレスはスレの趣旨にどう係るんだ? ハゲ
0174デフォルトの名無しさん
2016/06/25(土) 22:36:02.34ID:EMJ+tt/R俺がどこの人だか知りたい? そんなに気になる? >>131
0175デフォルトの名無しさん
2016/06/25(土) 22:40:06.43ID:OUHcYt/l0176デフォルトの名無しさん
2016/06/25(土) 22:41:17.51ID:EMJ+tt/Rおまえらがアホみたいに脚を上げ過ぎるだけだ。
俺のせいじゃない。
いい加減に気づけ、猿人。
0177デフォルトの名無しさん
2016/06/25(土) 22:43:14.39ID:EMJ+tt/R>>175はどういう思考回路してんだ?
レクター博士に頭開いて脳みそ食べてもらえ。馬鹿が治るぞ。
0178デフォルトの名無しさん
2016/06/25(土) 22:44:23.63ID:GZJ2skpS0179デフォルトの名無しさん
2016/06/25(土) 22:49:47.56ID:EMJ+tt/R面白そうだからじっくりと拝聴してみましょう。
0180デフォルトの名無しさん
2016/06/25(土) 22:50:33.11ID:EB7Ipfvaじゃああなたが思う中級者ってどの程度ですか?
0181デフォルトの名無しさん
2016/06/25(土) 22:52:02.21ID:IGrWHBep反省と謝罪を致しますので、許して下さい。
0182デフォルトの名無しさん
2016/06/25(土) 22:53:47.84ID:EMJ+tt/R「自分は中級者だ」と思うやつに中級者はいねぇよ。
「自分はまだまだ全然ダメだ」と思い続けてる奴こそ、中級か上級か特級だ。
こんな答えでいいか?
0183デフォルトの名無しさん
2016/06/25(土) 22:54:35.22ID:EMJ+tt/RBepさんは本当に訳の分からない事ばっか言うからとても面白い。
0184デフォルトの名無しさん
2016/06/25(土) 22:55:42.18ID:OUHcYt/l昨日からずっと見てたが、何でそんなにカリカリしてんだよ
0185デフォルトの名無しさん
2016/06/25(土) 22:55:43.09ID:EB7Ipfvathanks!
0186デフォルトの名無しさん
2016/06/25(土) 22:58:28.47ID:EMJ+tt/Rなんでそんなに喜々としてるんだよって言えよ。
理由を書いておこう、サルと戯れるのは楽しい余興だからだ。
0187デフォルトの名無しさん
2016/06/25(土) 23:00:12.66ID:OUHcYt/l悪いが楽しそうには見えない、不愉快だ
お前が出て行かないなら俺が出て行く
0188デフォルトの名無しさん
2016/06/25(土) 23:00:55.78ID:EMJ+tt/Ru are welcome.
0189デフォルトの名無しさん
2016/06/25(土) 23:01:45.48ID:EMJ+tt/R>お前が出て行かないなら俺が出て行く
やった、ラッキー! 祝杯をあげないとな。酒買ってくるか。
0190デフォルトの名無しさん
2016/06/25(土) 23:03:31.68ID:aOO0yOI1WebProgにあったころよりひでえじゃねーか
0191デフォルトの名無しさん
2016/06/25(土) 23:07:24.38ID:EMJ+tt/R>>190
ああ、勿論そうだ。
IDが出るってことは、お前らも自分の主張が正しいのかを試されるってこった。
良い奴だろうが根性が曲がってる奴だろうが、
論理的で正しい奴が幅を効かせる本当にシビアな世界になった。
残念だったな、お前の思うとおりに成らなくて。もっと精進しろってことだ。
0192デフォルトの名無しさん
2016/06/25(土) 23:10:35.81ID:NFDjTfBf0193デフォルトの名無しさん
2016/06/25(土) 23:14:37.81ID:NFDjTfBfPEARやらSmartyやらへのリンクはもう要らないだろうし, ComposerやPSRへのリンクは導入したい
0194デフォルトの名無しさん
2016/06/25(土) 23:16:15.82ID:EMJ+tt/Rdon't dreamin'. do it.
0195デフォルトの名無しさん
2016/06/25(土) 23:17:58.69ID:EMJ+tt/R0196デフォルトの名無しさん
2016/06/25(土) 23:20:23.03ID:D+iRC7xS0197デフォルトの名無しさん
2016/06/25(土) 23:23:16.84ID:EMJ+tt/R0198デフォルトの名無しさん
2016/06/25(土) 23:27:38.18ID:zF7ZRL+C続けて
0199デフォルトの名無しさん
2016/06/25(土) 23:32:49.07ID:EMJ+tt/R何を?
0200デフォルトの名無しさん
2016/06/25(土) 23:34:09.94ID:D+iRC7xS0201デフォルトの名無しさん
2016/06/25(土) 23:34:11.73ID:zF7ZRL+Cgo on
0202デフォルトの名無しさん
2016/06/25(土) 23:36:55.96ID:EMJ+tt/R0203デフォルトの名無しさん
2016/06/25(土) 23:38:07.36ID:EMJ+tt/R0204デフォルトの名無しさん
2016/06/25(土) 23:38:46.81ID:EMJ+tt/Rdon't dreamin'. do it.
で完結してるってことが分からない馬鹿なの?
0205デフォルトの名無しさん
2016/06/25(土) 23:39:22.99ID:DimbJFTY0206デフォルトの名無しさん
2016/06/25(土) 23:40:29.40ID:zF7ZRL+CCome on
0207デフォルトの名無しさん
2016/06/25(土) 23:42:16.66ID:EMJ+tt/R寝るか…
0208デフォルトの名無しさん
2016/06/25(土) 23:42:51.76ID:zF7ZRL+CCan you here me?
0209デフォルトの名無しさん
2016/06/25(土) 23:45:25.99ID:EMJ+tt/Rお前はアホだから
https://www.youtube.com/watch?v=_ItAGUaLNFE
の2:40あたりを観て糞して寝ろ。
俺は布団に入る。
0210デフォルトの名無しさん
2016/06/25(土) 23:46:56.72ID:zF7ZRL+CFuck your night
0211デフォルトの名無しさん
2016/06/25(土) 23:50:39.69ID:D+iRC7xSNG毎日するのは面倒だから
0212デフォルトの名無しさん
2016/06/25(土) 23:50:49.43ID:IGrWHBepさすがにサル呼ばわりは名誉毀損罪又は侮辱罪に相当するから、立派な犯罪行為ですなあ。
被害届出して裁判所行けば、前科者にできますな。
一度、管理人と相談してみましょう。態度が直らない場合はbanも容赦しないということで。
http://echo.2ch.net/test/read.cgi/tech/1456638931/74
0213デフォルトの名無しさん
2016/06/25(土) 23:58:08.60ID:zF7ZRL+CLong goodby monkey.
0214デフォルトの名無しさん
2016/06/25(土) 23:59:04.59ID:EMJ+tt/Rこの中に自分が誰であるか示した奴はいるのか?
誰であるかわからねぇ奴の名誉って、なんだ?
誰であるかわからねぇ奴が侮辱された事をどう立証するんだ?
0215デフォルトの名無しさん
2016/06/25(土) 23:59:16.36ID:SsSykaVsそういうわけで、ワッチョイスレが作られた。
NGできるからWebProg時代よりはるかに楽にはなってるけどね。
【PHP】下らねぇ質問はここに書き込みやがれ 5 [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1462971286/
別に彼もワッチョイに否定的なわけでもないだろうと思う。
0216デフォルトの名無しさん
2016/06/26(日) 00:02:11.87ID:VEieeoHdなどと意味不明な供述を繰り返しており、
0217デフォルトの名無しさん
2016/06/26(日) 00:04:52.95ID:cUVy9BqO本当に何するにしても面白い人だな。
さすがPHPerだけの事はある。
0218デフォルトの名無しさん
2016/06/26(日) 00:06:11.43ID:cUVy9BqO分からねえのはお前だけだよ。
0219デフォルトの名無しさん
2016/06/26(日) 00:23:04.34ID:VEieeoHdそれは被害者が泣き寝入りした場合だよね。
もし被害者が被害届を出したら、通信記録から簡単に特定できるよね。
0220デフォルトの名無しさん
2016/06/26(日) 02:06:38.51ID:lAdEU/n1str_padで文字列を指定できれば良かったのですが
0221デフォルトの名無しさん
2016/06/26(日) 02:08:15.43ID:GzysfS140222デフォルトの名無しさん
2016/06/26(日) 02:16:05.73ID:lAdEU/n1こんな関数はじめて知りました
さすがPHPですね
ありがとうございます
0223デフォルトの名無しさん
2016/06/26(日) 06:56:42.58ID:cUVy9BqO>>219
俺はお前らがアホな事を言った後に、行った奴に対してサルと言っているが、
>>172 ID:GZJ2skpS
>>178 ID:GZJ2skpS
>>181 ID:IGrWHBep
は、俺を貶めるために全く関係のない人たちをやり玉に挙げた。
彼らが泣き寝入りしてくれるといいな。
0224デフォルトの名無しさん
2016/06/26(日) 07:05:26.65ID:cUVy9BqOこいつ、何で独り言つぶやいてんの? 誰と話してんの?
なんか、俺の知らない変なルールでも2chにはあるの?
http://echo.2ch.net/test/read.cgi/tech/1456638931/
71 : デフォルトの名無しさん2016/06/25(土) 23:21:22.54 ID:IGrWHBep
PHPスレに英語好きで陰湿な人が棲み付いたみたい。
人を見たらサル呼ばわりするような性格がひね曲がった人みたい。
英語ネイティブを気取ってるけど、綴り間違いが多くて怪しい。
72 : デフォルトの名無しさん2016/06/25(土) 23:26:34.03 ID:IGrWHBep
奴は手当たり次第、通行人を傷付けているようだ。
事案として認定する。
73 : デフォルトの名無しさん2016/06/25(土) 23:27:21.77 ID:IGrWHBep
あげ
74 : デフォルトの名無しさん2016/06/25(土) 23:40:05.95 ID:IGrWHBep
さすがにサル呼ばわりは名誉毀損罪又は侮辱罪に相当するから、立派な犯罪行為ですなあ。
被害届出して裁判所行けば、前科者にできますな。
一度、管理人と相談してみましょう。態度が直らない場合はbanも容赦しないということで。
0225デフォルトの名無しさん
2016/06/26(日) 07:18:16.07ID:cUVy9BqO208 : デフォルトの名無しさん2016/06/25(土) 23:42:51.76 ID:zF7ZRL+C
>207
Can you here me?
は「このサル何言ってんだ?」と訝しんでたが、
Can you hear me?
って言いたかったのか。聞こえてたよ、心配すんな。
0226デフォルトの名無しさん
2016/06/26(日) 08:02:58.51ID:gRCwi37J0227デフォルトの名無しさん
2016/06/26(日) 08:10:46.73ID:cUVy9BqO発言内容ではなくIDの色が何であるかの方が気になる価値観のおかしい奴の評価なんか知らねぇよ。
無駄に目覚めずに明日まで寝てろ。
0228デフォルトの名無しさん
2016/06/26(日) 09:48:21.22ID:Jc5W4PmG0229デフォルトの名無しさん
2016/06/26(日) 10:38:03.81ID:gRCwi37J0230デフォルトの名無しさん
2016/06/26(日) 10:49:07.71ID:cUVy9BqOよし、俺のお里を言ってみろ。
>>229
You said "I'm insane", that's what a self-introduction
, right?
0231デフォルトの名無しさん
2016/06/26(日) 10:53:40.78ID:uDQdGyjV他人を人間扱いせずサル呼ばわりする差別主義者のID:cUVy9BqOさんよ
彼らって誰?
0232デフォルトの名無しさん
2016/06/26(日) 10:59:46.38ID:cUVy9BqO自分たちの仲間を「同胞」と呼び常に「反省と謝罪」を求める民族が
お前が今考えている者の他にあるなら説明してみろよ、ハゲ。
思い当たる者がいないのなら、おまえはもう少し新聞呼んだりニュース見たりしろ、サル。
お前としてはどっちの罵声が嬉しいんだ?
0233デフォルトの名無しさん
2016/06/26(日) 11:04:33.00ID:cUVy9BqOそういうお前の態度を卑屈で肝っ玉が小さいと言ってるんだよ、おさるさん。
0234デフォルトの名無しさん
2016/06/26(日) 11:10:23.89ID:uDQdGyjV自分がする差別は許されて、他人からの差別は許さないんだ
論理矛盾しているよな?
0235デフォルトの名無しさん
2016/06/26(日) 11:16:16.99ID:cUVy9BqOおまえは何か勘違いしてんじゃねぇのか?
0236デフォルトの名無しさん
2016/06/26(日) 11:18:18.37ID:4jUOs5zQ0237デフォルトの名無しさん
2016/06/26(日) 12:02:40.89ID:gRCwi37J0238デフォルトの名無しさん
2016/06/26(日) 12:03:08.19ID:9G4pt3CCsimple_html_domで複数のHTMLファイルをループで展開しているときに処理が中断されてしまいます
例えば5回ループしているのに3回〜4回(ファイルによって変動)までしか処理されないという感じです
手元のxampp環境だと特にそういうことはなく、無料のレンタルサーバ上でのみ発生しています
処理時間がかかりすぎることによる中断やメモリ関係でしょうか?
0239デフォルトの名無しさん
2016/06/26(日) 12:31:06.59ID:5w6IpmHO時間制限なりメモリ制限なりの可能性はあるけど、その場合はログになんか出てると思うよ
0240デフォルトの名無しさん
2016/06/26(日) 17:09:39.09ID:9G4pt3CCログには何にも出ていないっぽいんですよね...
echo で調べていくと、perseあたりで止まってるのですが、
echoで表示する文字が増えてると止まる場所が変わっているのでやっぱりメモリ制限かな
0241デフォルトの名無しさん
2016/06/26(日) 18:37:36.69ID:lAdEU/n1array_pad([],$num,'%s')
みたいにするしかないですか?
もっといい方法ありますか?
0242デフォルトの名無しさん
2016/06/26(日) 19:00:38.94ID:wMYGyLfw0243デフォルトの名無しさん
2016/06/26(日) 19:04:28.34ID:wI6dOEd40244デフォルトの名無しさん
2016/06/26(日) 19:14:27.04ID:lAdEU/n1そんな関数があったんですね
その方がいいですね
ありがとうございました
0245デフォルトの名無しさん
2016/06/26(日) 19:34:46.45ID:VEieeoHdWebサーバーレンタルで検索
0246デフォルトの名無しさん
2016/06/26(日) 19:34:49.04ID:wMYGyLfw試験利用であればAzure App ServiceのFreeプランとか
0247デフォルトの名無しさん
2016/06/26(日) 20:02:51.54ID:wI6dOEd4>>246
説明不足ですいません。
自作したwebアプリを宣伝したいという意味です
0248デフォルトの名無しさん
2016/06/26(日) 20:10:33.21ID:VEieeoHd検索エンジンなどに登録してSEO対策、ニュースメディアに公開
0249デフォルトの名無しさん
2016/06/26(日) 21:05:33.10ID:cUVy9BqOどんなんか見してみ。評価してやるから。
0250デフォルトの名無しさん
2016/06/26(日) 21:17:50.05ID:gRCwi37Jバナナ関数
0251デフォルトの名無しさん
2016/06/26(日) 21:35:46.24ID:wI6dOEd4ありがとうございますく(`・ω・´)
>>249
(´ε`;)
0252デフォルトの名無しさん
2016/06/26(日) 21:47:20.46ID:lAdEU/n1escapeshellcmdしてからescapeshellargするのでしょうか?
今までescapeshellargだけしていたのですが、
これだと&がエスケープされないことに気付きました
ただ何故か&を含むファイルも作成されていますが・・
0253デフォルトの名無しさん
2016/06/27(月) 00:15:53.23ID:xiGAouKM''で囲んだ場合は&をエスケープする必要がなくなるので、
むしろescapeshellcmdをかけたら駄目でした
0254デフォルトの名無しさん
2016/06/27(月) 02:44:12.79ID:dp+rrPkw『やれや』って遠くからみると『PHP』に見える!
0255デフォルトの名無しさん
2016/06/27(月) 07:18:24.48ID:7SnbuDcXブラックリストやホワイトリストで制御した方がいいんじゃねぇかなと思うんだが、
まぁ、行っても無駄だろう…
0256デフォルトの名無しさん
2016/06/27(月) 11:36:32.03ID:ECdSBHnJ表示させる文字の位置とか、カラムの入れ替えとか、
オリジナルの機能(検索等)
どうしてるんですかね?
プラグインやテンプレートでの調整では限界があるので
結局直接ソースをいじることになるのですが
こうなってくるとワードプレス使うより
平で、phpで1から作ったほうが自由度高いやんってなってくるんですが
それでもワードプレスで作る人は多く、
会社でも「ワードプレス案件」とかいってあえて
ワードプレスで作ったりするところもあります。
CMSはどうやって自由度をあげてるのでしょうか?
0257デフォルトの名無しさん
2016/06/27(月) 13:42:05.02ID:adON55CR>表示させる文字の位置とか、カラムの入れ替えとか、
>オリジナルの機能(検索等)
>どうしてるんですかね?
それぐらいは、テンプレート改造でどうにも出来るよ。
質問の内容が初級レベルだから、シッカリ検索しようね
0258デフォルトの名無しさん
2016/06/27(月) 14:24:58.13ID:kjXwVk2ZこれってWordPressのアップデートで上書きされるんじゃない
0259256
2016/06/27(月) 15:28:51.87ID:ECdSBHnJそうなんですよ。
だからなおさら WordPressでの制作がやりづらくて・・・。
テンプレート改造をしてても、かゆいところに手がと説かないというか
結局ハードコーディングだらけで管理画面からいじっても反映されなく鳴ってしまう。
0260デフォルトの名無しさん
2016/06/27(月) 15:46:54.68ID:S3kzmj/t0261デフォルトの名無しさん
2016/06/27(月) 16:06:04.21ID:kb5xfNcl0262デフォルトの名無しさん
2016/06/27(月) 17:52:23.92ID:adON55CRすまん、一言だけ云わせてくれ!
>>259
だから、functions.phpがあるんだろー
ここで、オーバーライドしろよー
0263デフォルトの名無しさん
2016/06/27(月) 18:01:33.32ID:ulCGjLYQ0264デフォルトの名無しさん
2016/06/27(月) 18:28:46.12ID:xiGAouKMまた実行中にそのサイズが変化することもあるのでしょうか?
0265デフォルトの名無しさん
2016/06/27(月) 18:35:45.16ID:3heDpCFy0266デフォルトの名無しさん
2016/06/27(月) 18:51:39.02ID:7SnbuDcXそれはお前の能力の問題。管理画面で設定するように、結構簡単に出来る。
勿論、Wordpressがダメなのはお前が言っている通り。
前にも言ったが、WPはCMSではない。ただのブログシステム。
使っている言語は確かにPHPだが、あれはPHPではなくてWordpressという言語。
それでもWP案件が多いのは結局のところ、
ユーザーはそんなに難しい物を求めていないということ。
だからWP使えますっていう、
システムのことをろくに知らないけどちゃんとしたデザイナーは抱えているWEB屋が巷の案件をかっさらっていく。
それに対抗するにはシステム屋もその流儀に合わせる必要があったからだ。
デカイ案件はJavaやC#あたりが使われるので、
元々PHP向けだった案件はWordpressに食われた。
だから周りはローディングアイコンがくるくる回るサイトばかりになったというわけだ。
ちなみに「ユーザーはそんなに難しい物を求めていない」のは事実なんだが、
いざ開発が始まるとアレも欲しいこれも欲しいと言い出すので、
下手にWPで受けると確実に回収できない。
俺の大好きなオーダーメイドジュエリーショップがWPで構築されているのが我慢のならない今日この頃だ。
0267デフォルトの名無しさん
2016/06/27(月) 18:58:03.11ID:7SnbuDcXID:ECdSBHnJ のことをバイト君と呼ぼう。
0268デフォルトの名無しさん
2016/06/27(月) 21:58:15.97ID:YE6O36Dw0269デフォルトの名無しさん
2016/06/28(火) 10:20:47.88ID:yXQ8/50V0270デフォルトの名無しさん
2016/06/28(火) 13:29:17.16ID:B2uuEZAu0271デフォルトの名無しさん
2016/06/28(火) 14:46:37.15ID:fr3JVVZf0272デフォルトの名無しさん
2016/06/28(火) 15:54:38.93ID:yf0hDcB5みんな技術的な勉強ってどんなふうにしてるんでしょうか?
というのも本読んでみても、書いてあることが理解できなかったり
なんとなくは分かったが、結局それがどういうメリットをもたらすのか
よくわからなかったりとかしてなかなか吸収できなかったりします。
ライトニントークで難しいことを言ってる上級プログラマでも、
最初は hello world から始まった(おそらく)わけで
そのあと、どういう勉強法を経て上級者になっていったのでしょうか?
勉強する上で大事な心構えはなんなのでしょうか?
0273デフォルトの名無しさん
2016/06/28(火) 15:56:20.90ID:gJNhZueSプログラマー?
WEBアプリ制作業?
0274デフォルトの名無しさん
2016/06/28(火) 15:59:35.67ID:IaLJXX4Aプログラマーってことはないだろう
0275デフォルトの名無しさん
2016/06/28(火) 16:17:47.24ID:B2uuEZAu多分だけど、原書のリファレンスを頑張って読んでいるだと思うよ。
リファレンスさっぱりの人は、PHPの絵本とか自分のレベルにあった教則本読んで、
最終的にリファレンスを半分以上読み込んでいるだと思う。
0276デフォルトの名無しさん
2016/06/28(火) 16:18:06.28ID:vwMyrAmM汚い臭い変態で犯罪予備軍ってイメージ
あと貧乏
0277デフォルトの名無しさん
2016/06/28(火) 16:19:27.60ID:wzNrcJ7f>>272
少し前に、それまでほぼ全く使ったことがなかった言語の小さい案件をやった
リファレンスの類を読みまくって、
やりたいことに関係する事例・サンプルの意味を理解できるまで細かく調べた
あとはやりたいことを設計して設計して設計して、書いただけ
ハウツー系の本もハウツー系のサイトも基本的に不要、リファレンスが大事、と思う
0278デフォルトの名無しさん
2016/06/28(火) 16:42:09.27ID:gJNhZueS>>277
税務署に出す個人事業の開業届です。
0279デフォルトの名無しさん
2016/06/28(火) 16:45:06.61ID:wzNrcJ7f情報通信業 > 情報サービス業 > ソフトウェア業
だと思うけど、税務署に電話すればさっくり教えてもらえるから電話すべし
0280デフォルトの名無しさん
2016/06/28(火) 17:02:42.56ID:gJNhZueS的確なアドバイスありがとうございます。
税務署に相談してみます。
0281デフォルトの名無しさん
2016/06/28(火) 17:11:51.97ID:4uPkxyfr0282デフォルトの名無しさん
2016/06/28(火) 17:56:26.77ID:pwYFzlu8パーフェクトPHPとPHP逆引きレシピ第2版を読み込め!
そしてPHPマニュアルの内容を丸暗記だ!!!
0283デフォルトの名無しさん
2016/06/28(火) 18:24:00.76ID:203MKP8O学生バイトなら来るんじゃね
0284デフォルトの名無しさん
2016/06/28(火) 19:00:01.41ID:pdViSLjz作りたいものを作るためにどうやればいいかを勉強
→これだと知識に偏りがでるのでたまにリファレンスなどを読む
これでOKです
0285デフォルトの名無しさん
2016/06/28(火) 19:02:15.95ID:lZNBa9aJ0286デフォルトの名無しさん
2016/06/28(火) 19:04:50.07ID:5oY9RnSBPHPが気持ち悪いところは、他の言語にある機能をかたっぱしから取り込んじゃうことなので、
わざわざ他のスクリプト言語を特別な理由なく勉強する意味ないと思う。
CとかHaskellみたいな、全く毛並みが違う言語のほうがいいんじゃねぇかな。
Cでメモリ自分で管理するの、結構楽しいぞ。はえーし。
0287デフォルトの名無しさん
2016/06/28(火) 19:12:19.89ID:pdViSLjzオブジェクト指向で書けてるなら、rubyもpythonもあんまり違いはないと思います
やってみても損はないとは思いますが
0288デフォルトの名無しさん
2016/06/28(火) 19:17:56.26ID:lZNBa9aJ機械学習やOpenCVなどでよくPythonが使われているのと、数あるPHPフレームワークがRailsの影響を受けているっていう話を聞いたからなんや
確かに、PHPで作りたいwebアプリは全てカバーできるとは思う
0289デフォルトの名無しさん
2016/06/28(火) 19:21:01.94ID:pwYFzlu80290デフォルトの名無しさん
2016/06/28(火) 19:28:17.72ID:5oY9RnSBそれが大失敗だったんだけどな。
0291デフォルトの名無しさん
2016/06/28(火) 19:28:51.05ID:203MKP8O0292デフォルトの名無しさん
2016/06/28(火) 19:47:48.54ID:5oY9RnSB0293デフォルトの名無しさん
2016/06/28(火) 20:10:31.33ID:pdViSLjzそういう意味で今はAIなどが気になっていますが
phpとAIは何か遠い気がしますね
0294デフォルトの名無しさん
2016/06/28(火) 20:21:12.89ID:yf0hDcB5オブジェクト指向でクラスをいっぱいつくったら
複数のクラスを同時に使う場合、
newをいっぱいかくもんなんですか?
$instance_A = new A_class
$instance_B = new B_class
$instance_C = new C_class
$instance_D = new D_class
みたいな。
0295デフォルトの名無しさん
2016/06/28(火) 20:26:15.51ID:203MKP8O時と場合による
複数のオブジェクトがセットなら配列使う
0296デフォルトの名無しさん
2016/06/28(火) 20:31:13.96ID:5oY9RnSBやるならDIだろう。
0297デフォルトの名無しさん
2016/06/28(火) 20:50:11.69ID:S/9ffm6uコーディングだけではないよね?
どの程度であれば仕事にできる?
半年やってきたんですが勉強のモチベーション上げるのために教えて下さい
0298デフォルトの名無しさん
2016/06/28(火) 21:54:28.05ID:pwYFzlu8PHPは何でも作れるんやで
0299デフォルトの名無しさん
2016/06/28(火) 21:56:16.55ID:pqvv4jkC基本はそうだよ
0300デフォルトの名無しさん
2016/06/28(火) 22:35:41.51ID:e/PoWN9v前任者の方が作ったらしいPHPのソースファイルをいただいたのですが
以下のような構造のコードがありました。(実際にはもっと複雑なコードです)
■index.php
switch($fruit){
case 'Apple'
require("apple.php");
break;
case 'Orange'
require("orange.php");
break;
}
echo MyFunc();
■apple.php
function Foo(){ return 'りんご'; }
■orange.php
function Foo(){ return 'みかん'; }
条件分岐により異なるphpファイルを読み込み、
そこで同名の関数を定義して、分岐を抜けたところでその関数を呼んでいます。
おそらく前任者は、オブジェクト指向のポリモーフィズムみたいなことをしたいのかな?と思うのですが、
・条件分岐で別ファイルを読み込む
・別ファイルで同名の関数を定義して呼び分ける
というのは、それなりによくある記述方法なのでしょうか?
よくある場合、ソースファイルの最初で他のファイルを読み込んで
派生クラスを作ような記述に比べ、どのようなメリットが有るのでしょうか
0301デフォルトの名無しさん
2016/06/28(火) 22:54:19.84ID:ZQq+IliM割とよく見かける気がするが, 書く側が能力不足なだけで何のメリットもない
0302デフォルトの名無しさん
2016/06/28(火) 22:58:00.26ID:GoZd+caMよくあることかは分からんが、仕様や思想が明確になってるのであれば問題無いんじゃね。
クラスの多重継承みたいなことをやりたい場合に使えるかもね。
0303デフォルトの名無しさん
2016/06/28(火) 23:35:00.92ID:4sSl9cCN複数人で開発する際、ファイルを分けた方が、やりやすいとか?
0304デフォルトの名無しさん
2016/06/28(火) 23:50:36.61ID:jC8Cjp2xステートパターンみたいなことを関数で実現しただけでありがちとは思う。
特にアンチパターンでもないだろうし。
ステートパターンなら親子関係である派生クラスを作るより、
並列したクラスの委譲か、関数(ファイル)の切り替えの方がいいだろうね。
0305デフォルトの名無しさん
2016/06/29(水) 00:18:18.88ID:0agFNvvsどうしても何かメリットを挙げろと言われれば、ほんのわずかにパーサの負荷が軽減される
0306uy ◆e6.oHu1j.o
2016/06/29(水) 01:28:01.61ID:XGWq+m9j↑これでググると本来みえちゃいけないソースコードいっぱい出てくる
サーバーサイドのソースコード公開しながら鯖運営するアホ
ペチパーは低学歴しかいない
0307デフォルトの名無しさん
2016/06/29(水) 02:19:50.06ID:GGM+WiYlポリモーフィズムをやりたったけど
オブジェクト指向を知らなかったんやろね
0308uy ◆e6.oHu1j.o
2016/06/29(水) 03:17:22.14ID:XGWq+m9jただの初心者が書いたソースコードだから今すぐ捨てたほうが良い
requireはファイルの行頭に全部まとめる事が大事
途中requireなんて普通に設計してたらそんな事にならない
どうしてもそういう事やるなら
ディレクトリ構造で、途中requireのファイルを別Dirに置いてるならギリギリ許すレベル これ以外は無理
./index.php
./_include/apple.php
./_include/orange.php
0309デフォルトの名無しさん
2016/06/29(水) 03:30:10.25ID:V8sGR9Q5> requireはファイルの行頭に全部まとめる事が大事
なんだそりゃ
0310uy ◆e6.oHu1j.o
2016/06/29(水) 03:36:40.22ID:XGWq+m9j「なんだそりゃ」では、いったいどのレベルにいるか検討が付かないから
そのまま放置されるよ
0311デフォルトの名無しさん
2016/06/29(水) 03:43:17.82ID:BN6nx0uJ0312デフォルトの名無しさん
2016/06/29(水) 03:46:49.95ID:bToL6k7Wその説明だけだとなんとも言えないところだが、とりあえず、
こいつらアホばっかだから、あんまりマトモに話を聞かない方が良いと思うぞ。
大体、お前みたいな素人は間違った情報しか提示できないから
本当に大切だったところが理解できていなくて示されていないことが多い。
そのコードは正しい道の途中を歩いている進化途中の猿のように見える。
てかuy、おまえそんなクソみたいなディレクトリ構造を奨める程度のレベルだったの?
買いかぶってたか。
0313デフォルトの名無しさん
2016/06/29(水) 03:50:41.55ID:bToL6k7Wアホすぎてuyが可哀想だ。
もっとも、uyの言ってることも変ではあるが。
0314uy ◆e6.oHu1j.o
2016/06/29(水) 03:52:11.52ID:XGWq+m9jこれはJekyllのディレクトリ構造
0315デフォルトの名無しさん
2016/06/29(水) 03:55:39.92ID:bToL6k7Wへー。で?
俺には>>308が>>306を言った人間と同じ人間とは思えないんだけど。
0316uy ◆e6.oHu1j.o
2016/06/29(水) 04:03:26.39ID:XGWq+m9jファイル途中でどうしてもrequireするなら
ファイル先頭で行うrequireファイルとは区別しろって事を言ってるんだよ
ここまではいいか?
0317デフォルトの名無しさん
2016/06/29(水) 04:07:08.70ID:bToL6k7W>ファイル先頭で行うrequireファイルとは区別しろって事を言ってるんだよ
良くないな。どのように区別しろと、お前は言っている?
お前が正しいことを言っているかどうか判断するには、
お前が思っていることを正しく表現しなければ無理だ。
それと、さっきのクソみたいなディレクトリ構造について、
お前は本当に正しいと思っているのか?
では何故PHPerの馬鹿さ加減を>>306で笑った?
0318uy ◆e6.oHu1j.o
2016/06/29(水) 04:18:55.32ID:XGWq+m9jw
0319デフォルトの名無しさん
2016/06/29(水) 04:19:55.55ID:bToL6k7W「w」では、いったいどのレベルにいるか見当が付かないから
そのまま放置されるよ
0320uy ◆e6.oHu1j.o
2016/06/29(水) 04:20:28.20ID:XGWq+m9jミス
>>317
理解出来ないか、
残念ながらこれ以上、レベルを下げて話すのは無理だな
プログラミング未経験者と話してるような気分だし
それならプログラミング未経験者同士の雑談の中で進化目指したほうがストレス無いんじゃないか?
0321デフォルトの名無しさん
2016/06/29(水) 04:33:35.79ID:bToL6k7Wオレが理解できないんじゃなくて、お前がアホだという可能性は考慮しないんだな。
> さっきのクソみたいなディレクトリ構造について、
> お前は本当に正しいと思っているのか?
> では何故PHPerの馬鹿さ加減を>>306で笑った?
こう言われても尚、自分のアホさに気づかない程度の奴がそんな事言っても
鼻で笑われるだけだって事がわからん猿だったということか、uyは。覚えておこう。
>プログラミング未経験者と話してるような気分だし
下から見上げてると上の事はよく見えないのは当たり前だから、
まぁ、そういう気分になる奴もいるだろうな。
それは俺のせいではなく、お前の脳の構造の問題だから自分で解決しろ。
>>316 について、uyはレベル高いのかおサルさんなのか判断されるのが怖くて話をごまかして逃げたから知らんが、
>>308 のディレクトリ構造のマヌケさについては他の奴らが起きてきたらすぐに気づくだろう。
もし万が一誰も気づかなかったらそれこそPHPerはマヌケばかりだと言うことだから
呆れ返って涙流しながら夜にでも意味を書くよ。
0322uy ◆e6.oHu1j.o
2016/06/29(水) 04:33:43.48ID:XGWq+m9jJekyllのディレクトリ構造の
./_includes/
内のファイルは特殊で
ソースコード内から
{% include file %}
で_includesの中からファイルを探して埋め込まれる
これは、別にHTMLに限定せず、
.rbの中でも、.phpの中でも .cppでも展開される
そんで展開後のファイルがコンパイルで生成される
↓ のコードは ↓
case 'Orange'
{% include orange.php %}
break;
↓ に展開されて ↓
case 'Orange'
function Foo(){ return 'みかん'; }
break;
↓
./_site/
に、展開後のindex.phpが生成される
ちなみに、出来るってだけで多用はしてない
0323uy ◆e6.oHu1j.o
2016/06/29(水) 04:37:12.66ID:XGWq+m9jいや結構です
はやく逃げたい
0324デフォルトの名無しさん
2016/06/29(水) 04:40:01.13ID:bToL6k7Wそれ、>>308が馬鹿じゃ無いことのなんかの説明になると思って書いてるの?
>>323
逃げてもいいんだよ。どうぞ脱兎の如くお逃げ下さい、おさるさん候補生。
0325デフォルトの名無しさん
2016/06/29(水) 04:50:11.95ID:bToL6k7W> ファイル先頭で行うrequireファイルとは区別しろって事を言ってるんだよ
これの意味が
> Jekyllのディレクトリ構造の ./_includes/ 内のファイルは特殊で
> ソースコード内から {% include file %} で_includesの中からファイルを探して埋め込まれる
これだって言いたいの? まさか…?
0326デフォルトの名無しさん
2016/06/29(水) 04:56:51.01ID:E5uSV41d起きて早々気分最悪なのに暇そうで羨ましい限りだわ
0327デフォルトの名無しさん
2016/06/29(水) 05:04:36.39ID:qQkHqRIX>>300からして明確に「こんな理由があるから絶対駄目あるいは糞」といえる理由を思いつけん
やり方としては、(省略したのかもしれないが)_onceのほうがいいかもね、最近のversionならautoloader使えるよ、程度
だいたい普通はOPCache使えるんだからrequire対象を少なくする意義がそんなに無いという理由もあるか
だが結局 >>302の「仕様や思想が明確になってるのであれば問題無い」これに尽きると思う
それ以降の2者の連投はハッキリ言って意味不明
「ファイルの頭にまとめたほうが良い」は、べき論としてはまぁ有りだが……、と思えるくらい
>>308の _include も、
「Jekyllのディレクトリ構造だからってそのまま受け入れてるくせに>>306みたいにほざくな」とは思うが
_includeの下にphpがいくつか転がってたとして何の問題があるのかわからん。 .include にせよなんて話じゃあるまいな
0328デフォルトの名無しさん
2016/06/29(水) 05:07:19.26ID:bToL6k7W俺だって3時に目が覚めてしまって仕事あるから酒も飲めず苦しんでんだ。
お前なんかどうせ大した事しねぇんだから少しくらい我慢しろ。
0329デフォルトの名無しさん
2016/06/29(水) 05:10:56.75ID:bToL6k7Wお前は多分、大体はわかってんじゃないかな。
ただ、uyの書き込みに対するお前の
>「Jekyllのディレクトリ構造だからってそのまま受け入れてるくせに>>306みたいにほざくな」とは思うが
>_includeの下にphpがいくつか転がってたとして何の問題があるのかわからん。 .include にせよなんて話じゃあるまいな
という解釈は明らかに的外れ。多分考えすぎてるだけだから頭を冷静にすればわかんだろ。
>>306をよく読んでみればな。
0330デフォルトの名無しさん
2016/06/29(水) 05:12:51.56ID:bToL6k7W_onceは楽でいいんだが少し遅い。あれは綺麗な設計が出来無い奴か場合の妥協手段だ。
そういう事は、>>300から始まる本件では全く関係ない話だ。
0331デフォルトの名無しさん
2016/06/29(水) 05:15:50.59ID:qQkHqRIXいやわからんよ
>>312で「クソみたいなディレクトリ構造」というくらいだから
ディレクトリ構造そのものに問題があるのだと思うが理由が全くわからん
ただし、それ以前の問題として>>308の「途中requireなんて」以降全部が意味不明状態だが
言いたいことの基本は資料不足や認識ズレによる勘違いの防止だろ、_includeなんて名前で別ディレクトリにぶち込んで何が解決するよ、と
0332デフォルトの名無しさん
2016/06/29(水) 05:21:53.19ID:bToL6k7W> ただし、それ以前の問題として>>308の「途中requireなんて」以降全部が意味不明状態だが
俺もuyが何を意図してそう書いたのかわからんから聞いたんだが、言わずに逃げた。
お前が言うとおり、もし >>322 が理由だったとしたら本物のアホだったから気にすんなってことだろう。
>「ファイルの頭にまとめたほうが良い」は、べき論としてはまぁ有りだが……、と思えるくらい
は、とても正しい解釈だと思う。
> ディレクトリ構造そのものに問題があるのだと思うが理由が全くわからん
そうか。ちなみにお前は普段、なんかフレームワークとか使うか?
0333デフォルトの名無しさん
2016/06/29(水) 05:29:54.18ID:qQkHqRIXああ、だいたい納得
質問については、基本的に、というか可能な限り自ら使うことはない。プライベートでは100%使わない
0334デフォルトの名無しさん
2016/06/29(水) 05:29:54.72ID:bToL6k7Wお前らがファイルを分離してrequireなりincludeなりするのって、そもそもなんでだ?
0335デフォルトの名無しさん
2016/06/29(水) 05:31:30.68ID:bToL6k7Wそうか。その納得した内容が正しいといいな。
俺はエスパーじゃないから俺の考えてる事とお前の頭の中が同じかどうかはわからん。
0336デフォルトの名無しさん
2016/06/29(水) 05:32:43.07ID:V8sGR9Q5ビューを切り離すため
0337デフォルトの名無しさん
2016/06/29(水) 05:36:01.20ID:bToL6k7Wんー… 切り離すのはビューだけか?
0338デフォルトの名無しさん
2016/06/29(水) 05:36:27.82ID:V8sGR9Q5それ以外はコードの再利用に繋がるんじゃね
0339デフォルトの名無しさん
2016/06/29(水) 05:38:34.05ID:bToL6k7Wそう思ってるのか?
さっきも聞いたが、ちなみにお前は普段、なんかフレームワークとか使うか?
0340デフォルトの名無しさん
2016/06/29(水) 05:41:29.74ID:bToL6k7Wおまえらって、index.phpは一体何だと思ってんだ?
0341デフォルトの名無しさん
2016/06/29(水) 05:45:02.09ID:V8sGR9Q5いやおれは考えを言ったんだからお前の考えを言ったらどうなんだよ。
個別の話をしだしたらいろんな例外はあるだろうが、基本的にそういうことだと思ってるよ。
フレームワークが何を指してるかは分からんが、少なくともアリ物はほとんど使わないね。
自分で作ることも再利用することもあるが。
0342デフォルトの名無しさん
2016/06/29(水) 05:55:00.14ID:bToL6k7Wだれも言わなかったら夜に言うって言ったじゃん。
それまではアトラクションを楽しませろよ。
ところでアリ物を使わないのはいいんだが、
自分で作るのに再利用性の無い物で切り離すのはビューだけなのか?
あんまり大したことしてなさそうだな。
0343デフォルトの名無しさん
2016/06/29(水) 05:55:44.23ID:bToL6k7W0344デフォルトの名無しさん
2016/06/29(水) 05:57:32.36ID:qQkHqRIX>>335 ID:bToL6k7W
問い詰めてた対象の糞コテはすでにいないしもう朝だ
アトラクションとか荒れ材料にしかならんから、後出し後出しはそろそろやめて自身の意見を出して欲しい
0345デフォルトの名無しさん
2016/06/29(水) 05:57:43.38ID:V8sGR9Q5例えば何らかの通知を行う方法としてメールと twitter があったとして、>>300 のやり方なら mail_notifier.php か twitter_notifier.php を switch で require 仕分けて notify() を呼び出す感じになる。
これをクラスのポリモーフィズムでやろうとすればやはり switch で具象クラス MailNotifier か TwitterNotifier を読み分ける必要に加え、それをインスタンス化する個別のコードが必要になる。
その上で $notify->notice() なり notice($notifier) をするわけだけど、インスタンス化するための個別のコードを書くという点はエレガンスに欠ける。
んじゃ前者でいいじゃんという考えもあるでしょ。
あとは >>302 でも言ったけどやっぱ多重継承的な考え方でコードを構成する場合じゃないかな。
これは PHP のクラスじゃできないよね。
0346デフォルトの名無しさん
2016/06/29(水) 06:00:50.04ID:V8sGR9Q5切り離すならビューかね。
DAOみたいなものや各種機能的なものもコードの再利用のためでしょ。
>>343
おれに言ってる?
index.php なんて特に意識してないよ。
URL のパスを省略したときにやってほしいことを書くところじゃないの?
0347デフォルトの名無しさん
2016/06/29(水) 06:04:03.67ID:bToL6k7W言っちゃうのは簡単だ。
でも、この後どっかの馬鹿が変なことを言ってきたとして、
後で俺が思っている事が正しければ、そいつは恥をかく。
そうするとそのことをずっと覚えているだろう。それこそが、そいつのためになる。
もし俺が間違っていて俺が恥をかけば、それこそが俺のためになる。
人生なんて長いんだ。もっと楽しもう。
もし今夜死ぬなら今更一つ学んだところで何の役にもたたんから今すぐ答える必要もない。
だからみんなで index.php とは何かについて語り合おう!
0348デフォルトの名無しさん
2016/06/29(水) 06:04:18.27ID:V8sGR9Q5ちょっと訂正
中腹の
> その上で $notify->notice() なり notice($notifier) をするわけだけど、
を
その上で $notifier>notify() なり notify($notifier) をするわけだけど、
に。
0349デフォルトの名無しさん
2016/06/29(水) 06:07:28.65ID:bToL6k7W> おれに言ってる?
いいや、みんなに言ってる。
> URL のパスを省略したときにやってほしいことを書くところじゃないの?
そうか。←この「そうか」は呆れて言っているわけではない。お前がどう思っているか理解した「そうか」だ。
> DAOみたいなものや各種機能的なものもコードの再利用のためでしょ。
DAOみたいなクソを未だに使ってるのかという事については本件とは関係ないから考えないとして、
お前の場合、DAOの呼び出しどこでしてるの?
0350デフォルトの名無しさん
2016/06/29(水) 06:09:21.59ID:bToL6k7W間違ってないと思うよ。多分だけど。
0351デフォルトの名無しさん
2016/06/29(水) 06:12:40.18ID:V8sGR9Q5DAOみたいなクソとかいちいち突っかかってくる理由がわからん。
おれ個人的な話をすれば少なくとも PHP で DAO など使ってないが、DAO を使った設計がクソかどうかは DAO 自信ではなくその使い方で論ずることでしょ。
0352デフォルトの名無しさん
2016/06/29(水) 06:16:11.19ID:bToL6k7Wうん、だからそのことは「考えない」と言ってる。
その上で、DAO使うならどこでDAOを呼び出してるの?と聞いている。
>DAOみたいなクソとかいちいち突っかかってくる理由がわからん。
おやまぁ、俺がどんな奴かしらないってことは、ここ1ヶ月位ここに来たことない人かな?
理由を言おう。糞なものはクソとしか言えない体質だからさ。
0353デフォルトの名無しさん
2016/06/29(水) 06:21:18.26ID:qQkHqRIXどうあっても今は肝心要のところを出さないのに、
今、ファイル分離だのindex.phpだのと質問しているのは言行不一致
0354デフォルトの名無しさん
2016/06/29(水) 06:32:00.94ID:bToL6k7Wあれ? 言行不一致だと思うって事は
おまえさん、やっぱりuyのどこがアホなのか分かってなかったって事か?
じゃ、まだアトラクション楽しめるじゃないか。
0355デフォルトの名無しさん
2016/06/29(水) 07:04:08.91ID:0agFNvvs逆に言うとその説明抜きにあのディレクトリ構成はやはり例としては不適切かなぁと思うよ
しかしながらその説明があったんだから、そういうことかと納得できるのが技術者だろうとも思う
0356デフォルトの名無しさん
2016/06/29(水) 07:04:41.35ID:0agFNvvsこれも。
0357デフォルトの名無しさん
2016/06/29(水) 07:09:00.07ID:bToL6k7W>そういうことかと納得できるのが技術者だろうとも思う
いいや、お前は技術者じゃないよ。理由は夜話す。
>>356は長いから読むのめんどくさい。自分が正しいと思ってるなら
その要点を纏めて語れ。お前の考え方が間違っていないかもしれないからな。
0358デフォルトの名無しさん
2016/06/29(水) 07:10:18.37ID:0agFNvvs0359デフォルトの名無しさん
2016/06/29(水) 07:19:45.24ID:bToL6k7Wいいよじゃねぇだろ、ハゲ。「すいません、今時間ないので勘弁して下さい」と言え。
0360デフォルトの名無しさん
2016/06/29(水) 07:21:39.65ID:bToL6k7Wまぁ、こんな朝っぱらだから人いねぇし仕方ねぇけど。
0361デフォルトの名無しさん
2016/06/29(水) 08:42:53.74ID:hAe/YxPiオブジェクト指向は、量産型
というイメージであってますか?
0362デフォルトの名無しさん
2016/06/29(水) 10:33:58.87ID:rvs6kLew0363デフォルトの名無しさん
2016/06/29(水) 17:03:27.85ID:GGM+WiYlautohotkeyは便利なのですが、言語仕様がマジでクソなのです
phpで書けたらいいと思うのですが
0364デフォルトの名無しさん
2016/06/29(水) 17:10:10.32ID:huVvmd5Ephphotkeyを使おう
0365デフォルトの名無しさん
2016/06/29(水) 17:28:40.07ID:GGM+WiYlそれはなんですか?
ググっても変なアラビア語のサイトとかしか出てきませんが・・
0366デフォルトの名無しさん
2016/06/29(水) 17:30:22.73ID:GGM+WiYl指定したアプリケーションをアクティブにする
クリップボードの読み書き
ギーボード入力を送る
これだけ出来たらいいです
COMとか言うのを使えばクリップボードの操作はできるようですが
0367デフォルトの名無しさん
2016/06/29(水) 17:55:43.69ID:hAe/YxPi$mysqli = new mysqli(DB_HOST,DB_USER,DB_PASSWORD,DB_NAME);
class hoge{
function get_error{
//クラスのなかでも$mysqliインスタンスを使いたい↓
return $mysqli->error
}
}
$mysqli->close();
一応クラス内のメンバ変数に代入したらいけたんでそれでやってますが、
そんな感じでいいんですかね?
0368デフォルトの名無しさん
2016/06/29(水) 18:01:40.12ID:ViUTH2Whグロバ変数は普通は使わない
どうしてもグロバ使いたいならクラス内でグロバキーワード使えばイケル
0369デフォルトの名無しさん
2016/06/29(水) 18:11:08.48ID:V8sGR9Q5グローバル変数を使うのが手っ取り早いけど、
DB関連 etc. のリソースを保持なり管理するためのクラスを作り、その staticメンバで保持するなんて方法もあるかな。
class DBResources {
public static $mysql;
}
みたいなのを作っておけば、どこからでも DBResources::$mysql で参照できる。
DB接続やトランザクション管理などの機能を DbResources に収めてしまってもいいかもしれない。
0370デフォルトの名無しさん
2016/06/29(水) 18:36:34.18ID:bToL6k7W分かって言ってるのか言ってないのか…
0371デフォルトの名無しさん
2016/06/29(水) 18:39:37.93ID:bToL6k7W俺は先日、クソフレームワーク渡されたせいでglobalを多様せざるを得なかった。
元の設計が糞だから、globalが使えて助かった。
二度とあんなのやらん。
0372デフォルトの名無しさん
2016/06/29(水) 19:35:07.80ID:GGM+WiYlコネクションを適当な場所、
適当なプロパティやコネクション管理を専門に担当するオブジェクトなどに持っておいて
getConnectionのようなメソッドで取得するようにします
インターフェイスを一元化しておいて、その先を考えずに済むようにする、
ということが一番重要なことですね
0373デフォルトの名無しさん
2016/06/29(水) 20:51:05.11ID:bToL6k7W0374デフォルトの名無しさん
2016/06/29(水) 20:52:00.58ID:k2hNBRSAbool、int、stringなどが候補ですが。boolが適当なのでしょうか?
$_SESSION['login_flag'] = true; //bool
$_SESSION['login_flag'] = 1; //int
$_SESSION['login_flag'] = 'ok'; //string
0375デフォルトの名無しさん
2016/06/29(水) 20:59:44.78ID:bToL6k7W0376デフォルトの名無しさん
2016/06/29(水) 21:01:58.37ID:bToL6k7W0377デフォルトの名無しさん
2016/06/29(水) 21:30:24.84ID:Dl78fDxJただフラグといった場合true/false
bool型がない場合は1/0だろう
0378デフォルトの名無しさん
2016/06/29(水) 21:38:07.78ID:V8sGR9Q5オブジェクトに持たせたらそのオブジェクトにどうやってアクセスするかという問題が出てきて堂々巡りになる。
オブジェクトを必要としないアクセス方法が必要。
とどのつまりどこかに static な入口を用意するというのが一番重要な点。
0379デフォルトの名無しさん
2016/06/29(水) 22:15:09.51ID:k2hNBRSAbool型にします。
0380300
2016/06/29(水) 22:21:39.92ID:1FO+PUBL遅くなりましたが、皆さんありがとうございました。
上司に、保守のためこの書き方を守ってねって言われました。
うわーい
0381デフォルトの名無しさん
2016/06/29(水) 22:32:06.34ID:GGM+WiYl自分はそうはしませんね
特殊なアクセス法をしなければいけない、
という知識がコードにばらまかれることが気持ち悪いので
ごく普通のオブジェクトを最前線のインターフェイスにします
そうしておけばその先をどうしようが自由なので
0382デフォルトの名無しさん
2016/06/29(水) 22:41:43.57ID:V8sGR9Q5オブジェクトとクラス(ないしインタフェース)の区別はついてる?
0383デフォルトの名無しさん
2016/06/29(水) 22:53:36.74ID:GGM+WiYlトンチンカンな質問ですね
何故そう思ったんですか?
0384デフォルトの名無しさん
2016/06/29(水) 22:55:20.12ID:GGM+WiYlでも、今はそういうのダサいと思ってます
0385デフォルトの名無しさん
2016/06/29(水) 22:57:55.67ID:V8sGR9Q5DBコネクションをプロパティとして持つオブジェクト $obj があったとき、>>367 のように適当なクラスからそれを参照する場合
class hoge{
function get_error{
//クラスのなかでも$mysqliインスタンスを使いたい↓
$mysqli = $obj->getConnection();
return $mysqli->error
}
}
とやるんだろうが、このクラス内から $obj はどうやって取得するん?
0386デフォルトの名無しさん
2016/06/29(水) 23:06:55.57ID:Dl78fDxJ0387デフォルトの名無しさん
2016/06/29(水) 23:08:12.04ID:V8sGR9Q5そう思うよ
0388デフォルトの名無しさん
2016/06/29(水) 23:10:49.77ID:GGM+WiYlHogeが持つControllerオブジェクトにDbオブジェクトを持たせたりしますね
色んなオブジェクトのハブになるControllerのインスタンスを
各オブジェクトに持たせて、
各オブジェクトはそれを使って必要なオブジェクトにアクセスします
0389デフォルトの名無しさん
2016/06/29(水) 23:13:57.11ID:GGM+WiYldbやloggerはsingletonにしますが
staticなアクセスはcontrollerに局所化する、という話です
あるクラスがsingletonかどうかを知っておく必要のあるのは
controllerだけで十分だ、ということです
0390デフォルトの名無しさん
2016/06/29(水) 23:25:39.01ID:V8sGR9Q5それは結局のところ Hoge のインスタンス化の時に外から DBコネクションを持ってる何らかのオブジェクトを渡されているということで、
すなわち Hoge のインスタンス化の時にDBコネクションを渡すようにしておくのが >>367 に対する回答ということかね?
階層化して Controller のような上位のオブジェクトにしたとしても、外からオブジェクトをもらっておかなければならないという本質は変わらないわけで。
それが悪いとは言わないが、上位オブジェクトが末端のクラスの欲しいものを全部知っていてその面倒を見なくてはいけないというのはあまりイケてるように思えないけどな。
もちろんなんかのフレームワークを使ってるとかで、基本的なつくりとして外からオブジェクトが与えられる前提であればそこに持たせる選択はあると思うけどね。
0391デフォルトの名無しさん
2016/06/30(木) 00:17:29.43ID:iCjEUOEiすごい
0392デフォルトの名無しさん
2016/06/30(木) 02:13:35.80ID:Hy3lwL8Xこっちの話の方が今は有意義みたいだから。
0393デフォルトの名無しさん
2016/06/30(木) 02:24:57.86ID:Hy3lwL8X俺もそうしてるなぁ。
0394デフォルトの名無しさん
2016/06/30(木) 02:29:40.41ID:Hy3lwL8X>>390の内容って、つまりDIだよね?
それはそれでいいと思うんだけど、結局今の話の主題ってどこにあるの?
0395デフォルトの名無しさん
2016/06/30(木) 02:34:58.75ID:Hy3lwL8Xあっそう、凄いね。
って印象が、今はある。ほんとに何なやんでんのか全くわからん…
controllerが何でも知っていなきゃいけない、みたいな、変な事考えてるってことなのかな?
0396デフォルトの名無しさん
2016/06/30(木) 02:55:36.63ID:Uofv8D3yもしクラス Logger がログ出力のためにクラス DBConnection が必要な場合、Logger は DBConnection のインタフェースさえ知っていればよく、DBConnection が内部的にどんなものが必要かを知っている必要は無い。
もちろん Hoge の処理の呼び出し元だって、Hoge が内部で Logger を使っていることなんて知っている必要は無い。
いやむしろ、知っている必要が無いというよりは、知っているべきではない。
仮に Hoge の呼び出し元(Controller とする)がそれらを知っていなければならないとしたら、Controller は Hoge が必要としている Logger、Logger が必要としている DBConnection をお膳立てしなければならない。
もし DBConnection がもっと他の何かを必要としていたらどうする?
もし Logger が差し替わり、DBConnection ではなく LogFile を必要とするようになったらどうする?
と、収集がつかなくなる。
だから Hoge は自身が必要な Logger は自分で取得し、Logger は自身が必要な DBConnection なり LogFile なりを自身で取得しなければならない。
これを系統だってやろうとすると >>394 の言うように DI になる。
DI によって末端のクラスが必要とするいろんなものを上流からたらい回しにする必要が無くなり、各層を純粋な処理のためだけのインタフェースで繋げられるようになる。
Controller になんでも置いとけというのは結局オブジェクト指向から逸脱するということ。
で自動的な DI を使えない環境では、同じようなことを実現するための取っ掛かりとしてクラスのスタティックメンバに頼ることになる(というほど大層なことではないが)。
0397デフォルトの名無しさん
2016/06/30(木) 02:56:09.75ID:Uofv8D3yLogger::getInstance() とか DBConnection::getInstance() を使えるようにし、使いたい処理が必要なもののインスタンスを勝手に取得すればよい。
次にクラスの実体として必要とされるものを選択するため、getInstance がコンフィギュレーション等に基づいてその時必要とされる具象クラスインスタンスを返すようにすれば DI みたいなものになる。
0398デフォルトの名無しさん
2016/06/30(木) 03:01:45.02ID:Hy3lwL8X> あるクラスがsingletonかどうかを知っておく必要のあるのは
> controllerだけで十分だ、ということです
いやぁ、
それを知っておく必要があるのはプログラマだけで、それは設計書に示される事だとおもうんだけどなぁ…
0399デフォルトの名無しさん
2016/06/30(木) 03:07:10.60ID:Hy3lwL8XUtility
という存在について、知らない又は認めない、というスタンスということなのか?
0400デフォルトの名無しさん
2016/06/30(木) 03:11:26.76ID:Hy3lwL8X全ての業務は会社の代表である社長が一元統括する。
各部署が業務の遂行にあたって行う外注についても、
全て社長の指示を仰ぐように
という通達なんじゃないの?
0401デフォルトの名無しさん
2016/06/30(木) 03:15:42.51ID:Uofv8D3y単純に >>367 は Hoge の中で他で使ってるのと同じ $mysqli を参照する方法を聞いてると思われ、
その選択肢としてはグローバル変数を使うか、Hoge の外から $mysqli を与えるのか、はたまたどんなやり方があるのか?
という話からの流れで、これができれば何でも一応の正解だけど、そこから話を膨らませてる感じかな、個人的には。
0402デフォルトの名無しさん
2016/06/30(木) 03:23:39.47ID:Hy3lwL8Xふーむ… それって、プログラミングの悩みじゃなくて、ただの哲学なんじゃないかなぁ…
哲学って、答え出ないよね…
結局今何を聞こうが、自分でこれだという答えを決めて3年くらい経った後に、
「I was such a fool, so unaware what the programming is....」
とか思うしか無いんじゃなかろうか。
0403uy ◆e6.oHu1j.o
2016/06/30(木) 07:47:47.72ID:U+B64GZ8↑このレベルで仕事就いてるとか、どうなってんだろう日本IT
0404デフォルトの名無しさん
2016/06/30(木) 11:52:01.59ID:wgx6c4XVはぁ?
0405デフォルトの名無しさん
2016/06/30(木) 11:58:46.50ID:+D/cohZwindex.phpとは何なんだ
0406uy ◆e6.oHu1j.o
2016/06/30(木) 12:11:06.66ID:U+B64GZ8http://123456.uy.co.jp/index.php
というアドレスを
http://123456.uy.co.jp/
でもアクセス可能にしたい時につける名前
ただしサーバー側で"index.php"を、DirectoryIndexに登録しないと意味はない
0407uy ◆e6.oHu1j.o
2016/06/30(木) 12:13:19.33ID:U+B64GZ8gmkzksレベルの方々でも
業務に尽力できるよう、2chのプログラム板から日本のITを支えてあげる事が
「uy」という存在の使命のように感じています
0408デフォルトの名無しさん
2016/06/30(木) 12:32:14.90ID:wgx6c4XV0409uy ◆e6.oHu1j.o
2016/06/30(木) 12:41:40.80ID:U+B64GZ8普段なんの言語触ってんの?
0410デフォルトの名無しさん
2016/06/30(木) 12:50:50.19ID:wgx6c4XV0411uy ◆e6.oHu1j.o
2016/06/30(木) 13:15:06.60ID:U+B64GZ80412デフォルトの名無しさん
2016/06/30(木) 13:25:14.66ID:1/8oNcykGAMEer みたいに
ゲームの上手い人、寝る時間も惜しんでゲームをする人みたいな感じで
PHPを絵を描くように使いこなす人、
というニュアンスを持つと思っていたのですが実際は
パソコンの大先生みたいなニュアンスなんでしょうか?
↓ こういう人たち?
http://d.hatena.ne.jp/tt_clown/20111025/ng_programmer
0413uy ◆e6.oHu1j.o
2016/06/30(木) 13:29:09.08ID:U+B64GZ8パソコンの大先生と、
パソコンの大先生ごっこをしている人たちを区別する為の差別用語です
0414デフォルトの名無しさん
2016/06/30(木) 13:40:16.11ID:krcZfk1lこれのこと?
14. staticを使えば,わざわざインスタンスを作る必要などない
15. 全部グローバル変数
0415デフォルトの名無しさん
2016/06/30(木) 15:04:30.08ID:HRilbWFY0416デフォルトの名無しさん
2016/06/30(木) 15:05:49.95ID:wgx6c4XV0417デフォルトの名無しさん
2016/06/30(木) 15:14:21.41ID:8IMpbPEW0418デフォルトの名無しさん
2016/06/30(木) 15:32:43.89ID:HRilbWFYSmarty3.1使ってみろよチョンコ
0419デフォルトの名無しさん
2016/06/30(木) 15:42:36.15ID:1/8oNcykMVC環境が構築できるなら
Smartyでもフレームワークでも平打ちでもなんでもOKなんじゃないの????
0420デフォルトの名無しさん
2016/06/30(木) 15:54:35.46ID:/chSWQ9t0421デフォルトの名無しさん
2016/06/30(木) 15:59:55.63ID:gp1pAeXB<?php include('hoge.html')?>
<?php include('hoge.html');?>
↑のインクルード文でセミコロンの有無の違いとはどのようなものですか?
0422デフォルトの名無しさん
2016/06/30(木) 16:08:16.11ID:8IMpbPEW?>の直前なら行の終わりが自明なので省略できる、というだけかと
0423デフォルトの名無しさん
2016/06/30(木) 16:42:00.33ID:gp1pAeXBレスありがとうございます
このインクルード文単体であれば省略しても問題ないということなのですね
教えてくださりありがとうございます
0424デフォルトの名無しさん
2016/06/30(木) 16:54:40.95ID:krcZfk1l文法はそうだけど省略しない方がいい
統一性がなくなり後で後悔する
0425デフォルトの名無しさん
2016/06/30(木) 17:12:29.20ID:aEKtepVG例えば文字列型の8桁の数字であるかどうか正規表現で判定したいときに
$string='20160630';
var_dump( preg_match('/\A\d{8}\z/', $string) );
var_dump( preg_match('/\\A\\d{8}\\z/', $string) );
上記のどちらも期待通りに動いてしまう
「これは誰がうまいこと処理してくれているのか」と
「どちらのスタイルで書くべきか」を教えて欲しい
0426デフォルトの名無しさん
2016/06/30(木) 17:51:19.03ID:iCjEUOEi常に問題をシンプルにすべき。
シングルクォート内のバックスラッシュがどう扱われるかという点に集約される。
http://php.net/manual/ja/language.types.string.php#language.types.string.syntax.single
var_dump('\A');
var_dump('\\A');
0427デフォルトの名無しさん
2016/06/30(木) 17:51:39.23ID:gp1pAeXBレスありがとうございます
自分なりに検索してみたところ>>422さんのいうとおり任意で省略できるところもあるようです
自分ではまだ判断できるレベルではないので基本を身につけるという意味でも記述していきたいと考えます
0428デフォルトの名無しさん
2016/06/30(木) 17:57:31.20ID:aEKtepVGあざっす 言われてみればほんと仰るとおり
phpのコアが''のなかで\\=>\と\'=>'だけ変換してくれる、そこさえ気をつければどちらでも良い、ということですね
0429デフォルトの名無しさん
2016/06/30(木) 18:04:32.12ID:/chSWQ9t0430デフォルトの名無しさん
2016/06/30(木) 18:07:05.46ID:Uofv8D3yそれはそうなんだけど、>>425 をブルクォートにしてもうまく動いちゃうよね。
ダブルクォート内でエスケープが定義されてない文字をエスケープするとそれは元の文字列になり、エスケープできる文字はそれが表す文字に置換される。
たとえば "\t" は定義されてるからタブ1文字に置換されるし、 "\A" は定義されてないから文字列 \A という元のままの文字列になる。
正規表現で例示すれば、
"/\A.\t,\z/" → /\A.(タブ).\z/
"/\\A.\\t.\\z/" → "/\A.\t\z/
となって、異なる文字列になる。
でもどっちの書き方をしても、preg_match では同じようにマッチする。
だから正規表現のパーサーがうまいことやってるんだと思う。
でもこれって正直ややこしいなぁといつも思う。
\ 自体を表すときに数がわからなくなったりw
0431デフォルトの名無しさん
2016/06/30(木) 18:07:20.06ID:5vaSyn6Q>Logger::getInstance() とか DBConnection::getInstance() を使えるようにし、
>使いたい処理が必要なもののインスタンスを勝手に取得すればよい。
それでも、実際には問題が出ることはありませんし
他人がそうすることに文句を言うつもりはありません。
ただ個人的には気持ちが悪いということです
関数言語の洗礼を受けているかどうかの違いかもしれません
関数言語では、同一のパイプに色んなオブジェクトを通す、という感覚があるので
同一の処理に掛けられないものが処理の中に存在していることが気持ちが悪いのです
0432デフォルトの名無しさん
2016/06/30(木) 18:10:19.68ID:5vaSyn6QAI技術の基礎を解説した『Python機械学習プログラミング』を6月30日に発売
http://www.jiji.com/jc/article?k=000001246.000005875&g=prt
こんな記事を見ました
pythonの話をしている人がいましたが、
PHPで機械学習をする本は出そうもないので、
PHPERもこれを読むべきでしょうか
0433デフォルトの名無しさん
2016/06/30(木) 18:37:27.72ID:OLhHZgT/あらゆる物をひとつのオブジェクトに閉じ込めて引きずり回すというのは、なんでもかんでもグローバル変数にしてしまうのとそう変わりが無いよ。
オブジェクト指向というのは自分の面倒は自分で見るようにするということ。
誰かから自分の必要な、しかもその誰かにとっては必要の無いものを貰わなければならないというのは、カプセル化ができていないということだ。
関数型の利点を使い回しているならそれを培った過程を「洗礼」などと言うのもアリだが、元々関数型の欠点だったのに違うパラダイムにわざわざそれを持ち込むというのはただ理解が不足してるだけだ。
どっちでも大差無いことなら気分で好きな方を選べばいいが、問題解決の方法に大きな違いが出るのであればもっと論理的に考えないとな。
0434デフォルトの名無しさん
2016/06/30(木) 18:50:16.18ID:5vaSyn6Qオブジェクトが環流しているエコシステムの中で
勝手にグローバル領域に手を伸ばしてオブジェクトを取り出すことを
行儀が悪いと思うのに、そこまで技術的素養はいらないと思いますが?
0435デフォルトの名無しさん
2016/06/30(木) 18:51:15.00ID:5vaSyn6Qグローバル領域からオブジェクトを取り出すことなのですから
正直とんだお笑いぐさとしか言いようがありません
0436デフォルトの名無しさん
2016/06/30(木) 18:52:37.55ID:iCjEUOEi問題をシンプルにすべき。
それは \t が タブ文字にマッチする正規表現だから。
\ にマッチする正規表現は \\ であり、それを表現するための記述方法は '\\\\' 。
とても単純なことだよ。
0437デフォルトの名無しさん
2016/06/30(木) 19:03:06.38ID:Uofv8D3yんなことは分かってるさ。
分かってるけど \\\\ というのには少々おののくってこと。
若干話は逸れるが、シェルスクリプトでコマンドラインを構築する処理とかも目がチカチカしてくる。
0438デフォルトの名無しさん
2016/06/30(木) 19:10:30.08ID:Uofv8D3yグローバルな名前空間で参照できるクラスと、グローバル変数には決定的な違うがあると思うんだ。
0439デフォルトの名無しさん
2016/06/30(木) 19:12:02.46ID:OLhHZgT/グローバル変数を用意するには、事前に必要になる変数を全部把握していなければならないんだが。
クラスをそれを必要とする者が自分でロードしてそれがグローバルの空間で参照できることとはグローバルの空間に変数を置くこととは全く違うことだぞ。
0440デフォルトの名無しさん
2016/06/30(木) 19:21:18.60ID:Hy3lwL8Xほら、言ったとおり哲学闘争になってきたじゃん。
その文章、文章通りに頭に入ってきてないぞ多分。>>439の意味もわかんないだろうし。
時がたったら馬鹿だったって思うだろうからほっとくしかないよ。
0441デフォルトの名無しさん
2016/06/30(木) 19:24:01.13ID:Hy3lwL8XなんでTwig様がいるのに、そんなポンコツ使わなきゃいけないんだよ。
使って欲しいならSmarty3.1の方がTwig様より優れているところを最低3つ挙げろ。
その内容次第では使ってやらない事もない。
0442デフォルトの名無しさん
2016/06/30(木) 19:25:40.26ID:Hy3lwL8Xそのセリフ、忘れるなよ?
>>405
今、哲学闘争してるから邪魔しないように様子見してるんだが、
一段落したら何故uyをアホ猿だと言ったか説明する。
0443デフォルトの名無しさん
2016/06/30(木) 19:44:17.77ID:Uofv8D3yなぜグローバル変数がいけないのか、これがその哲学の出発点になるのかな。
0444デフォルトの名無しさん
2016/06/30(木) 19:50:48.10ID:Hy3lwL8X「え〜、今更?」って思ったけど、確かにそこなんだろうな、彼が勘違いしてるのは。
0445デフォルトの名無しさん
2016/06/30(木) 19:52:39.02ID:Hy3lwL8X子供は公共の場というと「自分が何しても自由な場所」と考えるが、
大人は公共の場というと「節度を守って互いに共有しあう場所」と考える、
みたいな説明だと分かってくれんのかな?
逆に尚更わかんなくなるのかな?
0446デフォルトの名無しさん
2016/06/30(木) 19:53:14.55ID:Uofv8D3yちょっと話はそれるが、
> http://123456.uy.co.jp/index.php
そういうインデックスまで URL に明示したらインデックスの利点半減だよね。
http://123456.uy.co.jp/ と省略すれば都合によって実体を index.php でも index.html でも他の CGI かなんかでも好きな方式を採れるし、後から切り替えることだってできるのに。
おれが関わってる某サイトも http://example.com/index.html なんて URL を印刷物なんかに示しちゃってるんだよな。
省略することを進言したけど、全く変わらんなぁ
ちなみに、後で index.php に差し替えたくなったら .htaccess でリライトする予定w
クソだよクソ
0447デフォルトの名無しさん
2016/06/30(木) 20:01:23.13ID:Uofv8D3yそのたとえはあまりイケてるようには思えないなぁ
まあ例え方には思想が表れるから、そこを突っ込んでいくと今度は宗教論争になりかねないがw
なんにしても、まず当たり前だと思い込んでいたところに目を向け考えるということが肝心だと思うよ。
0448デフォルトの名無しさん
2016/06/30(木) 20:08:06.79ID:Hy3lwL8X一番いいのは彼が言っている通り、全部controllerに管理させたシステムを作って
3年くらい自分でメンテナンスしてみれば一番わかるんだがな。
多分3年を待たずして彼は逃げ出し、後から入ってきた新人が精神やられるんじゃないかな。
What a fuckin' awesome world here is. なわけだ。
0449デフォルトの名無しさん
2016/06/30(木) 20:13:58.56ID:Hy3lwL8X俺もあんま関係なけど
ctype_digit()に代表されるそれ系のメソッドの
>-128 から 255 までの整数値を渡すと、ひとつの文字の ASCII 値とみなします (負の値には 256 を足して、拡張 ASCII の範囲に収まるようにします)。 それ以外の整数値は、10 進数を含む文字列とみなします。
は、PHPぶっ壊してやろうかと思ったよ。
バリデータのリファクタリングしてて、
しめしめと思ってコードを書き換えてから
マニュアルを最後まで読んで元に戻すまでの10分間返せ、と。
0450デフォルトの名無しさん
2016/06/30(木) 20:21:25.25ID:Uofv8D3y規模にもよるけど Web くらいだとコントローラに全部持たせてもなんとかなっちゃうかも。
仕様変更を重ねるといろんな取得メソッドが増えていき、いらなくなったものも判別つかず「念のため」残して謎のメソッドとして溜まっていき、
本当にやりたい処理では必要もないリソースもよく分からないから「念のため」確保をして CPU時間やメモリを無駄遣いすることになっても、まあ放置できたりする。
それをリプレイスする時に整理のチャンスが来るけど、結局読み解くことができず「念のため」謎のメソッドごと移植対象になって無駄なコストが発生するが、
予算を謎メソッド込のコード規模で見積もれるなら問題無い。
0451デフォルトの名無しさん
2016/06/30(木) 20:21:33.71ID:Hy3lwL8X>>414
こういう人のこと
http://anond.hatelabo.jp/20110329150439
0452デフォルトの名無しさん
2016/06/30(木) 20:23:09.56ID:Hy3lwL8X3行目の「…必要もないリソースもよく分からないから…」あたりで涙が溢れ出てきてその後はよく読めない…
0453デフォルトの名無しさん
2016/06/30(木) 21:02:56.18ID:5H3XVU3F0454デフォルトの名無しさん
2016/06/30(木) 21:07:50.76ID:sLb1f1Kveccubeでsmarty使ってた
いまmagentoやってるけどめんどくせえ
0455デフォルトの名無しさん
2016/06/30(木) 21:13:06.61ID:Hy3lwL8Xもう、その煽り飽きたよ。「俺、大したことしてない」自慢はどうでもいい。
0456デフォルトの名無しさん
2016/06/30(木) 21:15:15.85ID:sLb1f1Kv一年ぶりくらいに覗いたから真面目に答えちゃったよ
0457デフォルトの名無しさん
2016/06/30(木) 21:39:24.80ID:5H3XVU3F0458デフォルトの名無しさん
2016/06/30(木) 21:51:18.97ID:rtdypMBf0459デフォルトの名無しさん
2016/06/30(木) 22:05:26.08ID:6mb8/Dowどうしたもんかね?
0460デフォルトの名無しさん
2016/06/30(木) 22:18:28.46ID:Hy3lwL8X0461デフォルトの名無しさん
2016/06/30(木) 22:35:35.05ID:6mb8/Dowつ鏡
0462デフォルトの名無しさん
2016/06/30(木) 23:13:51.94ID:5H3XVU3F0463デフォルトの名無しさん
2016/06/30(木) 23:28:00.99ID:OLhHZgT/0464デフォルトの名無しさん
2016/07/01(金) 00:00:14.32ID:6h387Z9whttp://twig.sensiolabs.org/doc/templates.html
0465デフォルトの名無しさん
2016/07/01(金) 00:00:33.23ID:6h387Z9w0466デフォルトの名無しさん
2016/07/01(金) 03:49:26.00ID:nOdNhffJ動作的にはSmarty参考にしてるが
あきらかに無駄なものは省いてる(その分PHPのコードは多くなるが)
というのは5年前の話
今はPHP組み込みテンプレートに回帰した
0467デフォルトの名無しさん
2016/07/01(金) 04:37:05.69ID:nuxhinLlどう出るかもこう出るかも、本なんかいらねえだろ、としか言いようがない。
0468デフォルトの名無しさん
2016/07/01(金) 09:07:50.23ID:WjKv4YQ6グローバル変数がいけないとする理由が名前空間を汚すからくらいで理解が止まってるなら、もっと掘り下げた方がいいよ
0469デフォルトの名無しさん
2016/07/01(金) 09:11:23.73ID:WjKv4YQ6>>468 は >>435 へ。
0470デフォルトの名無しさん
2016/07/01(金) 09:38:52.62ID:NFKGUhUyクラスの外から直接
$instance->hoge = "りんご"
と入れるのと
set メソッドを作って
$instance->hoge_set(りんご);
と代入するのとなにが違うんでしょうか?
0471デフォルトの名無しさん
2016/07/01(金) 10:26:52.99ID:J5pfKHnN何も違わないよ。
ただ、カプセル化のためメンバ変数は原則としてprivateにすべきであり、
そうしたなら$instance->hoge =
0472デフォルトの名無しさん
2016/07/01(金) 10:28:01.45ID:J5pfKHnNそうしたなら$instance->hoge = "りんご" という直接のアクセスはできなくなる。
そのため、setterやgetterメソッドを使いメンバ変数にアクセスする。
0473デフォルトの名無しさん
2016/07/01(金) 10:33:46.78ID:AsXln+F0あんたアスペルガーかよ
知らないなら素直に謝りなよ
0474デフォルトの名無しさん
2016/07/01(金) 13:13:46.41ID:nuxhinLl知る必要のない物について、なんで謝らなきゃいけないんだよ。
アスペルガーは自己紹介か?
0475デフォルトの名無しさん
2016/07/01(金) 13:16:02.41ID:nOdNhffJなかよくやろうぜ
0476デフォルトの名無しさん
2016/07/01(金) 13:39:25.37ID:nuxhinLlうるさい、お前があやまれ、百貫デブ
0477デフォルトの名無しさん
2016/07/01(金) 13:59:48.74ID:pwvuyQXb0478デフォルトの名無しさん
2016/07/01(金) 14:13:59.98ID:5rBp6YVVLoggerがLogAggregatorに置き換わる可能性を考えてないのでしょうか?
LoggerであろうがLogAggregatorであろうが呼ぶコードを変える必要がない、
というところがオブジェクト指向における肝要な点なのです
分かりますね?
0479デフォルトの名無しさん
2016/07/01(金) 14:17:01.78ID:f1B4cC0i0480デフォルトの名無しさん
2016/07/01(金) 14:20:57.93ID:5rBp6YVVオブジェクト指向を理解するにはPHPの本だけでは足りません
PHPERといえども、PHP以外に目を向けなくてはいけません
0481デフォルトの名無しさん
2016/07/01(金) 14:26:03.75ID:5rBp6YVVLogAggregator::getInstance()ですか?
そんな醜いコードありませんね?
LogAggregatorをLoggerとして呼べる、というところがオブジェクト指向の力なのですよ
分かりますね?
0482デフォルトの名無しさん
2016/07/01(金) 14:26:23.14ID:NXNtj4AO0483デフォルトの名無しさん
2016/07/01(金) 14:37:15.67ID:WjKv4YQ6Hoge だけが Logger ではなく LogAggregator を使うように変更されたなら LogAggregator::getInstance を使えばいいし、
システム全体として変更になったなら Logger::getInstance が LogAggregator のインスタンスを返せばいいんだろ?
置き換えたり差し替えたりする事を考えているからこそ必要なものを自己解決するようにしろってことなんだが、本当に何も理解できてないんだな。
つか、DI に絡めた説明を読んでも本当に分からないの?
ちょっと理解力の無さに衝撃を受けるけど、>>440 が言うようなことなんだろうかね。
0484デフォルトの名無しさん
2016/07/01(金) 15:09:10.67ID:B4DFHSl0それはオブジェクト指向における肝要な点ではないよね
呼ばれるコードを変えればいいんじゃない?
OreoreLoggerを作ってそれを呼べばいいだけだし
0485デフォルトの名無しさん
2016/07/01(金) 16:28:20.33ID:5rBp6YVV本気で言ってるんですか?
PHPERがオブジェクト指向を台なしにするクソコードを量産してると思うと戦慄しますね
0486デフォルトの名無しさん
2016/07/01(金) 16:30:26.06ID:5rBp6YVVgetLoggerというグローバル関数を作ってそれを呼んだ方がまだマシですよ?
分かりますか?
0487デフォルトの名無しさん
2016/07/01(金) 16:36:16.42ID:nuxhinLlこの爺さんはお前と違って低血圧で寝起きがわりぃんだよ、クソガキ
0488デフォルトの名無しさん
2016/07/01(金) 16:41:33.23ID:nuxhinLl> というところがオブジェクト指向における肝要な点なのです
> 分かりますね?
Of course not.
Shit and Shut your mouth up and write dusty codes quietly, ah?
0489デフォルトの名無しさん
2016/07/01(金) 16:47:47.37ID:5rBp6YVVcode completeなどの教養書を読むことをおすすめします
こちらからは以上です
0490デフォルトの名無しさん
2016/07/01(金) 16:59:21.27ID:6h387Z9wDI寄りっぽい人が >>483 のようなことを書いてるわけで勝負にならず。
>>488 は論外。
0491デフォルトの名無しさん
2016/07/01(金) 17:34:37.38ID:nuxhinLl0492デフォルトの名無しさん
2016/07/01(金) 17:57:24.88ID:B4DFHSl0phpをバカにしたいがためだけに
オブジェクト指向とはなんたるかまで捻じ曲げないでほしい
リファクタリングとか最近新装版出たし読んどこうよ
0493デフォルトの名無しさん
2016/07/01(金) 18:09:47.50ID:5rBp6YVVただPHPERが馬鹿にされるのもしょうがないとこのスレ見てると分かりますね
0494デフォルトの名無しさん
2016/07/01(金) 18:13:10.09ID:5rBp6YVVLOG_NOTICEとLOG_DEBUGが同じでファ?ってなりました
ググったところwindows版phpはログのfacilityの定数がめちゃくちゃなようです
これはPHPイケてませんな〜
0495デフォルトの名無しさん
2016/07/01(金) 18:21:00.03ID:6h387Z9wイベントログに合わせてるので、どちらかというと
イベントログに対して notice と debug を使い分けようとする windows ユーザの方がおかしい。
また syslog用定数をsyslog(またはイベントログ)と関係ないクラスで流用しようと考えてるならそれもおかしい。
0496デフォルトの名無しさん
2016/07/01(金) 19:14:33.29ID:nuxhinLl奴が「PHPerが馬鹿だ」と今回思った理由は奴の頭の中だけのことだけど、
アホの中では、結果が同じなら理由なんてどうでもいい事だろうし。
0497デフォルトの名無しさん
2016/07/01(金) 19:35:59.50ID:NFKGUhUy0498デフォルトの名無しさん
2016/07/01(金) 19:39:13.50ID:NaVGwgiy素の PHP でできもしない DI をやれと言ってるんじゃなくて、なぜ DI という概念が生まれたのかを考えてみたらと言ってるつもりなんだが、そこは分かっているのかな。
0499デフォルトの名無しさん
2016/07/01(金) 19:44:46.37ID:nuxhinLl0500デフォルトの名無しさん
2016/07/01(金) 19:46:35.74ID:nuxhinLl端的に言い表すとても良い言葉が昔から言われ続けてるって事、
わかってるのかな?
0501デフォルトの名無しさん
2016/07/01(金) 19:47:04.39ID:6h387Z9wなぜ生まれたかってことに対してはDRY原則以外にはないけれど、そもそも話の中でインターフェースのイの字も出てこないのはおかしいでしょ。
0502デフォルトの名無しさん
2016/07/01(金) 19:47:42.13ID:NaVGwgiyメンバ変数に直接代入するということは、値を保持する実体を変数に固定化することになり抽象化できていないということ。
アクセスメソッドを通せば値の保持を変数以外にすることもできるし、クラスの動作を維持できる値に限定することでき、クラスの内情を隠蔽できる。
サブクラスでオーバーライドすることもできるし interface化することもできるし、これはポリモーフィズムの考え方の上でも重要。
0503デフォルトの名無しさん
2016/07/01(金) 19:53:06.85ID:NaVGwgiy何言ってるのかよく分からないけど、DI の特筆するべき点は依存性の排除だよ。
上流が下流の事情に合わせて段取りしなければならないのはその間に依存関係ができているということだ。
特に上流が下流に依存している点はとてつもなく愚かなことだろう?
0504デフォルトの名無しさん
2016/07/01(金) 19:54:05.44ID:6h387Z9w結合を疎にすることが目的であって、依存性を排除したわけじゃない。
0505デフォルトの名無しさん
2016/07/01(金) 19:56:46.91ID:NaVGwgiyまあ考え方の上ではそれでもいいんじゃない。
PHP は実行時に後から関数を足せるから満たすべき要件は満たしていると思うよ。
ただその処理に他の関数や変数が必要なのであればクラス化すべきなのは分かるよね。
0506デフォルトの名無しさん
2016/07/01(金) 19:57:30.96ID:NaVGwgiy結合を疎にするってどういうこと?
0507デフォルトの名無しさん
2016/07/01(金) 20:06:17.45ID:NaVGwgiy0508デフォルトの名無しさん
2016/07/01(金) 20:13:22.39ID:6h387Z9w問題は何に依存するかであって、具象クラスよりインターフェイスの方が依存性は低く、
かつ、抽象クラスよりインターフェイスの方が呼び出し側に与える影響は小さくなる。
0509デフォルトの名無しさん
2016/07/01(金) 20:15:08.21ID:6h387Z9w0510デフォルトの名無しさん
2016/07/01(金) 20:17:34.29ID:5rBp6YVV[1,2,3]
という配列を渡したとしたら、
1が第一引数、2が第二引数、3が第三引数になるような形にしたいということです
call_user_func_arrayでクラスのコンストラクタを呼んでみたのですが
やはりというか、___constructは呼べませんでした
いい方法はないでしょうか?
0511デフォルトの名無しさん
2016/07/01(金) 20:17:41.67ID:NaVGwgiyうんとね、Logger を使うクラスだけが Logger(の存在)に依存するのは当たり前なの。
んで Logger の内情に依存しないことが重要だし、Logger を使いもしない Controller が Logger に依存しないことも重要なの。
でないと下流のクラスの仕様に上流が引きずられちゃうでしょう?
0512デフォルトの名無しさん
2016/07/01(金) 20:20:00.68ID:NaVGwgiyLogger(の存在と interface) と言うべきだった
0513デフォルトの名無しさん
2016/07/01(金) 20:26:55.89ID:6h387Z9w誰が注入するかという話はDIのバリエーションの話になるよ。
何もDIコンテナを使ったものだけをDIというわけじゃない。
0514デフォルトの名無しさん
2016/07/01(金) 20:31:02.53ID:5rBp6YVVちゃんとした本を読んだ方がずっと勉強になるのですから、意味ないですよね?
>>510は出来ないのでしょうか?
0515デフォルトの名無しさん
2016/07/01(金) 20:33:54.91ID:e7PnYpXDそして http://php.net/manual/ja/ を丸暗記しなさい
英語が読めるなら原文の方を暗記しなさい
0516デフォルトの名無しさん
2016/07/01(金) 20:35:32.51ID:6h387Z9w連投ごめんね。
ClassAが、
・Loggerの内情に依存しない
・ClassAがLoggerを使っていること(=ClassAの内情)を、他のクラスに知られないようにする
という形にしたいのであれば、ClassAの中でLoggerを利用すればいいだけ。
DIが生まれたのは、ClassAがLoggerと密に結合していることを問題視して、
利用する側がClassAにLoggerを渡すところから始まっている。
そしてそれは引きずられるのではなく、上流が下流に対して振る舞いを指示できるようになったという結果を生んでるんだよ。
0517デフォルトの名無しさん
2016/07/01(金) 20:38:26.06ID:NaVGwgiyDIコンテナが使えないなら当事者が注入しなけりゃ意味が無いだろ。
Controller から Hoge の処理を呼び出すとき、お前は Hoge の存在だけを見て Hoge が何に依存しているのか分かるのかい?
コードを知っているから DBConnection と Logger と FTPSession と Pipe を必要としていて他の物を必要としていないことが分かるんだろ?
ころころ変わるコードに Controller 等の上流を強依存させて何の得があるんだよ。
0518デフォルトの名無しさん
2016/07/01(金) 20:44:56.53ID:5rBp6YVVReflectionClassオブジェクトを作成して
newInstanceArgsメソッドを呼ぶことで出来ました
さすがPHPですね
0519デフォルトの名無しさん
2016/07/01(金) 20:47:32.96ID:NaVGwgiy振る舞いを指定するのは上流ではなく注入処理だよ。
DIコンテナならそれが、Logger::getInstance ならそれが。
これは Logger用の interface を持つオブジェクトを返しさえすればよく、具象クラスとして何を取るかは状況次第。
0520デフォルトの名無しさん
2016/07/01(金) 20:52:58.33ID:5rBp6YVVloggerやstorageなどは中核オブジェクトなんですから
controllerが持つのは当たり前の話ですよ
どうでもいい小さいオブジェクトまでcontrollerが管理するというのとは訳が違うのです
中核オブジェクトを、controllerが管理する
当たり前の話です
分かりますね?
0521デフォルトの名無しさん
2016/07/01(金) 21:04:55.89ID:qQXMaWnAどっちの意見もそれなりに論理で勝負してるのに、お前は取り残されてるなw
0522デフォルトの名無しさん
2016/07/01(金) 21:07:39.17ID:NaVGwgiyどうでもいい小さなオブジェクトはどう扱うつもりなの?
0523デフォルトの名無しさん
2016/07/01(金) 21:11:42.84ID:5rBp6YVV別に、普通に扱えばいいのでは?
0524デフォルトの名無しさん
2016/07/01(金) 21:16:37.08ID:NaVGwgiy普通ね
恥ずかしげもなくそう言えるなら大物だわ。
0525デフォルトの名無しさん
2016/07/01(金) 21:39:49.55ID:YXX+KkPc0526デフォルトの名無しさん
2016/07/01(金) 21:47:14.33ID:9AhyjXN+0527デフォルトの名無しさん
2016/07/01(金) 22:02:12.30ID:NIM9JsnI0528デフォルトの名無しさん
2016/07/01(金) 22:03:34.68ID:Dm1EmYMS0529デフォルトの名無しさん
2016/07/01(金) 22:04:01.53ID:Dm1EmYMSなんでや
0530デフォルトの名無しさん
2016/07/01(金) 23:00:52.52ID:iZDDOrJW0531デフォルトの名無しさん
2016/07/01(金) 23:11:50.29ID:f1B4cC0i0532デフォルトの名無しさん
2016/07/01(金) 23:53:15.86ID:5rBp6YVVまともなフレームワークをそこそこの深さで使ってたら
標準的な手法が身につくと思うのですが・・
0533デフォルトの名無しさん
2016/07/02(土) 00:09:41.68ID:6wqirpOd> controllerが持つのは当たり前の話ですよ
どのフレームワーク使ったらこんな恐ろしいこと言えるようになるの?
0534デフォルトの名無しさん
2016/07/02(土) 00:14:51.51ID:Ak+ALY9s????
きちがいですか?
0535デフォルトの名無しさん
2016/07/02(土) 00:19:04.43ID:Ak+ALY9sつまり標準的なフレームワークと同じやり方をする場合、
よく考えたらloggerをわざわざsingletonにする必要ありませんね
controllerが持っているloggerを使い回すということはコードを見れば明らかなのですから
規約的な意味も希薄ですし
0536デフォルトの名無しさん
2016/07/02(土) 03:08:16.71ID:aZlBsz9HWebProg池よ
初心者がこねーだろ
0537デフォルトの名無しさん
2016/07/02(土) 03:50:31.31ID:Gc3c5Ysplogger と聞いただけで singleton にする必要が無いと思い込んじゃう想像力の無さがお前のダメさを如実に表しているな。
さらに logger が singleton なのかどうかを logger を使う側が気にすることがダメなんだということにもまだ気付いていない。
0538デフォルトの名無しさん
2016/07/02(土) 04:00:37.11ID:Ak+ALY9sその前に変な回答者が多すぎるのが問題では?
少し掃除しないと初心者も可哀想ですよ
0539デフォルトの名無しさん
2016/07/02(土) 05:44:08.77ID:3tO+fsu0ああ、俺もその意見に同感だ。猿は少し間引かないとな。
RADWIMPSが言ってたな。「パンダ増やします、猿減らします」って。
パンダを増やすべきだ。
0540デフォルトの名無しさん
2016/07/02(土) 05:55:20.18ID:Ak+ALY9s8→3
16→4
32→5
みたいな計算をしたいです
0541デフォルトの名無しさん
2016/07/02(土) 06:01:12.08ID:Gc3c5Ysp対数 底の変換 で検索してみるといいよ。
お前がやりたいことは 2 を底(てい)とした対数を取りたいということで、
それは他の底を持つ対数から変換できる。
0542デフォルトの名無しさん
2016/07/02(土) 06:03:21.19ID:3tO+fsu0http://php.net/manual/ja/function.log.php
<?php
echo log(8, 2);
echo log(16, 2);
echo log(32, 2);
0543デフォルトの名無しさん
2016/07/02(土) 06:04:59.88ID:3tO+fsu0悪意はない、すまない。時差の問題だ。
0544デフォルトの名無しさん
2016/07/02(土) 06:06:41.66ID:Gc3c5Yspすまん、それが正解だw
>>541 で言った答えは log(x)/log(2) だったけど、PHP の log は任意の底を取れるんだからそれを使うのが正しいね。
0545デフォルトの名無しさん
2016/07/02(土) 06:08:59.63ID:3tO+fsu00546デフォルトの名無しさん
2016/07/02(土) 07:07:15.18ID:Gc3c5Ysp$x=200; $b=2; 、加えて $l1=log($b); $l2=1/log($b); としたとき、同じ結果を得る以下の式の場合、
A: log($x, $n)
B: log($x)/log($n)
C: log($x)/$l1;
D: log($x)*$l2;
処理時間の昇順に
D: 1.35
C: 1.38
A: 1.68
B: 2.25
って比率だった(PHP5.3)。
PHP的に一番シンプルな A が最速ではないというのは注目ポイントかも。
些細な最適化のためにコードを汚すのは考え物だけど、大量に計算する場合には役に立つかもしれない。
0547デフォルトの名無しさん
2016/07/02(土) 07:09:05.12ID:Gc3c5Ysp間違い
謎の $n とか入ってるけど、底を表す $b に読み替えて。
0548デフォルトの名無しさん
2016/07/02(土) 07:25:22.73ID:3tO+fsu00549デフォルトの名無しさん
2016/07/02(土) 09:07:04.13ID:Gr/AVEJERADWIMPSだってさプークスクス
0550デフォルトの名無しさん
2016/07/02(土) 09:46:41.43ID:VKlZsQCl要件、拡張の可能性、そして使い方次第
0551デフォルトの名無しさん
2016/07/02(土) 11:13:17.79ID:Ak+ALY9slog関数って底が指定できたんですね
自然対数って書いてるので出来ないと思い込んでいました
ありがとうございました
0552デフォルトの名無しさん
2016/07/02(土) 11:14:31.68ID:Ak+ALY9slog関数が遅いのは意外な結果ですね〜
ありがとうございます
0553デフォルトの名無しさん
2016/07/02(土) 12:02:48.88ID:Gr/AVEJE0554デフォルトの名無しさん
2016/07/02(土) 13:01:04.30ID:Uz/cYZNQ底が決まってれば大抵ハードウェアで一発で計算できるけど、任意の底を取れるようにすると対数の計算が二度必要な底の変換公式を内部で使うから遅いんだろうね。
底が決まっていれば予め係数(>>546 で言う $l2)を求めておくことでハードウェア一発で計算できるし、
そのかけ算を別途行ったとしても対数を二度取るよりは速いということなんだろう。
ハードウェアと言ってるのは浮動小数演算ユニットのことだけど、こいつは大抵 y * log2(x) を一度で計算できる命令を持っているから、y の取り方次第で好きな底の対数を計算できる。
0555デフォルトの名無しさん
2016/07/02(土) 13:53:24.67ID:wsJfJL21それ以外の正の底に対しては内部で2回logの呼び出しをするから相対的には遅くなっている
まぁ, とはいえそもそもPHPで数値計算するのは間違ってると言わざるを得ないので, 素直に log($x, $base) 形式を用いるのが実用上正しいのでは
0556デフォルトの名無しさん
2016/07/02(土) 14:36:42.37ID:3tO+fsu0すまんのぅ、わしゃ、もう年寄りだで、自分が書いたのが役に立ったのか立ってないのかもよくわからんのじゃ。
0557デフォルトの名無しさん
2016/07/02(土) 15:10:05.35ID:JtYANZRx対数を 2度計算するとは言え C で書かれた PHP の組み込み関数内で完結した処理より、
対数を 1度しか計算しないとは言えスクリプトで書かれ PHP内では多くの工程で処理されると思われる >>546 の C や D の式の評価の方が速いというのはちょっと驚きだよ。
$l2 のように変数に取らずリテラルで書いてしまえばもっと速いんだろうな。
実験としては十分面白かった。
0558デフォルトの名無しさん
2016/07/02(土) 15:14:10.00ID:wsJfJL210559デフォルトの名無しさん
2016/07/02(土) 16:19:08.15ID:Rb2LkFYj/home/user1/public_html/test1.php
から
/home/test2.php
をincludeするのは
include('/home/test2.php');
と書けば出来ました。
/varなどでも同じように可能でしたが、
/test2.php
include('/test2.php');
や
/test_dir/test2.php
include('/test_dir/test2.php');
などのルート直下にファイルやディレクトリを作った場合はなぜか上手くinclude出来ません。
どのように記述すればinclude出来ますでしょうか?
0560デフォルトの名無しさん
2016/07/02(土) 17:32:12.19ID:OG4R9rBFどうでもいいけど、
ドキュメントルートからって話は一体どこから出てきた?
0561デフォルトの名無しさん
2016/07/02(土) 17:37:34.03ID:Rb2LkFYjありがとうございます。
ドキュメントルートを出したのは念の為です。
ルートのパーミッションを弄るのは怖いので諦めて/homeに設置しようと思います。
0562デフォルトの名無しさん
2016/07/02(土) 17:47:41.05ID:mwZIaQih0563デフォルトの名無しさん
2016/07/02(土) 19:04:27.57ID:3tO+fsu00564デフォルトの名無しさん
2016/07/02(土) 20:11:16.72ID:Rb2LkFYjphp.ini
▼
include_path = ".:~/.anyenv/envs/phpenv/versions/7.0.8/composer"
/home/user1/public_html/test.php
▼
include('vendor/autoload.php');
↑
これだと動かないので。
0565デフォルトの名無しさん
2016/07/02(土) 21:13:27.87ID:qCWBlFIuやっぱりローカルに同じ環境持ってきてステップ実行しかねえかなあ
0566デフォルトの名無しさん
2016/07/03(日) 01:56:31.63ID:TTP9/HVOみたいな書き方が出来るようになったのってバージョンいくつからですか?
0567デフォルトの名無しさん
2016/07/03(日) 02:18:27.91ID:tHOEkEV6>PHP 5.4.0 には多くの新機能が含まれています。
>(中略)
>foo()[0] のように、関数の返り値を配列として扱えるようになりました。
0568デフォルトの名無しさん
2016/07/03(日) 03:29:34.72ID:TTP9/HVO5.4ですか
いつの間にか出来るようになってたのでびっくりしました
ありがとうございます
0569デフォルトの名無しさん
2016/07/04(月) 01:21:36.32ID:Kv6VoUZu一人で開発するのにフレームワークって必要?
あと一番シンプルなフレームワークってどれ?
0570デフォルトの名無しさん
2016/07/04(月) 01:26:06.13ID:HalI8QWTPHPのFWは軒並み糞
なんで糞なのかというとPHPの仕様に問題がある
どれも糞だから自分にあった好きなの選べ
>一人で開発するのにフレームワークって必要?
何をするのかとか規模による
FWを使ってラピッド開発にならないなら使う必要はない
>あと一番シンプルなフレームワークってどれ?
元祖CI
0571デフォルトの名無しさん
2016/07/04(月) 01:47:52.14ID:aBAEFZpXその後エラーチェックしてないコードをネットで見ますが
エラーチェックしないなら@を付けずに実行して、
読み込みを失敗した時点で止まった方が良くないですか?
エラーチェックしないのに@を付けるメリットは何でしょうか?
0572デフォルトの名無しさん
2016/07/04(月) 02:12:01.69ID:HalI8QWTまぁ十中八九エラー処理が面倒でそういう糞コード書いてるだけ
0573デフォルトの名無しさん
2016/07/04(月) 04:24:29.65ID:zEq9SldJ先日のcontroller原理主義者の時に、
「DBアクセスはシングルトンだろ」と言ってた奴いたよな。二人ほど。
俺も同感なんだか、その結論に至るには結構紆余曲折した。
DAOみたいなクソシステムや、ActiveRecord試してみたりしながら、結局、シングルトンDataMapperが最善だってなった。
でも、関わるどのプロジェクトでも、そんなの使ってる事は皆無で、本当に嫌で嫌でしょうがなかった。「世の中はアホしかいないんだ」と半ば諦めてた。
ところが、当たり前のようにシングルトンを選べる奴が、普通にいる訳だ。
お前らは一体何処にいるんだ?
本当に現実に存在してるのか?最近のマイミステリーだ。
0574デフォルトの名無しさん
2016/07/04(月) 05:23:03.82ID:jofDwZqc結局のところ突き詰めていけばどのように細分化・分担するかだけだ
どれが常に最善であるかは一意に決められるものではない 決めたがるお猿さんはいるけどな
効率の観点で使うものを決めれば良い
常に要件に最も合うものを使うか、
チームが扱うプロジェクトに合う確率が最も高いものを使うか、
チームのメンバー全体で見て最も使い慣れたメンバーが多いものを使うか
ま、>>573は自分の気に食わないやり方を採用するプロジェクトにしか関われない立場と
自分の発言力の無さを呪うしかないな
0575デフォルトの名無しさん
2016/07/04(月) 07:35:44.59ID:zEq9SldJおまえがcontroller原理主義者でないかどうかはわからんし、
過去に何言った奴かもわからんから、お前の言うことに説得力はない。
>どれが常に最善であるかは一意に決められるものではない
>効率の観点で使うものを決めれば良い
そう思うか? 俺はそうは思わないな。なんか、お前レベル低そうだ。
どんなものだろうと便利であれば1度作って使い回すだけだから、
効率の話なんか出てくる時点でおかしい。
>自分の気に食わないやり方を採用するプロジェクトにしか関われない立場と
>自分の発言力の無さを呪うしかないな
それは俺も呪ってる。これからは >>574 のことも呪うことにする。
0576デフォルトの名無しさん
2016/07/04(月) 07:42:54.30ID:vfQsqtYBなんだこの絡み方はw
0577デフォルトの名無しさん
2016/07/04(月) 08:11:45.05ID:Fhur3x2/最近おかしいやつが1人常駐してるんだよ
0578デフォルトの名無しさん
2016/07/04(月) 11:23:55.91ID:aBAEFZpX単なる普通のやり方だろ
合理的な普通のやり方にレッテル貼りをして安心せざるを得ない時は
自分の感覚の方がおかしいと分からんか?
singletonっていうのは分かりやすいから
初心者に毛が生えたくらいの奴が形式的に受け入れてドグマ化しやすいってだけ
何が「どこにいるんだ?」だよ気持ち悪い
0579デフォルトの名無しさん
2016/07/04(月) 13:15:25.25ID:HalI8QWTまあ小規模しか作らないやつにはリソースの使い方なんてのは考慮する必要ないか
0580デフォルトの名無しさん
2016/07/04(月) 13:44:51.69ID:vfQsqtYB他人を初心者に毛が生えた程度と評するやつの質問がこれか。
一応その質問に答えておくと、@ はエラーメッセージの出力を抑制するのであり、エラー時に止まらないようにするわけでもエラーチェックをしないことを宣言しているわけでもない。
0581デフォルトの名無しさん
2016/07/04(月) 15:12:00.24ID:9DDjFtrwcontrollerのインスタンスをいろんなオブジェクトに引き回すんだっけか。
0582デフォルトの名無しさん
2016/07/04(月) 15:35:36.28ID:aBAEFZpX鸚鵡返ししておけば馬鹿がばれないと思ってるようだが大間違いやぞ
0583デフォルトの名無しさん
2016/07/04(月) 15:39:21.49ID:aBAEFZpXじゃあ@を書いていても止まるんですか?
ログを見ると、503エラーでプログラムが止まっているようなので
@を付加して止まらないようにして
503ならしばらく置いてからリトライするようにしたのですが
これだとうまくいかないということでしょうか?
0584uy ◆e6.oHu1j.o
2016/07/04(月) 15:42:45.46ID:RKNLnwF6PHPスレで初心者レッテルはやめたほうが良いと思う
そんなのは、言語の時点で気づかなければならない
0585デフォルトの名無しさん
2016/07/04(月) 15:47:34.47ID:9DDjFtrw> 503ならしばらく置いてからリトライするようにした
この近辺のコードを提示すると話が進みやすいと思うよ
0586デフォルトの名無しさん
2016/07/04(月) 15:47:37.30ID:icaMCGk10587デフォルトの名無しさん
2016/07/04(月) 15:49:10.24ID:aBAEFZpX同じですよ
質問する時には敬語を使うようにしているだけです
0588デフォルトの名無しさん
2016/07/04(月) 16:01:21.99ID:icaMCGk1まぁ一応回答しておくと>>580の言う通りで, file_get_contentsは(通常)失敗時にE_WARNINGを吐くだけだから@を付けようが付けまいが停止しない
E_ERRORレベルのエラーを出す式に@を付けてエラー出力抑制してもプログラムは終了される
0589デフォルトの名無しさん
2016/07/04(月) 16:04:10.30ID:vfQsqtYB@ を書かなければ設定によっては Warning が出るだけで、@ の有無によらず関数は false を返して処理は続行するだろう?
止まるってんなら >>585 の言うようにコードを出してごらんよ。
ステータス拾ってるようだから URL 以外のパラメータも渡してるんだろ?
0590デフォルトの名無しさん
2016/07/04(月) 16:09:06.70ID:icaMCGk10591デフォルトの名無しさん
2016/07/04(月) 16:24:12.10ID:aBAEFZpX503エラーを返してくれるサイトを使って
$url = 'http://ozuma.さくら.ne.jp/httpstatus/503';
$s = @file_get_contents($url);
echo "hoge\n";
$s = file_get_contents($url);
echo "poge\n";
としてみたところ、止まらないことが確認出来ました
(さくらはsakura。NGに引っかかったため)
ログの状況から、そこで止まってるように見えたのですが、そうではないようです
0592デフォルトの名無しさん
2016/07/04(月) 17:42:46.61ID:QRGFh0J0本題と関係ないが、
<?php
header ('HTTP/1.0 503 Service Temporarily Unavailable');
とか書けばどんなエラーも自由自在
0593デフォルトの名無しさん
2016/07/04(月) 18:15:21.18ID:aBAEFZpXそうですね
それは知っていました
でも知らなかった人もいると思います
良かったですね?
0594デフォルトの名無しさん
2016/07/04(月) 18:18:21.22ID:aBAEFZpXメソッド名を間違えていた
→fatalエラー発生
→エラーハンドラ呼ばれない
→ログにも残らない
という流れでした
fatalエラーだとエラーハンドラが呼ばれないとは知りませんでした
しかし、だとしたら問題ですよね?
fatalなエラーなのにログに残らないなんて、駄目だと思います
0595デフォルトの名無しさん
2016/07/04(月) 19:28:30.53ID:aBAEFZpXregister_shutdown_functionで登録した終了関数の中で
error_get_last()でエラーを取得してエラーハンドラに投げる
という方法でロギング出来ました
こんな癖のある挙動をするとは知りませんでした・・
0596デフォルトの名無しさん
2016/07/04(月) 20:59:29.51ID:wLgTOUHR0597デフォルトの名無しさん
2016/07/04(月) 21:18:03.82ID:rivoK9gl0598デフォルトの名無しさん
2016/07/04(月) 22:53:33.53ID:ePWHxodhただ @$foo['bar']? なら isset($foo['bar'])&&$foo['bar']? の方が速いんだよね。
0599デフォルトの名無しさん
2016/07/04(月) 23:46:16.70ID:HalI8QWT0600デフォルトの名無しさん
2016/07/05(火) 00:04:51.54ID:sZrXDB54開発中どうすんの?
0601デフォルトの名無しさん
2016/07/05(火) 01:18:28.86ID:fcpyEoAk0602デフォルトの名無しさん
2016/07/05(火) 02:27:59.76ID:JruVBNMN見る必要のある(想定外の)noticeまで消えてしまうので良くないのでは
0603デフォルトの名無しさん
2016/07/05(火) 03:05:45.42ID:6Y/PZUJVE_NOTICEレベルの警告は開発段階で(@演算子を使わずに)潰しておくだろう
0604デフォルトの名無しさん
2016/07/05(火) 12:18:06.22ID:LDDVFgFX開発環境の時はエラー出力して
本番環境ならエラーの出力は抑制してログへ吐き出す
今がどちらの環境かか自動で判定して制御すればいいだけ
>>598
if (!empty$foo['bar'])
値が0の時は注意しないといけないが
2行目についてはそれで正解
ベンチ取れば分かるが@のエラー抑制はくっそ遅い
何よりそんなコード気持ち悪い
0605デフォルトの名無しさん
2016/07/05(火) 12:22:18.14ID:LDDVFgFX変数定義のエラーを@で抑制するようなうんこコードはあり得ないな
定義されてない変数をif()とかで評価する可能性がある時点でそのコードがうんこってこと
PHP自体うんこだろと言われたらその通りではあるが
0606デフォルトの名無しさん
2016/07/05(火) 12:25:34.51ID:Pdx4sn6D0607デフォルトの名無しさん
2016/07/05(火) 12:29:13.98ID:l48k36DU($foo)と評価するやり方が個人的に一番気持ち悪い
0608デフォルトの名無しさん
2016/07/05(火) 12:29:21.48ID:WI0+kd35俺のPHPは美しいぞ? お前のPHPとはなんか違うようだな。
0609デフォルトの名無しさん
2016/07/05(火) 12:34:43.11ID:LDDVFgFXもう終わった質問かもしれないが、
そもそもの話、HTTPリクエストを扱うのにfile_get_contents()なんか使うのを止める事をおすすめしとく
良いHTTPライブラリが色々あるから好みのを探して使うといい
file_get_contents()は手軽さ以上のメリットは何もない
PHPなんて手軽さしか取り柄がないだろとと言われたらその通りではあるが
0610デフォルトの名無しさん
2016/07/05(火) 12:41:09.45ID:LDDVFgFXその話は知らないし過去ログを見る気もしないが
クライアントにとって大事なのは「何で」作るかではなく「何を」作るかだ
そこら辺勘違いしてるアホなレッテル貼りが○○原理主義者なんて呼ばれるんだろうな
PHPレベルに要求される案件をあまり勘違いしないことだ
0611デフォルトの名無しさん
2016/07/05(火) 12:50:10.10ID:LDDVFgFX例えば個人の趣味レベルで作ったもので、本とかによく載ってる開発環境がwindows・本番環境がwindows以外って条件なら
if (DIRECTORY_SEPARATOR === '\\') {
error_reporting();
ini_set('log_errors', );
ini_set('error_log', );
ini_set('display_errors', );
ini_set('display_startup_errors', );
} else {
}
こんなコードでも充分
くどいようだがあくまでも個人の趣味レベルな
ID赤くなったから息抜きお終い
何年かぶりにスレ覗いたがPHPもまだまだ元気で安心したわ
0612デフォルトの名無しさん
2016/07/05(火) 13:10:57.27ID:WI0+kd35お前は明日にも死にそうだけどな。
0613デフォルトの名無しさん
2016/07/05(火) 13:18:07.68ID:JruVBNMNそんなに悪くないと思いますよ
手軽ですし、速いです
file_get_contentsのタイムアウト周りの挙動が良く分からなかったので
一時cURLを使おうともしたのですが
wgetコマンドを呼び出すより遅かったのでやめました
0614デフォルトの名無しさん
2016/07/05(火) 16:46:09.36ID:VU1gnqxPどうやって量産するかという基盤システムを作ったもん勝ち
それが大体10年くらい前の話題で、今居残りさせられてるのは貧乏くじ
土方と揶揄されても仕方ないだろう
0615デフォルトの名無しさん
2016/07/05(火) 17:58:57.47ID:EUUfHMIQ> 例えば個人の趣味レベルで作ったもので、本とかによく載ってる開発環境がwindows・本番環境がwindows以外って条件なら
どんなゴミ本だよ
0616デフォルトの名無しさん
2016/07/05(火) 18:02:30.00ID:jouMPhmz0617デフォルトの名無しさん
2016/07/05(火) 18:54:57.76ID:WI0+kd35流石にお前が馬鹿過ぎて>>611が可哀想。
0618デフォルトの名無しさん
2016/07/05(火) 19:35:22.08ID:LDDVFgFXPHPのコードはもうかなり長い間ゴリゴリは書いてないし、新機能以外の知識はほぼ止まってるから、間違った事を書いてたら申し訳ない…と断った上で
file_get_contents()の欠点は、書いてる通りタイムアウトを始めとしたエラー処理が貧弱な事
逆にいうとそこは理解した上で使ってるっぽいから、俺がとやかく言う事じゃなかった
申し訳ない
あとこれは好みの問題になるのかもしれないが、HTTP(S)以外の処理を書く時に、なんか直感的ではないというか汎用性がないというか…
例えばDBMSでMySQLとSQLiteの選択肢があっても、ほぼ同じコードでどちらにも対応できると思うんだけど、
file_get_contents()はそうじゃないんだよね
これが例えばcURLを使ったライブラリならほぼ同じコードで対応できる
※cURLは環境依存性が高いから絶対にこれが良いというつもりはないが、ライブラリの中にはcURLその他を選択できるものもある
結局のところPHPレベルに求められている事は、いかに労力をかけずにやりたい事を実現するか?なので、
汎用性のあるコードを自分の財産にしていった者勝ちなんだよね(>>614も似たような事書いてるけど)
流石に30才過ぎてPHPのコードなんてゴリゴリ書きたくないでしょw
0619デフォルトの名無しさん
2016/07/05(火) 20:31:01.36ID:JruVBNMNhttpを取得する部分が置き換わることはまずないので、
汎用的である必要もない気が・・。
curlを覚えておけば知識の流用はできますが
それよりhttp自体の知識の方が大切ですよね
0620デフォルトの名無しさん
2016/07/05(火) 20:45:30.41ID:xlC0Dx0Efile_get_contentsも対応はしてるが読む気が失せるソースが多い
大昔から車輪の再発明なんて言われるが賢い人の作ったコードライブラリを賢く使うことは大事だぞ
あまり人の言うことを素直に聞くタイプではなさそうだが
0621デフォルトの名無しさん
2016/07/05(火) 20:55:48.22ID:LDDVFgFX…というのはさておき、メリットデメリットを理解した上で納得して使ってるなら別に良いと思う
正解は1つじゃないんだし
もう何年前になるのか分からないけど、初めてPHP5でfile_get_contents()を使った時なんて、
そのシンプルさに感動したものだ
0622デフォルトの名無しさん
2016/07/05(火) 21:22:59.42ID:xlC0Dx0Ettp://qiita.com/re-24/items/542f39220a606e319fa1
$o = new Class();
$res = $o->timeout(100)
->header('User-Agent', 'are')
->param('get', 'hoge')
->param('get', 'fuge')
->param('post', 'hage')
->fetch('http://');
if ($o->error()) {}
if ($o->status() === '500') {}
http系のクラス使ったらスマートに書けるのにな
ちなみに>>583はfile_get_contentsの第3引数にignore_errorsを与えて制御しないと意味ないし@付ける付けないは別問題だぞ
file_get_contentsでhttp煽る時のFAQだし普段file_get_contents使わん俺でもこれぐらいは知ってるがwww
0623デフォルトの名無しさん
2016/07/05(火) 21:53:28.86ID:JruVBNMNいやcurlでも一度書いてるんですよ
最初は「こんないいものがあったのか!」と思ったのですが、
触ってみたらあんまりな感じでした
あくまで印象ですが
0624デフォルトの名無しさん
2016/07/05(火) 22:08:10.63ID:JruVBNMNfile_get_contentsのタイムアウト処理がいけてない
→curlで書き直す
→タイムアウト処理同じくいけてない
っていう感じだったと思います
同じくいけてないならもう楽な方でいいや、という。
いまだにfile_get_contentsのタイムアウト処理は何が正解か分かってません
0625デフォルトの名無しさん
2016/07/05(火) 22:11:20.33ID:JruVBNMNそのクラスっていうのはpearですか?
なるべく依存関係少なくしたいので
pearは使いたくないです
標準であればいいのですが・・
0626デフォルトの名無しさん
2016/07/05(火) 22:40:10.03ID:/TbYDVp4突然でてくる$http_response_header辺が悪い意味でphpらしい気色悪さだがそのサイトにも同じこと書いてるよく読め
>>625
pearはオワコン
pear以外に色々あるし下位互換まで考えられてるものもあるから探してみ
624のコードはphpを知らん人間が見てもhttpの知識あれば何をしてるか分かる
622を見て気色悪いと思わないのはphpしかやったことないやつだろうな
0627デフォルトの名無しさん
2016/07/05(火) 22:43:34.89ID:/TbYDVp4622が書いてるサンプルコードはhttpの知識さえあれば何をやってるか分かる
622の紹介ページ内に書いてるコードは気色悪いと思うのが普通の感覚だしページ作った本人もそう書いてる
0628デフォルトの名無しさん
2016/07/05(火) 22:51:03.80ID:6Y/PZUJV0629デフォルトの名無しさん
2016/07/05(火) 23:05:59.31ID:xlC0Dx0Eそこでpearって言葉が出てくるのがすごいwww
他人を初心者に毛が生えたなーんて偉そうなこと書いてる暇あったら少しは自分で調べようや
エラー制御の知識もそうだけどお前は毛さえ生えてない
>>626
最後の方に書かれてもそんなところまで読んでないわ。。。
やはり気持ち悪いと思うのが普通か
0630デフォルトの名無しさん
2016/07/05(火) 23:06:18.34ID:xlC0Dx0Eたしかにww
大昔のperlのコードは読むと目眩がする
0631デフォルトの名無しさん
2016/07/05(火) 23:27:27.90ID:/TbYDVp4コーディング規約がしっかりしてるしコードも綺麗だから昔はよく教科書代わりにしてた
0632デフォルトの名無しさん
2016/07/05(火) 23:28:22.04ID:sZrXDB540633デフォルトの名無しさん
2016/07/05(火) 23:31:10.94ID:XVKha2VO0634デフォルトの名無しさん
2016/07/05(火) 23:56:44.67ID:JruVBNMN嘘ついてもしょうがないので本当のことを言いますが、初心者ではないですよ
実装的な知識の多寡と技術者としてのレベルはあんまり関係ないんです
それが分からないあなたは初心者ですよね?
0635デフォルトの名無しさん
2016/07/06(水) 03:20:35.55ID:esje8Xjh0636デフォルトの名無しさん
2016/07/06(水) 04:15:00.72ID:Wc0lMlpkというか煽りにもなっていません
S級プログラマー=物知り博士、ではないのです
まあ時分かS級だとは言いませんが
0637デフォルトの名無しさん
2016/07/06(水) 04:24:14.35ID:pKrapbJDここしばらくmemcachedの代わりにリバースプロキシを使ってたから特に問題は無いんですけど、あったものが無くなるのはちょっと不安です。
正式対応っていつ頃になりそうですか?
0638デフォルトの名無しさん
2016/07/06(水) 04:31:21.70ID:Wc0lMlpkB級とA級以上の差は、自分の中に基準があるかだと思います
B級以下の人は、他人がしている方法、一般的におこなわれている方法と比較して善し悪しを判断する
A級以上の人は、自分の中の理想と実装を比較する
だからたとえば自分でフレームワークを作ることが出来るのはA級以上なんですね
0639デフォルトの名無しさん
2016/07/06(水) 04:38:36.83ID:DwoEIapKチョロイ基準だ事。
0640デフォルトの名無しさん
2016/07/06(水) 04:40:43.35ID:Wc0lMlpkフレームワークを作ることが出来る、というのは決して低いハードルではありませんよ
むしろ作ったことがないからそんなことを言えるのでは?
0641デフォルトの名無しさん
2016/07/06(水) 04:46:17.08ID:35uL/pelたとえばMVCなフレームワークを作る、だけなら、そう難しくはない
そこそこあるいはそれ以上の機能を備え軽量高速に動くフレームワークならば問題だ
超キツい
0642デフォルトの名無しさん
2016/07/06(水) 05:07:29.73ID:cOqQxcae0643デフォルトの名無しさん
2016/07/06(水) 07:45:56.72ID:zP4o+jv5それがどんな概念、どんな思想のものなのかについては深く理解している必要はあると思うよ。
だから何が問題でそれをどう緩和できるかを考えることができ、設計に反映させることができるんだ。
かつて C++ が普及し始めた頃、構造体にメソッド足しただけでオブジェクト指向をマスターした気になっちゃった人いたでしょ?
そういう輩が Logger の中の実装まで controller が気にして Logger もまた controller の実装のことを気にしないといけない、
その途中のコンポーネントもその都合を知ってないといけない共(強)依存の設計をしてみたりその問題点が分からなかったりするわけだ。
0644デフォルトの名無しさん
2016/07/06(水) 08:24:41.84ID:DwoEIapK>むしろ作ったことがないからそんなことを言えるのでは?
そういう頭の悪そうな煽りは猿相手にしてろ。
俺とお前とではレベルがジェントルマンと未開の部族くらい違う。
0645デフォルトの名無しさん
2016/07/06(水) 08:44:13.05ID:DwoEIapKオナニー覚えたての猿みたいだが、おまえ、アイちゃんだろ?
0646デフォルトの名無しさん
2016/07/06(水) 10:09:23.36ID:FwbN/TS9面白そうだからじっくりと拝聴してみましょう。
0647デフォルトの名無しさん
2016/07/06(水) 10:17:40.83ID:Y2LFgmcr実務経験のない毛すら生えてない包茎童貞チンコ君だと思ってみんな相手にしてるんじゃないの
能力は素人以下なのに自分を過大評価しライドだけは無駄に高い
口癖は「でも」と「だって」
あーいるいるそんな奴って感じで
0648デフォルトの名無しさん
2016/07/06(水) 10:36:14.17ID:H6ViycfC| 彡⌒ミ
\ (´・ω・`)また髪の話してる
(| |)::::
(γ /:::::::
し \:::
\
0649デフォルトの名無しさん
2016/07/07(木) 01:29:51.22ID:WAz1Z40Q0650デフォルトの名無しさん
2016/07/07(木) 04:09:49.30ID:S2omwxRh過去ログは、
hoge.log.1
みたいな命名で
過去ログの数が最大世代数を超えたら削除する形になると思いますが
過去ログが生成されるごとにファイル名の接尾辞をインクリメントしていくとすると
数字がどんどん増えていってしまいますね
かといって新しい過去ログほど若い数字にすると
過去ログが生成されるたびにそれまでの過去ログをリネームすることになり、
煩瑣な気がします
どうやるのが一般的なのでしょうか?
0651デフォルトの名無しさん
2016/07/07(木) 04:22:26.29ID:0sDfEMvh0652デフォルトの名無しさん
2016/07/07(木) 04:34:58.59ID:kKKhCcp50653デフォルトの名無しさん
2016/07/07(木) 04:56:25.49ID:S2omwxRhphpレベルで設定できた方が楽だなって思って。
logrotateは過去ログが作られるたびに、
それまでの過去ログもリネームしてるようですね
日付を接尾辞にしてもいいかもですが、
とりあえず一番一般的なやり方に合わせたようと思います
ありがとうございました
0654デフォルトの名無しさん
2016/07/07(木) 04:59:58.43ID:DBh6Xw4A特に純然たるアクセスログではなく操作ログや書き込みログなどは
0655デフォルトの名無しさん
2016/07/07(木) 06:40:42.01ID:Ry0ooGfS雑多なアプリのログが、ごちゃ混ぜ
0656デフォルトの名無しさん
2016/07/07(木) 07:44:25.53ID:HZJ5Un0hログは複数プロセスから同時期に書き込まれる可能性があるから、しっかり排他制御しないとおかしなことになるよ。
自前でローテートさせるならよりしっかり意識しないといけない。
そしてそういう慎重なファイル操作を判定含めてどのタイミングでやるのかもよく吟味しないといけない。
書き込みメソッドが呼ばれる毎にやるのか、それを適当に間引くのか、クラス初期化時にやるのか、プロセス終了時にやるのか、結構面倒だと思うよ。
0657デフォルトの名無しさん
2016/07/07(木) 10:46:25.50ID://snXdIvhoge.log.20160707
みたいな日付にする
0658デフォルトの名無しさん
2016/07/07(木) 11:13:45.87ID:OO8yzwIL永久保存とかだったら連番リネームはやめたほうが、、、
0659デフォルトの名無しさん
2016/07/07(木) 20:50:20.87ID:7v8C/C8s0660デフォルトの名無しさん
2016/07/08(金) 00:56:25.53ID:XrzttvRzこの関数は論理値 FALSE を返す可能性がありますが、
FALSE として評価される値を返す可能性もあります。
詳細については 論理値の セクションを参照してください。
この関数の返り値を調べるには ===演算子 を 使用してください。
という説明がありますが
FALSEとして評価される値、おそらくヌルストリングなどが返ってくる場合があると言っているのに
なぜ===で厳密に評価しろと書いてあるのでしょうか?
0661デフォルトの名無しさん
2016/07/08(金) 01:32:11.32ID:+hXmUnvSファイル内容が「0」だけの場合
ファイル内容が空文字列の場合
0662デフォルトの名無しさん
2016/07/08(金) 01:36:25.30ID:cQ0ivQ9T=== だけを使うことが推奨されている
PHPでも同じかね?
0663デフォルトの名無しさん
2016/07/08(金) 01:36:44.52ID:XrzttvRzそれ以外の意味で使う人なんているんですか?
0664デフォルトの名無しさん
2016/07/08(金) 01:42:13.99ID:+hXmUnvS>>662
基本同じ
switchはゆるやかな判定オンリー、< や > もそうだったはず
0665デフォルトの名無しさん
2016/07/08(金) 02:16:24.14ID:XrzttvRz「列」のイメージがはっきりあると思います
日本語の「空文字」の方が、
ヌルキャラクターなのかヌルストリングなのか分かりにくいのでは
0666デフォルトの名無しさん
2016/07/08(金) 03:02:52.65ID:7ivzfMbrヌルストリングが返ってきたときは処理に成功しているからというだけの話だよ。
0667デフォルトの名無しさん
2016/07/08(金) 03:18:31.04ID:18g7tdmy0668デフォルトの名無しさん
2016/07/08(金) 04:23:29.37ID:XrzttvRzあ、なるほどー。
納得です
ありがとうございました
0669デフォルトの名無しさん
2016/07/09(土) 00:29:52.78ID:aYxk+QMlgetopt関数でパースしようとしたのですが
test.php -a hoge fuga
のように呼び出して
getopt('a:')
とやっても、
array(1) {
["a"]=>
string(4) "hoge"
}
になってしまいます
getopt関数ではオプションに対して複数の引数を渡すことは出来ないのでしょうか?
0670デフォルトの名無しさん
2016/07/09(土) 02:36:27.31ID:aYxk+QMl指定していないオプションが来たら
そこで処理が止まるというのもいけてないし
一体誰が使うんだ?というような関数ですよね
0671片山博文MZ ◆T6xkBnTXz7B0
2016/07/09(土) 02:41:01.31ID:Mz5tnssEgetoptはC言語の影響が強い。Cの真似してコマンドを作りたいときに使う。
0672デフォルトの名無しさん
2016/07/09(土) 03:05:48.53ID:OhO+Rrd10673片山博文MZ ◆T6xkBnTXz7B0
2016/07/09(土) 03:13:09.91ID:Mz5tnssE0674デフォルトの名無しさん
2016/07/09(土) 03:18:03.27ID:BJFFzJZU変なサイトばっかだな
0675デフォルトの名無しさん
2016/07/09(土) 03:33:46.86ID:aYxk+QMlそうなんですか
たしかに昔風の感じがします
ありがとうございました
0676デフォルトの名無しさん
2016/07/09(土) 10:40:26.69ID:8bEaOg6Oそれに準拠してるだけなのでは。
プログラム名.php [-o 任意引数] 必須引数
とかそんな感じのやつ 。
[ ]の部分は任意(オプション)ってやつね。
まあgetoptが使いにくそうという意見には、100%同意するが。
0677デフォルトの名無しさん
2016/07/09(土) 10:54:53.54ID:aYxk+QMlそれならgetoptの仕様も理解できますが、
その決まりの意味は分かりませんね
先頭の-の有無でオプション指定とオプションの引数は判別できるので、
オプションの引数が複数あっても問題ないと思います
0678デフォルトの名無しさん
2016/07/09(土) 11:05:17.35ID:3Fin4poN文句を言わず自分で$argvをループにかけて処理すりゃいい
0679デフォルトの名無しさん
2016/07/09(土) 12:48:13.50ID:rEaVjU7Yそこで前の画面に戻るリンクを追加したい思い、調べてみたところ$_SERVER['HTTP_REFERER']に
前の画面の情報が残っているとわかりましたが結局できませんでした
画像を表示するプログラムをimage.phpとしてHTML内にどのように記述すれば実現できますか?
0680デフォルトの名無しさん
2016/07/09(土) 15:00:57.65ID:8bEaOg6O複数指定したいなら -o 引数1 -o 引数2 -o 引数3 じゃね
0681デフォルトの名無しさん
2016/07/09(土) 19:03:06.59ID:aYxk+QMlは?ないなら自分で書きますよ
たいして難しくもない処理ですし。
ただ標準の関数があるなら、そっちを使うべきだと思いますし
それがいけてるのかいけてないのかは重要な判断になります
当たり前ですよね?
>>680
そういう慣習なのでしょうか
あまり意識したことがなかったので・・
0682デフォルトの名無しさん
2016/07/09(土) 19:49:29.84ID:r9KiSHahawk -f script1.awk -f script2.awk
と言う形でオプションとその引数を渡してる。
オプションに複数引数を渡しても良いことにしてしまうと
awk -f script1.awk script2.awk
のとき、オプションの引数なのか、awkが処理するファイルの指定なのかが分からなくなる。
0683デフォルトの名無しさん
2016/07/09(土) 20:50:10.93ID:aYxk+QMl最初から、コマンド自体の引数は先に書き、
オプションはその後ろに書く、という決まりにしておけば
そういう混乱も起きなかったと思いますが
歴史的なあれですかね〜。
ありがとうございました
0684デフォルトの名無しさん
2016/07/09(土) 20:56:52.60ID:7GvtVXYv0685デフォルトの名無しさん
2016/07/09(土) 21:09:09.65ID:+JaDepXt0686デフォルトの名無しさん
2016/07/09(土) 21:24:35.02ID:r9KiSHah恥ずかしいから消しておけよ
0687デフォルトの名無しさん
2016/07/09(土) 21:42:36.97ID:nw/Tgfsc0688デフォルトの名無しさん
2016/07/09(土) 22:11:50.56ID:+JaDepXt同僚が仕事時間中にやってたら「お前はサルか?」と聞くが、
知らん他人が何をしようと、それはそいつの自由だ。
0689デフォルトの名無しさん
2016/07/09(土) 23:07:48.86ID:7GvtVXYvそれを消そうと普通にコマンドラインにファイル名を指定するとオプションとして解釈されちゃうし、
先頭のハイフンをエスケープしたりクォートしてもやっぱりオプションになっちゃうし、
ヤケクソでワイルドカードで展開させてもやっぱりオプションになっちゃうんだよな。
うっかりオプションとして解釈されると致命的なファイル名だったりすると悲惨なことになりかねないから、そういうファイルがあったらワナだと思ってよーく考えた方がいい。
FreeBSD のシェルはそこら辺の安全対策がされてたが、linux は割とヌケてる。
0690デフォルトの名無しさん
2016/07/09(土) 23:57:33.99ID:r9KiSHahrm ./-foo
でいいだろうに
0691デフォルトの名無しさん
2016/07/10(日) 00:05:28.80ID:zIlqAmmZ0692デフォルトの名無しさん
2016/07/10(日) 00:06:10.67ID:zIlqAmmZphpを呼び出してワンライナー実行するコードが大量にあるんだけど
動かすレンタルサーバがphpのCGI版しかない
CLI版がないので、php -rで一行コードが動かない
こういう時のうまい回避策ってなんかない?
(php -rにエイリアス仕掛けて引数を一時ファイルにして……とか考えたけど途中で頭こんがらがった)
0693デフォルトの名無しさん
2016/07/10(日) 00:32:18.88ID:qFUmu4Xh注意してちゃんとそういうことしろよって話だよ。
ただそれよりも -- を覚えておく方がいいと思うが。
0694デフォルトの名無しさん
2016/07/10(日) 00:39:57.35ID:qFUmu4Xhそのやり方のうま味というのが今一つ思いつかないので参考までに教えてほしいんだけど、当たり障りのないコードを何個か貼ってみてくれないか。
まあ、エイリアス仕掛けるのもいいけど php ってシェルスクリプトを作ってしまうってのはどうかな。
与えられた PHPコードを Web領域にファイル化して、HTTP でリクエストかけるような感じ?
パーミッションの関係でうまくいかないような気もするけど。
PHPコードが限定的なら、それを shスクリプトなり perlスクリプトなりに変換してしまうようにするとか。
0695デフォルトの名無しさん
2016/07/10(日) 01:57:52.58ID:JTH0ZdYC1-linerを次々と、無名関数のような、閉鎖されたスコープに入れて実行する
スコープ(1-liner)
(1-liner)
(1-liner)
>>689
ハイフンで始まるファイルって、
シェルスクリプトなどのツールで処理すると、エラーになりそう
0696デフォルトの名無しさん
2016/07/10(日) 02:50:26.82ID:qFUmu4Xh>>694 で言ったスクリプト書いてみた。
こいつを php という名前にしておいてパスを通しておけばとりあえずやれた。
いくらかセキュリティ上の問題があるし権限なんかに制約があるし、標準入力に何かをパイプしてるようなのだと対応できないんで実際に使うには調整が必要だけど。
#!/bin/sh
if [ "$1" != "-r" ]; then
exit 1
fi
fn=/tmp/$$.php
url=http://localhost$fn
fn=/var/www/default/htdocs$fn
echo "<?php chdir('`pwd`'); $2" >$fn
wget -q -O - "$url"
rm -f $fn
>>695
エラーになるから注意が必要。
というか今まで書いてきたシェルスクリプトを全部見直したくなるレベルだと思う。
0697デフォルトの名無しさん
2016/07/10(日) 02:57:46.36ID:Nb5FSVTz0698デフォルトの名無しさん
2016/07/11(月) 10:04:40.23ID:RzXkr5ts0699デフォルトの名無しさん
2016/07/11(月) 13:23:37.03ID:7hd/2RYR0700デフォルトの名無しさん
2016/07/11(月) 15:38:18.62ID:MB3tc90Dhttp://www.phppro.jp/
0701デフォルトの名無しさん
2016/07/11(月) 15:47:33.27ID:2x/6j4qSオブジェクトを登録するRegistryクラスを作って、
Registry::get('logger')
みたいな形で取り出すのもアリですよね?
0702デフォルトの名無しさん
2016/07/11(月) 16:40:43.78ID:r9PY8t2Osingleton を実現したいという目的をかなえる手段としてはアリだと思うけど、
singleton の実現は本当にやりたいことの目的ではないから、そこを見誤ると何やってんだかわからなくなるよ。
(ある特定の)logger が singleton であるべきか、実際にそうなのかを知っているのはそれを設計した人だけでいいことで、
Registory を使うべきかを logger を利用する立場の設計者やプログラマが気にする必要があったり、
Registory が与えられたオブジェクトを singleton として扱う必要があるかを知っている必要があったりするのであれば、
そもそもそれを使う目的は何か?ということになる。
0703デフォルトの名無しさん
2016/07/11(月) 16:51:59.94ID:NV/GGl1aいい事言うね
ここら辺が分かってない頭でっかちな奴の多いこと多いこと
趣味でやる分には好きにすりゃいいけどさ
仕事やらせると「ただ頭が固いだけの使えない奴」という評価になる
0704デフォルトの名無しさん
2016/07/11(月) 17:27:35.21ID:RMeyE2Ie0705デフォルトの名無しさん
2016/07/11(月) 17:33:28.80ID:xzQbdIaK基本設計書を作れ。
以上。
0706デフォルトの名無しさん
2016/07/11(月) 18:23:50.84ID:r9PY8t2O// シングルトン版
class Logger {
public static function getInstance()
{
static $obj;
if(!$obj) $obj = new Logger();
return $obj;
}
private __construct()
{
}
}
// シングルトンじゃない版
class Logger {
public static function getInstance()
{
return new Logger();
}
private __construct()
{
}
}
// インスタンス取得
$logger = Logger::getinstance();
実際にはインタフェースに抽象化して、実装クラスと取得クラスを分ける方がいろいろいい。
0707デフォルトの名無しさん
2016/07/11(月) 18:27:14.11ID:r9PY8t2O適当に直して
0708デフォルトの名無しさん
2016/07/11(月) 20:07:13.87ID:RMeyE2Ie全てのクラスはそのように作るべきということでしょうか
0709デフォルトの名無しさん
2016/07/11(月) 20:34:35.38ID:r9PY8t2Oこのスタイルに徹底して合わせていく設計もあるけど、必ずしもそうする必要は無い。
何かを成すために一番いい方法を選べばいい。
でも、Logger みたいな共通部品で、誰でも使う可能性があるし、かと言って必ず使うわけでもないようなものはこうしとくと便利だと思うよ。
あるクラスで突然 Logger を使いたくなっても、呼び出し元の協力が無くてもその場ですぐ使えるでしょ。
他には DBコネクションみたいなものとか、コンフィギュレーションとか?
必要なところで
$logger = Logger::getInstance();
$dbcon = DbConnection::getInstance();
$conf = Configure::getInstance();
とやれると便利でしょ。
これらインスタンスを一番最初の誰かがインスタンス化して引き回していくという手もあるけど、
もし途中にその枠組みに沿わない Utilクラスが挟まったらその引き回しの連鎖が終わって破たんしてしまうし、
本当にそれらインスタンスが必要な処理かどうかも分からない最初の段階で投機的にインスタンス化するのも無駄でしょ。
そういった点を考えて何をどう扱うかを決めるといい。
0710デフォルトの名無しさん
2016/07/11(月) 20:41:01.38ID:r9PY8t2Oそのことは Logger を使う側は知らなくてもいいし、Logger が欲しがっているものを外からお膳立てしてやる必要もなく、ただ Logger::getInstance() してやるだけでいい。
もしかしたら Logger がファイルじゃなく DBにログを吐くようなものだったら DBコネクションを必要とするだろうけど、やっぱり呼び出し側はそんなこと気にする必要が無い。
Logger が自分で勝手に DbConnection::getInstance() すれば済む。
0711デフォルトの名無しさん
2016/07/12(火) 04:29:06.49ID:FX1OdrUTloggerがlogaggregatorになる可能性をどう考えてるんだよ
loggerが単なるloggerなら、はっきり言って何でもいいんだよ
0712デフォルトの名無しさん
2016/07/12(火) 04:31:21.88ID:dFS5ZeTB0713デフォルトの名無しさん
2016/07/12(火) 04:34:39.55ID:FX1OdrUTregistryに持たせるなりファクトリで抽象化する方がセンスあるわ
singletonクラスから直接取得させるのは余程単純な場合で
それくらい単純ならsingletonとかいちいち考える必要すらない
0714デフォルトの名無しさん
2016/07/12(火) 04:37:39.67ID:FX1OdrUTphpの場合は規約程度の意味しかない
0715デフォルトの名無しさん
2016/07/12(火) 04:41:28.36ID:lqGwlo47あんな地雷製造機を作っちゃう人と同じ現場の人がかわいそうでならない。
0716デフォルトの名無しさん
2016/07/12(火) 05:12:02.65ID:uO+n2C32必要な時に静的アクセスしてログ出すだけ。
loggerシングルトンの話はcontroller原理主義者に対する説明で出てきただけで、
loggerはシングルトンである“べき”論ではなかったでしょ。
0717デフォルトの名無しさん
2016/07/12(火) 06:19:50.25ID:/N0MuYweつ 実際にはインタフェースに抽象化して、実装クラスと取得クラスを分ける方がいろいろいい。
意味がわからなかったかな?
0718デフォルトの名無しさん
2016/07/12(火) 06:27:32.36ID:/N0MuYweそうだよ。
singleton であるべきかどうかを使う側が気にする話じゃないと言ってるでしょ?
だから実体がどっちであっても同じ使い方で使えるようにするにはどうしたらいいか、ということなんだけど、そこらへんどう考えてるの?
> loggerなんか、staticメソッド持ったただのクラスでいいじゃん。
Logger が singleton である必要がある場合にはそれでおkだけど、
Logger が singleton じゃいけない状況になったらどうする?
0719デフォルトの名無しさん
2016/07/12(火) 07:47:30.87ID:uO+n2C32いけない場合はそうすれば良いんだけど、
なにをききたいの? 焦点はどこよ?
>>717
0720デフォルトの名無しさん
2016/07/12(火) 07:50:11.28ID:uO+n2C320721デフォルトの名無しさん
2016/07/12(火) 07:58:34.63ID:pNpIqf8Q0722デフォルトの名無しさん
2016/07/12(火) 08:47:36.87ID:/N0MuYweああ、singleton 以前に Logger などインスタンス化せず機能は全部 static でいいじゃんと言ってるのか。
何にでも一長一短あるものだからそのやり方がハマる場所ならそうすればいいと思うけど、
Logger みたいな特定の何かを挙げてインスタンス化の是非にまで立ち返った話をするつもりはさすがに無い。
0723デフォルトの名無しさん
2016/07/12(火) 08:53:41.40ID:z9qOKD3xどれでも対応可能なようにと考えるとラッパを作るしかなくなる
そしてもう全部ラッパ作っておけばいいよという結論に達する
0724デフォルトの名無しさん
2016/07/12(火) 11:46:23.88ID:rsJrinwC方式なんて一言で言えば何かを楽にする手段なんだから、そのやり方を採るかは何が楽になりどんな恩恵を受けられるか次第だよね
0725デフォルトの名無しさん
2016/07/12(火) 15:26:04.74ID:uO+n2C32お前の言ってるのは、手段が目的化している状態に見えるな。
0726デフォルトの名無しさん
2016/07/12(火) 15:41:29.17ID:uO+n2C32You are right. You just are wise.
0727デフォルトの名無しさん
2016/07/12(火) 16:08:49.53ID:4hlad0hVfunction hoge(){
return 100;
}
のように直接メソッド単体で出力させず
一旦メンバ変数にいれて
function hoge(){
$this->num = 100;
}
function hoge_get(){
return $this->num
}
getとか、getterとか呼び出し専用のメソッドをつくるのをみかけますが
これはどういった意図、メリットがあるのでしょうか?
0728デフォルトの名無しさん
2016/07/12(火) 16:24:17.28ID:z9qOKD3xあとどんな方法が受け入れられるかと、どこまで考えるかだ
namespaceもうまく使ってどんな処理もラッパー関数なりラッパークラスなりを通すようにしておけば
最悪でも、統一された一貫したコードで書け、呼び出し方の制約にとらわれず、実体のコードを変えずに仕様変更が可能になる
極論だが真理でもある
0729デフォルトの名無しさん
2016/07/12(火) 16:24:45.50ID:y3QuZQ+o0730デフォルトの名無しさん
2016/07/12(火) 16:37:58.91ID:uO+n2C32setter が private や protected なら他の奴ら(クラス)がいじれない事を保証するため。
setter が public なら、もう、そいつはただのアホなロボ。
0731デフォルトの名無しさん
2016/07/12(火) 16:38:56.82ID:uO+n2C32一応、ラップしておくと後で機能をすげ替えるのに楽だ、という意味はある。
けど、薄い。
0732デフォルトの名無しさん
2016/07/12(火) 17:01:25.05ID:YnZz98X3…とここ最近のやり取りを見てて思う
手段が目的化してるアホが多すぎ
0733デフォルトの名無しさん
2016/07/12(火) 17:04:36.35ID:dFS5ZeTB何をいまさら必死にJava臭い話してんのかと
0734デフォルトの名無しさん
2016/07/12(火) 17:05:05.35ID:uO+n2C32今時フラットなPHPなんか弄りたくもねぇよ。
0735デフォルトの名無しさん
2016/07/12(火) 17:09:04.43ID:uO+n2C32本当に頭おかしい。
0736デフォルトの名無しさん
2016/07/12(火) 17:11:19.68ID:uO+n2C32「自分です。何か?」って言いやがるから、
「いや、かなりパンチの効いたコードだと思って…」と、
やんわりと嫌味言っといたけど、多分、あいつは今でも意味がわかってねぇ。
0737デフォルトの名無しさん
2016/07/12(火) 17:15:38.46ID:YnZz98X310年前にタイムスリップしてきたのかと思うレベルだからなw
もうプログラミングそのもののセンスがないんだから、さっさと足洗う事をオススメしたくなる
0738デフォルトの名無しさん
2016/07/12(火) 19:07:36.89ID:M4Ysa7HDそれを学び始めたのが昨日今日の人もゴマンといるからな
0739デフォルトの名無しさん
2016/07/12(火) 20:13:47.33ID:mhtdbZQH0740デフォルトの名無しさん
2016/07/12(火) 21:03:40.61ID:rsJrinwC古いというより、もはや身に付けていて当たり前のことになってるだけ。
それが分からない(利点だけではなく欠点も含めて)というのは古いという言葉で誤魔化せるような考え方じゃない。
0741デフォルトの名無しさん
2016/07/12(火) 23:06:39.04ID:dFS5ZeTBなんて言ってるのペチパーだけだろうが
時代は関数型だっつうのに
0742デフォルトの名無しさん
2016/07/12(火) 23:27:14.21ID:/N0MuYwe今時わざわざオブジェクト指向とか言ってるのはそれに通ずるものがあるななんて思ったり。
そういや昔うちにあったテレビにも「カラー」と書いてあった。
もうそこはいちいちアピールするようなことじゃなくなってるけど、古くなって捨て去られてるわけではないんだな。
0743デフォルトの名無しさん
2016/07/13(水) 00:55:37.85ID:c7PelxrOそんなの学校、会社にいたらすぐわかるだろ?
いくらでも湧いてくる
0744デフォルトの名無しさん
2016/07/13(水) 03:11:43.84ID:SgUJAkJi俺にはそういうのは無理だ。
0745デフォルトの名無しさん
2016/07/13(水) 07:33:54.65ID:EopiVE3uちょっと見てられないわ
0746デフォルトの名無しさん
2016/07/13(水) 09:12:27.31ID:5fhCNN//プログラム言語側が
「オブジェクト指向対応!!!」
とか行ってたら お、おう・・・とかなるんかもしれんが
使う側がオブジェクト思考を習得するのに遅いも速いもないだろ。
英語という言語自体は何百年も前からあるけど
その英語をいつ習得するかはひとそれぞれ。
子供の時から話せるやつもいれば、大人になってから習得したやつもいる。
一生必要ない人もいる。
0747デフォルトの名無しさん
2016/07/13(水) 12:38:22.84ID:SwB39zskお前は機械語からやればいいよ
0748デフォルトの名無しさん
2016/07/13(水) 12:46:06.43ID:BO773i0Lお前マシン語扱うの禁止な
最終的にマシン語に変換されるコンパイラ言語もインタプリタもダメだぞ
0749デフォルトの名無しさん
2016/07/13(水) 13:54:41.92ID:WdtFCbLB0750デフォルトの名無しさん
2016/07/13(水) 19:27:24.57ID:5fhCNN//http://www3.nhk.or.jp/news/html/20160713/k10010594271000.html
平成が終わったらシステム的にどんな変更が必要になってくるのだろう
0751デフォルトの名無しさん
2016/07/13(水) 19:33:39.89ID:SgUJAkJi「やった、仕事が生まれる!」と、人売り人買いSIerが大喜びし始めてるだろうな。
0752デフォルトの名無しさん
2016/07/13(水) 20:13:28.81ID:Qe61Wci0ほんとにな……
もう紙ベースで帳票やら何やら年号使ってるもの全てが要修正になって
和暦を受け入れる何もかもでコード追加が必要になって、
和暦入力を受け入れるフォームの類もフォームの入力を受け取るコードも全て追加が生じて、でもそのくらい?
0753デフォルトの名無しさん
2016/07/13(水) 20:36:48.75ID:SgUJAkJi各地で炎上しまくるなぁ…
先月末でITから離れたけど、空に困ってもITには戻らないようにしよっと。
0754デフォルトの名無しさん
2016/07/13(水) 20:40:54.93ID:ml4j3UQD元号が平成になった時の改造で大抵の所は対処済みだと思うけど
違うのか?
0755デフォルトの名無しさん
2016/07/13(水) 20:47:13.10ID:5fhCNN//0756デフォルトの名無しさん
2016/07/13(水) 20:52:42.64ID:GswR66/tというのは建前で結構面倒だな。
>元号が平成になった時
それ28年も前じゃん。WEBアプリ存在してなくない?
0757デフォルトの名無しさん
2016/07/13(水) 20:53:23.66ID:SgUJAkJi酔っ払ってたから初見意味わかんなかった。
間違いなく現れるなw
0758デフォルトの名無しさん
2016/07/13(水) 20:59:30.65ID:ml4j3UQDWebに移行する前の、元のシステムでそういう改造があったと思うよ
0759デフォルトの名無しさん
2016/07/13(水) 21:15:42.03ID:Qe61Wci0絶対に新年号開始時から使えるように合わせなければ!と言い出す奴
開始時に使用できないと即座にクレームたれこみまくる奴
あとks営業市ね
0760デフォルトの名無しさん
2016/07/13(水) 21:58:28.18ID:RvUgJ2p4略称がHだったら…
0761デフォルトの名無しさん
2016/07/13(水) 23:34:53.37ID:cTGOW3vTなんてことになったらさすがに対応できないだろう?
0762デフォルトの名無しさん
2016/07/14(木) 00:32:07.72ID:H+rKct8n元号追加よりは手間がかかるけどね
0763デフォルトの名無しさん
2016/07/14(木) 00:37:50.01ID:AWjfs/Yy1970年以前の日付の表現には負の値が必要なのをド忘れして設計不備/バグを出してしまう
0764デフォルトの名無しさん
2016/07/14(木) 04:44:10.28ID:lILkfZqGシェルで
mv dir dir1
とした場合、dir1の下にdirが移動します
しかしphpで
rename('dir','dir1')
とすると、dir1にdirを上書きするようです
シェルみたいな動作をさせるにはどうすればいいですか?
0765デフォルトの名無しさん
2016/07/14(木) 04:59:29.30ID:s/3ZM10xおとなしくsystem関数でrmコマンド使えばよろしいのでは
抵抗があるならmkdirやcopyで自分で関数組むしかないね
0766デフォルトの名無しさん
2016/07/14(木) 04:59:56.94ID:s/3ZM10x0767デフォルトの名無しさん
2016/07/14(木) 06:25:00.26ID:lILkfZqGディレクトリも同じかと思いまして。
自分の中ではrename=移動という感覚でした
でも言われてみれば、これだと単にディレクトリ名を変更してるだけですね
とするとdirをdir1/dirにrenameすればいいのかも?
ありがとうございました
0768デフォルトの名無しさん
2016/07/14(木) 07:49:32.80ID:kQwkeBaJ「おい、お前はデータ吹っ飛ばすつもりか」って怒鳴るところだったぞ。
命拾いしたな。
0769デフォルトの名無しさん
2016/07/14(木) 08:06:56.59ID:AWjfs/Yy$dir_src= 'dir'; $dir_dst = 'dir1'; として
rename( $dir_src, $dir_dst.'/'.$dir_src ); とすればいいんじゃないのか
system系関数使うより健全
0770デフォルトの名無しさん
2016/07/14(木) 15:13:30.51ID:lILkfZqG文字列のエンコード変換しない限り設定しなくても問題ないですか?
0771デフォルトの名無しさん
2016/07/14(木) 16:20:37.46ID:lILkfZqGファイルかディレクトリかは決まっている場合の方が多いので
is_fileやis_dirを使った方がいいですね?
0772デフォルトの名無しさん
2016/07/14(木) 16:24:03.49ID:I0A8eCNU好きなようにしろよ
うざいわ
0773デフォルトの名無しさん
2016/07/14(木) 16:35:13.13ID:NIa9yA68ケースバイケースだしな
同名のファイル作りたい時にディレクトリがあったら作れないからファイルのチェックだけじゃ無理よね
0774デフォルトの名無しさん
2016/07/14(木) 16:36:13.11ID:H+rKct8n0775デフォルトの名無しさん
2016/07/14(木) 18:33:10.85ID:lILkfZqGスレタイ読めねーのかハゲ
>>773
そういう場合もありますね
>>774
ありがとうございます
0776デフォルトの名無しさん
2016/07/14(木) 18:56:34.48ID:I0A8eCNU> ◆質問する時の注意
> ・ 己の行った操作、変更などを詳しく明記すること。
> ・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
> ・ 質問者として、態度をわきまえること。
> ・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
0777デフォルトの名無しさん
2016/07/14(木) 19:04:50.08ID:lILkfZqG回答者じゃない奴に態度をわきまえる必要はない
分かるな?
0778デフォルトの名無しさん
2016/07/14(木) 19:07:43.63ID:lILkfZqGバイナリとテキストファイルの形式が異なるシステム(すなわち Windows)では、
fopen()の mode パラメータに 'b' を指定してファイルをオープンする必要があります。
とありますが、
windows環境の場合、リモートのバイナリファイルをダウンロードする場合にも
bパラメータが必要なのでしょうか?
0779デフォルトの名無しさん
2016/07/14(木) 19:19:40.85ID:s57sfz3A今後はトリップ付けてくれないか。
思い過ごしかもしれないが過去にお前に回答したことあるような気がして、今後はそういうことの無いよう気を付けたい。
0780デフォルトの名無しさん
2016/07/14(木) 19:40:17.19ID:lILkfZqG実に了見が狭いですね
そんな人間は質問スレにいりませんので
黙って出て行けばいいだけのことです
0781デフォルトの名無しさん
2016/07/14(木) 19:47:38.01ID:H+rKct8nfopenも見た?
0782デフォルトの名無しさん
2016/07/14(木) 20:05:22.62ID:kQwkeBaJ0783デフォルトの名無しさん
2016/07/14(木) 20:11:21.22ID:vDkk9MGv0784デフォルトの名無しさん
2016/07/14(木) 20:13:05.46ID:H+rKct8n【PHP】下らねぇ質問はここに書き込みやがれ 5 [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1462971286/
0785デフォルトの名無しさん
2016/07/14(木) 20:59:12.61ID:lILkfZqGfopenの項目を見ました
テキストモードで読むと改行の自動変換をするので壊れる、
ということなので、ローカルかリモートかは問題ではないですね
ありがとうございました
0786デフォルトの名無しさん
2016/07/14(木) 22:38:41.03ID:lILkfZqGfreadのlengthを大きくしても
一度に1360バイトしか読めないのですが、
この数字はどこで規定されているのでしょうか?
「バッファつきで読み込まれた、プレーンなファイルでないストリームの場合に、
一回の読み込みバイト数がチャンクサイズ (通常は 8192) に達した」時に
freadは終了するとドキュメントには書いてありますが、
何故かそれよりもずっと小さいです
0787デフォルトの名無しさん
2016/07/14(木) 23:19:31.98ID:kQwkeBaJ俺は>781の意見に対して感想を言っただけだからお前が俺に礼を述べるのは筋違いだ。
俺はお前には興味はないからお前がどうなろうと知ったこっちゃない。
0788デフォルトの名無しさん
2016/07/14(木) 23:32:35.75ID:lILkfZqGレス番間違えてたわ
そんくらい分からんか?
0789デフォルトの名無しさん
2016/07/14(木) 23:48:24.71ID:kQwkeBaJ0790デフォルトの名無しさん
2016/07/15(金) 00:14:25.77ID:fXhDZaUe合意形成はできてるの?
0791デフォルトの名無しさん
2016/07/15(金) 00:32:45.86ID:QvjmI5eD0792デフォルトの名無しさん
2016/07/15(金) 00:49:47.28ID:ySEzePPe0793デフォルトの名無しさん
2016/07/15(金) 01:01:39.09ID:dm6z3Cfzバッファが少ないだけあってブラウザでダウンロードした時よりも1.7倍くらい遅いです
これがPHPの限界なのでしょうか?
0794デフォルトの名無しさん
2016/07/15(金) 01:10:35.49ID:QvjmI5eD0795デフォルトの名無しさん
2016/07/15(金) 01:19:57.34ID:dm6z3Cfzhttp://stackoverflow.com/questions/14664409/fread-a-lot-slower-for-downloads-than-readfile
やはりfreadは遅いようですね
stream_get_contents()を使えばいいようです
0796デフォルトの名無しさん
2016/07/15(金) 03:26:53.39ID:dm6z3Cfzブラウザは適切にURLエンコードしてからサーバにアクセスしますが
これと同じ処理をPHPでやるにはどうすればいいですか?
0797デフォルトの名無しさん
2016/07/15(金) 03:50:03.80ID:1/YfIWp80798デフォルトの名無しさん
2016/07/15(金) 03:51:58.09ID:5LGzx4BYみんなが一斉に移る必要なんてなくて、好きな方に行けばいいだけじゃないの?
0799デフォルトの名無しさん
2016/07/15(金) 03:57:05.53ID:dm6z3Cfzありがとうございます
それはそうなのですが、URL全体にurlencodeをかけると
不必要なところまでURLエンコードしてしまいますね
URLエンコードする必要のある部分だけを抜き出して
urlencodeをかける、というのがややこしいです
今考えていたのはpreg_splitで一文字ごとに切断してバイト数で判断するという方法です
マルチバイトにマッチする正規表現が良く分からないので・・
分かる人いますか?
0800デフォルトの名無しさん
2016/07/15(金) 04:03:07.86ID:1/YfIWp8具体的には?
0801デフォルトの名無しさん
2016/07/15(金) 05:17:56.64ID:dm6z3Cfz結局
foreach (preg_split('//u',$url) as $str){
$result .= strlen($str) >1 ? urlencode($str) : $str;
}
みたいな感じにしました
ループが多くなりすぎるのが気になったのですが、
正規表現使うよりシンプルでもあるのでいいかと。
もっといい方法ありますか?
0802デフォルトの名無しさん
2016/07/15(金) 07:09:02.64ID:1/YfIWp8あれはクエリ部分をフィルタリングするのを想定してるからね
ユーザーノートの2番目のような感じでいいのでは?
一度エンコードしてから戻すってやつ
http://php.net/manual/ja/function.urlencode.php#97969
0803デフォルトの名無しさん
2016/07/15(金) 08:09:11.34ID:NGSkpex0次スレはそこにしましょうってことでしょ。
もう立ってるんだから再利用しない手も拒否する理由も無いんじゃない?
0804デフォルトの名無しさん
2016/07/15(金) 08:15:40.10ID:AxPyhRCwこのスレより後に、ワッチョイ使用の是非を議論されぬままにワッチョイ仕様で立てられた
重複スレを再利用することを積極的に肯定する理由もない
0805デフォルトの名無しさん
2016/07/15(金) 08:19:36.43ID:NGSkpex0普段何書いてんだよw
0806デフォルトの名無しさん
2016/07/15(金) 09:37:55.32ID:QvjmI5eD0807デフォルトの名無しさん
2016/07/15(金) 09:44:52.05ID:ySEzePPe0808デフォルトの名無しさん
2016/07/15(金) 13:07:41.56ID:JNOIp6O60809デフォルトの名無しさん
2016/07/15(金) 13:33:05.15ID:nn4v9hWVphp parse url encode
でググって20ページ読んでから出直せ。
0810デフォルトの名無しさん
2016/07/15(金) 13:42:50.20ID:dm6z3Cfz一度エンコードしてから戻す方法ですか
予想外のアプローチです
この方がすっきりしてるかもしれませんね
ありがとうございます
0811デフォルトの名無しさん
2016/07/15(金) 13:57:32.46ID:8bN8rZM/0812デフォルトの名無しさん
2016/07/15(金) 14:12:03.14ID:nn4v9hWV0813デフォルトの名無しさん
2016/07/15(金) 14:12:37.25ID:nn4v9hWV0814デフォルトの名無しさん
2016/07/15(金) 14:12:56.89ID:8bN8rZM/スルー決め込まれちゃいましたでやんすね
0815デフォルトの名無しさん
2016/07/15(金) 14:15:19.10ID:vMJo/UD7猿が1匹でも減るとありがたいし
>>801
parse_urlでクエリ部分抜き出す→parse_strで配列に→http_build_queryでエンコード
みたいな流れが正統派か
http_build_queryはちと癖があるから要注意
0816デフォルトの名無しさん
2016/07/15(金) 14:20:33.68ID:vMJo/UD7電話取ってる間に解決してたのかw
0817デフォルトの名無しさん
2016/07/15(金) 15:58:59.57ID:KZX0uSyb0818デフォルトの名無しさん
2016/07/15(金) 16:26:00.97ID:nn4v9hWVmemcached 用途
でググって20件くらい読めば?
0819デフォルトの名無しさん
2016/07/15(金) 16:49:38.26ID:ySEzePPe何でも必要な物を入れればいいだけじゃねぇか。
0820デフォルトの名無しさん
2016/07/15(金) 17:28:51.17ID:Pd4qmxmLたとえば検索ワードを指定するのにいちいちPHPを開いて入力しなければならないので
例 "keyword => "楽天←ここをいちいち書き換える”
ので事前にフォームをかませて name="text"
actionでとばして
$str = $_post'text'
"keyword => "$str”としたのですが動かしてみると
$str”がちゃんと認識してないみたいでapiにリクエストするURLの生成を失敗します
フォームで パソコン と入力したときに
"keyword => "パソコン”で処理するようにするためにはどのようにすればいいでしょうか?
0821デフォルトの名無しさん
2016/07/15(金) 17:42:55.38ID:5LGzx4BYまずは記号を正しく入力できるようになろう。
0822デフォルトの名無しさん
2016/07/15(金) 17:48:49.98ID:nn4v9hWV$_POST['text']
文字列に埋め込む場合は、"...{$_POST['text']}..."
0823デフォルトの名無しさん
2016/07/15(金) 19:01:57.92ID:Pd4qmxmLありがとうございました。勉強になりました821
>>821
"keyword => ×
"keyword” => のミスでした。仰られてるのは => がダメという事でしょうか?
このソースをphpとしてブラウザで読めば動作しますがフォームのhtmlからactionで
飛ばすと => のあとからの部分が ページに表示されてしまうみたいです。
=> が まずいという事でしょうか?
0824デフォルトの名無しさん
2016/07/15(金) 19:56:34.61ID:5LGzx4BY全角と半角の区別をつけられるようになろう。
等幅フォントを使うとよい。
0825デフォルトの名無しさん
2016/07/15(金) 23:52:00.18ID:bZsX5UUL$_FILES['userfile']['tmp_name']を使用しない(サーバ上の一時ファイルを使用したくない)やり方ってありますか?
0826デフォルトの名無しさん
2016/07/16(土) 00:35:46.80ID:ffEJBIp4サーバーでソケット開いて、そのソケット経由でデータを渡して、それをそのままDBに突っ込む。
0827デフォルトの名無しさん
2016/07/16(土) 00:38:38.36ID:ffEJBIp40828デフォルトの名無しさん
2016/07/16(土) 18:18:33.61ID:TSqGKgMUgetHogeを呼んだら
get('hoge')を返す
setHogeを呼んだら
set('hoge',$object)を返す、みたいにしたら便利ですよね?
こんな発想を取り入れているフレームワークありますか?
0829デフォルトの名無しさん
2016/07/16(土) 18:28:10.91ID:3cEw7l6Xって言って欲しいんだろ、マゾ
0830デフォルトの名無しさん
2016/07/16(土) 19:06:50.49ID:TSqGKgMUハゲの思考回路は意味が不明ですね
やはり紫外線を直接浴びてるからでしょうかワラ
0831デフォルトの名無しさん
2016/07/16(土) 22:38:10.71ID:AvQfeY+j0832デフォルトの名無しさん
2016/07/16(土) 22:40:54.06ID:RpE3j4vBやっぱ馴染んでくると一緒なんだなw
0833デフォルトの名無しさん
2016/07/17(日) 00:32:43.52ID:KNY6thMbデータベースとかなんやかんやのネットワーク関係まで触るの初めてだから結構戸惑い気味だ。
0834kakuuunn
2016/07/17(日) 01:33:07.00ID:gMGk8PGe自宅サーバでWEB/FTPを提供しているのですが、
原因不明のアクセス不可が続いています。
■事象
・外部からIEやChromeでWEB接続するとアクセスが出来ない旨が表示
・内部(自分自身のサーバ)からIEやChromeでWEB接続するとアクセスが出来ない旨が表示
・外部からFFFTPでFTP接続するとアクセスできる時と出来ない時がある
■試したこと
・サーバ再起動
・ルータ再起動
■環境
WIndows7 64bit
Apache + PHP
FIleZilla
■質問
原因が色々考えられると思います。
まず名前解決は出来ています。
そこからのネットワーク的な障害なのか、
アプリの障害なのか、
TCPコネクション数の問題なのか、
不正アクセスを受けているのか、
原因が分かりません。
原因の切り分けの方法と、解決策をご教授下さい。
0835デフォルトの名無しさん
2016/07/17(日) 02:56:08.07ID:jkbcx0cYアクセス出来ない時のステータスコードは何なん?
500とかならこの板かもしれんけど…
0836デフォルトの名無しさん
2016/07/17(日) 02:57:56.47ID:jkbcx0cY0837デフォルトの名無しさん
2016/07/17(日) 03:25:01.20ID:/DoV8KsF0838デフォルトの名無しさん
2016/07/17(日) 03:29:11.43ID:NDevJxwd0839デフォルトの名無しさん
2016/07/17(日) 04:22:51.66ID:HNicyEHTたとえIISであったとしても、公開Webサーバにするのはライセンス違反
>>838
>>835に対するレスじゃないという逃げ方があることは分かっているけれど、独禁法て。
0840デフォルトの名無しさん
2016/07/17(日) 04:29:17.11ID:jkbcx0cYおまえは優先順位を知らないって言われるだろ。
0841デフォルトの名無しさん
2016/07/17(日) 05:09:23.94ID:l1DXOoYc「?」になってしまいました
ちゃんと変換するにはどうすればいいですか?
0842デフォルトの名無しさん
2016/07/17(日) 05:23:19.44ID:nQcyBORp0843デフォルトの名無しさん
2016/07/17(日) 06:09:38.95ID:KNY6thMb0844デフォルトの名無しさん
2016/07/17(日) 06:38:43.83ID:l1DXOoYcそれでした
ありがとうございました
0845デフォルトの名無しさん
2016/07/17(日) 07:10:43.42ID:NDevJxwdWindows Serverのことじゃないという逃げ方があることはわかっているけど(ry
0846デフォルトの名無しさん
2016/07/17(日) 17:27:29.44ID:l1DXOoYc$lockFIle = 'test.lock';
$fp = fopen($lockFIle,'w');
if (flock($fp,LOCK_EX)){
// 処理
flock($fp,LOCK_UN);
fclose($fp);
unlink($lockFIle);
}
こんな感じにしようと思うのですが
アンロックした後の削除が
他のプロセスの処理と不整合を起こす可能性があるのではないかと思います
アンロック→他プロセスがオープン→他プロセスがロックする前に削除
ってなるのでは?と。
どうでしょうか?
0847デフォルトの名無しさん
2016/07/17(日) 19:42:48.55ID:li0s1RGq0848デフォルトの名無しさん
2016/07/17(日) 19:57:13.43ID:K/o4iFAB・具体的なエラーを明記してください。
→タイムアウトエラーです
・Apacheのログは?
→
XXXX.jpg ステータス:200 応答時間:1秒
〜省略〜
XXXX.jpg ステータス:200 応答時間:2秒
〜省略〜
XXXX.jpg ステータス:200 応答時間:10秒
〜省略〜
XXXX.jpg ステータス:200 応答時間:50秒
〜省略〜
XXXX.jpg ステータス:200 応答時間:200秒
〜省略〜
XXXX.jpg ステータス:200 応答時間:250秒
〜省略〜
XXXX.jpg ステータス:200 応答時間:300秒
徐々に応答時間が遅くなっていき、
アパッチを再起動すると、また0秒→300秒といった具合です
性能系の問題だと思うのですが、
アパッチの性能チューニングってどうやればいいのでしょうか?
・発生は毎回?稀に? 成功はしたことある?
→再起動直後は正常接続ですが、上記の通りだんだん重くなっていき、最後には接続不可となります
0849デフォルトの名無しさん
2016/07/17(日) 20:16:22.49ID:l1DXOoYc後片付けです
確かに、削除しなければいいとも思いますが・・
なんとなく気持ち悪いので
0850デフォルトの名無しさん
2016/07/17(日) 20:33:02.90ID:J3SjwmUfそこまで調べた上で何でここで聞いてるん?
どう見てもPHP関係ないやん
自宅サーバ板辺りで適当なスレ探して訊け
0851デフォルトの名無しさん
2016/07/17(日) 20:45:53.49ID:CJZXGNcJ0852デフォルトの名無しさん
2016/07/17(日) 21:54:53.71ID:l1DXOoYcflockではなくディレクトリを使ったロックにして、
コードで待ち処理を実現することにしました
0853デフォルトの名無しさん
2016/07/17(日) 22:49:56.84ID:l1DXOoYcシャットダウン時には既にオブジェクトがなくてメソッドを呼び出せない、
という事態になるケースはありますか?
0854デフォルトの名無しさん
2016/07/18(月) 00:11:44.12ID:PFPZuQeZお前 ID:lILkfZqG だろ?
お前のこと応援してるぜ。
独自のがんばりを期待してる。
0855デフォルトの名無しさん
2016/07/18(月) 00:20:46.92ID:4T/8sIS0そうですよ
ご声援ありがとうございます
0856デフォルトの名無しさん
2016/07/18(月) 00:35:12.94ID:PVAMR62MパーフェクトPHPを読め
0857デフォルトの名無しさん
2016/07/18(月) 01:53:25.57ID:Lt3DZeAI0858デフォルトの名無しさん
2016/07/18(月) 04:17:58.37ID:98j4qI3o不味いとこはノーサンクスでイケるとおもってるヤツは
自分だけでやってくのがいいんじゃねえの?
0859デフォルトの名無しさん
2016/07/18(月) 15:03:38.08ID:HvUhYf8t$ php -i | grep timezone
PHP Warning: Unknown: Invalid date.timezone value 'UTC', we selected the timezone 'UTC' for now. in Unknown on line 0
Default timezone => UTC
date.timezone => UTC => UTC
上記のようにwarningが出るしcomposerで以下の様なエラーが出る
$ composer
PHP Fatal error: date_default_timezone_get(): Timezone database is corrupt - this should *never* happen! in /usr/share/php/Composer/Util/Silencer.php on line 67
どう設定すればtimezoneをUTCにできます?
0860デフォルトの名無しさん
2016/07/18(月) 17:10:06.27ID:JmouzzDCお前何言ってんのかよくわかんねぇから、
とりあえず、php.iniの
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
ここにどう書いてるかそのままコピペして見せてみろ
あと、Invalidの意味調べとけ
0861デフォルトの名無しさん
2016/07/18(月) 23:26:00.90ID:uIS2YusAhttp://php.net/manual/ja/language.types.float.php
整数のうち1〜3桁目を切り捨てたいとき、正しくはどうすれば良いんでしょうか?
$value = 23918721;
$value_floored = floor( $value/1000 )*1000;
これだとfloorの結果が1ズレてしまいそうで怖いです
0862デフォルトの名無しさん
2016/07/19(火) 00:31:57.15ID:yn34H7Ow$value -= $value % 1000;
0863デフォルトの名無しさん
2016/07/19(火) 00:34:38.06ID:q4tCE0Naありがとう天才
0864デフォルトの名無しさん
2016/07/19(火) 06:19:33.07ID:eWc5HTQTてか、捨てるゴミが腐ったら冷蔵庫の中の食品まで腐って食べられないと思ってる奴、初めて見た。
0865デフォルトの名無しさん
2016/07/19(火) 09:56:11.64ID:PABFu/YBロックファイルは絶対に消してはいけない
0866デフォルトの名無しさん
2016/07/19(火) 13:08:20.04ID:7ocwX+2mLaravelのEloqmentを使ってデータベースに書き込みを行っているのですが、書き込みを行う文字列はエスケープを行うべきなのでしょうか?
0867デフォルトの名無しさん
2016/07/19(火) 14:16:31.72ID:QuuYpuW+そういうことじゃなくて?
0868デフォルトの名無しさん
2016/07/19(火) 15:35:26.93ID:eWc5HTQT> 例えばシングルクオートはエスケープしないと登録できないだろう
> そういうことじゃなくて?
こいつ、本気で言ってるのか!?
これに真面目に応えなきゃいけない ID:7ocwX+2m が可哀想過ぎる。
0869デフォルトの名無しさん
2016/07/19(火) 16:19:20.94ID:QuuYpuW+0870デフォルトの名無しさん
2016/07/19(火) 16:26:27.57ID:sDdf09fySQLそのまま使う場合以外はなくていい
0871デフォルトの名無しさん
2016/07/19(火) 17:18:58.88ID:q4tCE0Na0872デフォルトの名無しさん
2016/07/19(火) 17:25:12.19ID:eWc5HTQTアホか?ここは初心者が答えるスレじゃねぇんだぞ?
質問者がなんでそんな事聞いてきたのか理解できねぇような奴こそ、
黙って成り行き見てろよ。
0873デフォルトの名無しさん
2016/07/19(火) 17:29:55.86ID:eWc5HTQThttp://stackoverflow.com/questions/27131856/prepared-statement-with-eloquent-orm-laravel
> Eloquent does the PDO style prepared statements behind the scenes to protect against things like sql injection. Eloquent models also protect against mass assignment by default.
と、いうことなわけだ。
0874デフォルトの名無しさん
2016/07/19(火) 18:31:09.98ID:8sbR6QQG0875デフォルトの名無しさん
2016/07/19(火) 21:16:24.48ID:dFi2gZ/8テストの正しい書き方などについて体系的に学べるサイトはないでしょうか?
テストメソッドはなるべく細分化した方がいい....などの細かな事まで学んでみたいです
0876866
2016/07/19(火) 21:43:33.29ID:7ocwX+2m後下らねえ質問ってスレタイだったから全然テンプレ読んでなくて申し訳ないです
0877デフォルトの名無しさん
2016/07/19(火) 23:04:15.18ID:YB1SJPgK0878デフォルトの名無しさん
2016/07/19(火) 23:16:18.78ID:tYaiVuRc具体的にね。そうでないと変わらないと思う。
0879デフォルトの名無しさん
2016/07/20(水) 00:09:27.68ID:IFW9VMW+JavaScriptも動けば神すぎますが、さすがにそれをマストだとは言えません
PHPじゃなくても、サーバサイドで動かせるようなブラウザが欲しいのです
0880デフォルトの名無しさん
2016/07/20(水) 00:13:35.84ID:j5N4Zhbo0881デフォルトの名無しさん
2016/07/20(水) 01:56:51.72ID:Cwc0yafoもうちょっと何か足したい感
関連リンク
■公式 http://php.net/
■PHPマニュアル http://www.php.net/manual/ja/
■日本PHPユーザ会 http://www.php.gr.jp/
■PHPNG https://wiki.php.net/phpng
■PECL http://pecl.php.net/
■メーリングリスト http://ml.php.gr.jp/mailman/listinfo/
■Composer https://getcomposer.org/
ライブラリ等
■Zend Framework https://framework.zend.com/
■Twig http://twig.sensiolabs.org/
■Doctrine http://www.doctrine-project.org/
■PHPUnit https://phpunit.de/
■Packagist https://packagist.org/
0882デフォルトの名無しさん
2016/07/20(水) 01:57:25.47ID:Cwc0yafo0883デフォルトの名無しさん
2016/07/20(水) 02:44:16.90ID:IFW9VMW+いや単にあなたが低能なだけですよ
0884デフォルトの名無しさん
2016/07/20(水) 03:31:27.08ID:MZms4SGSお前はそろそろロピテクス以下の最下層だという事を自覚して
>>880に一言詫びを入れてから3ヶ月ほどブラウザを閉じて一人で勉強してろ。
そうすれば少しはマシになるだろう。
0885デフォルトの名無しさん
2016/07/20(水) 03:51:49.58ID:gdU6tHq4夏だ
0886デフォルトの名無しさん
2016/07/20(水) 04:11:40.77ID:o3DMqR450887デフォルトの名無しさん
2016/07/20(水) 04:51:30.22ID:MZms4SGS0888デフォルトの名無しさん
2016/07/20(水) 05:10:52.86ID:IFW9VMW+ブラウザ=クライアント用、
という頭の固い老人は少し黙っていてもらえますか?
サーバーサイドで動いてphpで操作できるブラウザはないのか、
と聞いているんです
分かりますか?
0889デフォルトの名無しさん
2016/07/20(水) 05:15:32.32ID:IFW9VMW+http://php.net/manual/ja/function.urlencode.php#97969
のmyUrlEncodeでは
(や)も元に戻していますが、これはこの挙動であってるのでしょうか?
()を含んだURL見たことない気がしますし
そもそもエンコードする必要もないのにエンコードしてしまっているのなら
urlencodeって何なの?という気がします
どうなのでしょうか?
0890デフォルトの名無しさん
2016/07/20(水) 05:24:02.57ID:MZms4SGS本当に3ヶ月ネット遮断して図書館行ってろよ。
それがお前の為だ。
0891デフォルトの名無しさん
2016/07/20(水) 06:46:27.33ID:IFW9VMW+googleで(abc)と検索したら、()もurlエンコードされていると分かりますね
いったい何故、myUrlEncodeでは戻すようにしたのか?
RFC的にはこの方が正しいのでしょうか?
>>890
語彙の少ない老いぼれは辞書でも読んでいた方がいいんじゃないですか?
0892デフォルトの名無しさん
2016/07/20(水) 07:41:46.95ID:UjLu+WCSRFC読めばいいじゃん。
その上で好きな仕様で作ればいいでしょ。
0893デフォルトの名無しさん
2016/07/20(水) 10:12:33.86ID:MZms4SGS0894デフォルトの名無しさん
2016/07/20(水) 13:32:40.74ID:IFW9VMW+RFCには()は符号化しないで使うことが出来ると書かれています
何故urlencodeやchrome(あるいは他のブラウザも)は符号化しているのでしょうか?
0895デフォルトの名無しさん
2016/07/20(水) 13:59:57.01ID:CmER0+yj0896デフォルトの名無しさん
2016/07/20(水) 14:15:57.24ID:M7N2bOhtどういうこと?
0897デフォルトの名無しさん
2016/07/20(水) 15:37:54.96ID:CmER0+yjすまん、これおれもたどり着けなかった。
記憶違いだったかもしれないのでコメント保留する。
0898デフォルトの名無しさん
2016/07/20(水) 15:47:08.93ID:rNC2ZoW6検索してみました
https://www.google.co.jp/search?hl=ja&q=(abc)&lr=lang_ja&gws_rd=ssl
0899デフォルトの名無しさん
2016/07/20(水) 15:59:05.47ID:IFW9VMW+urlencodeなどは互換性のためにそうしているのでしょうね
それならドキュメントにそう明記しておくべきだと思いますが・・
0900デフォルトの名無しさん
2016/07/20(水) 16:04:36.54ID:CmER0+yj見つけた
0901デフォルトの名無しさん
2016/07/20(水) 16:05:42.53ID:MZms4SGS0902デフォルトの名無しさん
2016/07/20(水) 16:08:52.34ID:MZms4SGS宇宙に行ってボールペンが書けない事を発見したら
宇宙でも書けるボールペンを開発する派だろ?
0903デフォルトの名無しさん
2016/07/20(水) 16:36:37.06ID:rNC2ZoW6ここがどうしても分からないんですけど、教えてはもらえないでしょうか
0904デフォルトの名無しさん
2016/07/20(水) 16:42:07.64ID:rNC2ZoW60905デフォルトの名無しさん
2016/07/20(水) 19:34:31.32ID:MZms4SGS0906デフォルトの名無しさん
2016/07/20(水) 20:26:13.48ID:1xTp84Qdちょっと違う
開発させる派だわ
0907デフォルトの名無しさん
2016/07/20(水) 20:34:21.46ID:MZms4SGSあー、さいですか。
ここは最低限霊長類のスレなので、
それ以上か以下かはしらんけど、
わざわざやってきて止まってるスレで下らん自己主張する
外の人は自分に合ったスレに行ってもらえますか?
0908デフォルトの名無しさん
2016/07/21(木) 00:56:36.51ID:Ihe/yemFメソッドチェーンでの使用を前提とした、既存のクラス(ライブラリ)があります。
このライブラリ自体には手を加えずに独自の拡張を行いたいと思っています。
単にクラスを継承しただけでは、親クラスの関数を数珠繋ぎに出来ませんよね?
とりあえず、$thisを返す可能性があるpublic関数に対して
片っ端からラッパを書いてみたのですが、その数が何十にもなると大変でした。
ライブラリのアップデートで関数が追加された場合、
そのたびに修正しなければならないのも不具合の原因になりそうです。
こういった場合、どうするのがスマートでしょうか。
バージョンは5.3.3ですが、最近のバージョンで解決可能ならそれでも構いません。
0909デフォルトの名無しさん
2016/07/21(木) 01:57:25.93ID:lSK4P9QQコンパクトなサンプルコード
何がしたいのかが何となくしか分からん
0910デフォルトの名無しさん
2016/07/21(木) 01:57:33.96ID:XMUTKrdLなぜ?普通に出来るのでは?
0911デフォルトの名無しさん
2016/07/21(木) 01:59:09.85ID:h2Njwq+3るようなライブラリを使うのに、勝手に独自拡張するような使い方は
他人が不幸になるだけだからやめたら?
0912デフォルトの名無しさん
2016/07/21(木) 11:06:11.02ID:EiiI2tqpラッパクラス作ってそのクラス内で__call使えばいいだけじゃないの?
そういう事ではなく?
0913デフォルトの名無しさん
2016/07/21(木) 12:50:08.84ID:hw5N2HEi>>910 のようなことだと思ってた
0914デフォルトの名無しさん
2016/07/21(木) 14:08:12.15ID:XMUTKrdL呼べないなら継承って何なの?と思ったけど
親クラスのメソッドがマジックメソッドで実装されてる場合は普通には呼べないのか
0915908
2016/07/21(木) 22:48:08.97ID:Ihe/yemF最小ソースで実験してみたら普通に継承できました。
お騒がせしてスミマセン。
既存ライブラリの仕様(初心者ゆえ曖昧な表現でご容赦ください)により、
そのまま継承してもチェーンできないのを
チェーンメソッドは継承できないと勘違いしていました。
0916デフォルトの名無しさん
2016/07/22(金) 06:56:43.37ID:cBSnbO0t検索部分は何使うのがいいですか?
0917デフォルトの名無しさん
2016/07/22(金) 07:57:00.50ID:1vDggOyW0918デフォルトの名無しさん
2016/07/22(金) 08:23:42.89ID:N9kAj4S30919デフォルトの名無しさん
2016/07/22(金) 10:12:53.45ID:xkniS2WhPHP
0920デフォルトの名無しさん
2016/07/22(金) 10:24:48.31ID:c8j+o07w昔からあるところで Namazu とか?
他には Hyperestraier とか?
どっちも Windows で使ったことは無いけど。
0921デフォルトの名無しさん
2016/07/22(金) 14:17:07.11ID:NSe4MNLsディレクトリをdefineするとき、最後の / は入れてる?
define("UNKODIR", "/tmp/unko");
define("UNKODIR", "/tmp/unko/");
みんなはどっち派?
おれは / つける派だったんだけど、あるとき
0922デフォルトの名無しさん
2016/07/22(金) 14:53:46.34ID:E8qd+DIg付けない派
まあどっちかに統一すればいいだけの話だし
file_existsもis_dirもrmdirも末尾/があってもなくても動くんだけど
0923デフォルトの名無しさん
2016/07/22(金) 15:42:21.41ID:cBSnbO0tありがとうございます
両方とも、結構前からあるプロダクトですよね
最近の新しい動きは出てない感じですね
n-gramやら、転置インデックスやらを使って、
phpだけで実装することは出来ないでしょうか?
やってみた人いますか?
0924デフォルトの名無しさん
2016/07/22(金) 18:54:06.92ID:N9kAj4S3個人的には /hogehage に統一したいところ。
よく使われている dirname(__FILE__) をすると最後に / がつかないから、
そこに続くパスは / で始める事になる。
だからパス指定は / で始めるに統一できるならしたい。
でも、大抵はなんか別の理由でイレギュラーな箇所がでてくる。
関係無けど、何故か __DIR__ 使っているのはあまりみたことがない。
0925デフォルトの名無しさん
2016/07/22(金) 21:44:56.65ID:NSe4MNLs/tmp/unko//chinko.dat
になっても正常に動作するので、そこはいいかなーって
$fullname = UNKODIR. "/". $filename; // 万能型
$fullname = UNKODIR. $filename; // スラあり型
$filename に / が入ってても入ってなくても動くし
どっちも / 抜かしてる可能性考えると 万能型にしたいけど
コード書くときは スラあり型 にしたいんだよなー
0926デフォルトの名無しさん
2016/07/22(金) 22:02:54.47ID:cBSnbO0t書き込み時にはスラ付ける
読み込み時にはスラがなくても動くようにする
同一関数内の処理の場合は、スラの有無が明確なので、
読み込み時にスラ付けたりはしないけど
0927デフォルトの名無しさん
2016/07/22(金) 22:59:16.09ID:N9kAj4S3あんまりこだわるところじゃないんだろうな。
0928デフォルトの名無しさん
2016/07/23(土) 03:45:10.59ID:sDLbl0Tk自然言語処理の本を読んでいると
TF-IDFとかコサイン類似度とか出てきますが
これは億単位の文書から最も適合した文書を探し出すための
順位付けに使うもので、
クライアントPC内の限られた文書を全文検索する場合、
「順位付け」ということがまずほとんど無用ですね
一口に全文検索といっても、そこにはかなり種類の異なる処理が含まれるなあと
思った次第です
0929デフォルトの名無しさん
2016/07/23(土) 04:17:10.26ID:WI96AR4D0930デフォルトの名無しさん
2016/07/23(土) 13:37:38.59ID:sDLbl0Tk実はそうしています
iFilterというのを入れて、windows標準の検索機能でPDFを全文検索できるようになったのですが
これだと語句が見つかった位置が分かりにくいんです
pdfからテキストを抜け出すpdftotextというプログラムがあったので
phpとこれを使って、自前でPDFからの全文検索を実装しようかと
0931デフォルトの名無しさん
2016/07/24(日) 06:03:10.22ID:oOM1gog7http://www.tatamilab.jp/rnd/archives/000390.html
このような、テキストをn文字で切ってフルテキストインデックスを張る方法です
このサイトもそうですが、ネット上でこの方法を説明しているものの多くは
against( '+お仕 +仕事' in boolean mode )
みたいにboolean modeでAND検索をするというように書いているのですが
これだと「お仕hoge仕事」というテキストもヒットするはずです
「お仕」と「仕事」の連続性は保証されないからです。
against( '"お仕 仕事"')
のような形にすると、
「お仕事」はヒットし、「お仕hoge仕事」はヒットしません
explainを見ても、ちゃんとfulltextインデックスが使われているようです
正しいのはこのやり方ではないでしょうか?
それともこれだと何か問題が出るのでしょうか?
0932デフォルトの名無しさん
2016/07/24(日) 21:49:35.26ID:oOM1gog7>>931の方法で検索してみたところ、一瞬で表示されて感動です
手間取った点は、
発行時のクエリの大きさに関係するmax_allowed_packet
書き込み時のタイムアウトを規定しているらしいnet_write_timeout
がデフォルトでは小さすぎたというところです
0933デフォルトの名無しさん
2016/07/26(火) 02:54:16.30ID:ekoTZKjr正規表現関係なくてもpreg_replaceとかmb_ereg_replaceを使うしかないのでしょうか?
0934デフォルトの名無しさん
2016/07/26(火) 10:41:10.20ID:7I7s90sHUTF-8限定ならstr_replace() を使えば問題ない。
って見たことある。
0935デフォルトの名無しさん
2016/07/26(火) 14:35:58.15ID:ekoTZKjrなるほど
UTF-8は文字が他の文字のコードを含むことはないということですね
ありがとうございました
0936デフォルトの名無しさん
2016/07/26(火) 16:01:27.87ID:DP/fo1cL0937デフォルトの名無しさん
2016/07/26(火) 16:15:16.19ID:ekoTZKjr0938デフォルトの名無しさん
2016/07/26(火) 16:47:06.49ID:DP/fo1cLstrtr は再変換が発生しない
str_replace は再変換が発生する
という違いがある。
その観点でいろいろ実験してみるといいよ。
個人的にはstr_replaceを使うのではなく
string strtr ( string $str , array $replace_pairs )
を使う方がいいと思うよ。
こっちはperlのtrっぽくない動きをするから気持ち悪いかもしれないけど。
0939デフォルトの名無しさん
2016/07/26(火) 16:49:21.12ID:DP/fo1cL0940デフォルトの名無しさん
2016/07/26(火) 16:54:30.04ID:RzrPgs8O0941デフォルトの名無しさん
2016/07/26(火) 17:02:26.64ID:ekoTZKjrUTF-8ならstr_replaceで問題ないなら、strtrでも問題ないですよね
何故か盲点でした
ありがとうございました
0942デフォルトの名無しさん
2016/07/26(火) 17:23:08.29ID:DP/fo1cLくだらないついでにこの最高にクソな記事でも見てやってくれ
http://thk.kanzae.net/net/itc/t2510/
0943デフォルトの名無しさん
2016/07/26(火) 22:56:51.15ID:khzQVFVw0944デフォルトの名無しさん
2016/07/27(水) 01:03:36.77ID:jqIFJxOw0945デフォルトの名無しさん
2016/07/27(水) 01:09:53.36ID:n7RdK8WFやりかたおしえて
0946デフォルトの名無しさん
2016/07/27(水) 02:39:41.99ID:4c6945grこれは他のサイトにアクセスするのとほぼ同じ操作です
0947デフォルトの名無しさん
2016/07/27(水) 02:58:32.49ID:jqIFJxOw何のために作ろうとしてるのかによるけど、時間かけて地道に勉強した方がいいよ。
0948デフォルトの名無しさん
2016/07/27(水) 10:05:45.02ID:8yC4YC1p出来ればお盆くらいまでにちゃっちゃと作って
アフィでお小遣い稼ぎするんです
0949デフォルトの名無しさん
2016/07/27(水) 10:18:41.52ID:6NuqJv8S0950デフォルトの名無しさん
2016/07/27(水) 10:44:45.44ID:2CCRGr5/0951デフォルトの名無しさん
2016/07/27(水) 10:52:08.85ID:B1bvHjCt$new_file->setFlags(SplFileObject::READ_CSV);
foreach ($new_file as $line) {
echo $line[0]; // Undefined offsetは出ない
echo $line[1]; // Undefined offsetが出る
echo $line[2]; // Undefined offsetが出る
}
上記コードでCSVを読み込んでforeachで$lineに配列化したいんですが、実行結果で
Notice: Undefined offset: 1
Notice: Undefined offset: 2
が出てしまいます。
一応echoの結果そのものは想定している値が表示されているのですが、
$line[0]ではnoticeが出ず[1]と[2]ではnoticeが出るのは何がいけないんでしょうか
php5.3
0952デフォルトの名無しさん
2016/07/27(水) 12:37:15.60ID:iqv0Bu3PUndefined offsetの意味は分かってるんだろうか
とりあえrず
echo $line[0];
echo $line[1];
echo $line[2];
を
コメントアウトして
var_dump($line);
を追加してから実行結果を確認してみ
0953デフォルトの名無しさん
2016/07/27(水) 13:46:11.96ID:B1bvHjCt空行があるとそれが起こるようです
0954デフォルトの名無しさん
2016/07/27(水) 14:14:13.07ID:iqv0Bu3P真面目に答えるだけアホくさいな
0955デフォルトの名無しさん
2016/07/27(水) 14:19:34.51ID:6NuqJv8S0956デフォルトの名無しさん
2016/07/27(水) 15:36:03.83ID:E11VYAF00957デフォルトの名無しさん
2016/07/27(水) 18:59:10.57ID:n7RdK8WF上から発言、偉いんだねー
0958デフォルトの名無しさん
2016/07/27(水) 19:40:18.50ID:FB3DBcHtもっと尊敬しろよクズどもw
0959デフォルトの名無しさん
2016/07/27(水) 23:51:26.56ID:4c6945gr2バイト目が0x5cなどの文字を含むファイルパスの
エスケープ処理はどうするのがいいのでしょうか?
0960デフォルトの名無しさん
2016/07/28(木) 00:19:13.71ID:BcazKYXd_ (アンダーバー)は使っても良いが、
- (ハイフン)は色々な種類があるので、使うな
0961デフォルトの名無しさん
2016/07/28(木) 01:02:32.71ID:zmuz0aac日本語のディレクトリ名、ファイル名なんていくらでもありますよね
0962デフォルトの名無しさん
2016/07/28(木) 01:48:35.29ID:zmuz0aachttp://d.hatena.ne.jp/hnw/20120501
こんな記事を見つけました
非マルチバイト関数でもロケール設定によって挙動を変えるものがあるとのこと
具体的にどんな違いが出るのか、いまいちイメージしにくいですが・・
0963デフォルトの名無しさん
2016/07/28(木) 02:18:01.52ID:zmuz0aacまさか2016年にSJISに悩まされるとは思いませんでした
0964デフォルトの名無しさん
2016/07/28(木) 03:24:12.90ID:uo2o1CkW0965デフォルトの名無しさん
2016/07/28(木) 03:24:55.88ID:uo2o1CkW0966デフォルトの名無しさん
2016/07/28(木) 03:37:55.55ID:zmuz0aacphpが悪いというか、windowsが悪いんです
0967デフォルトの名無しさん
2016/07/28(木) 03:41:54.52ID:zmuz0aacSJISの呪いを被せられているようです
PHPも呪いの外側からしかアクセスできないのでしょうか?
0968デフォルトの名無しさん
2016/07/28(木) 04:20:55.66ID:9iycxasn0969デフォルトの名無しさん
2016/07/28(木) 10:34:52.60ID:MRvtYwLNハイフン問題はUnicodeの呪い。
https://hydrocul.github.io/wiki/blog/2014/1101-hyphen-minus-wave-tilde.html
0970デフォルトの名無しさん
2016/07/28(木) 11:09:23.76ID:KxAg1aMYUTF8で書いたPHP内で
Windows上のパスは mb_convert_encoding($path, 'UTF-8', 'SJIS-win') して扱えば
ディレクトリ名やファイル名に0x5cを含むパスも問題なく扱える
※Windows7までしか確認してないからそれ以降は知らない
0971デフォルトの名無しさん
2016/07/28(木) 11:13:33.56ID:KxAg1aMYRFC違反のメアドといい当時はdocomo死ねよと思ってたわ
0972デフォルトの名無しさん
2016/07/28(木) 11:54:28.09ID:zmuz0aacディレクトリエントリの取得にglobではなくscandirを使うようにしたら
うまく読めなかったディレクトリも読めるようになりました
0973デフォルトの名無しさん
2016/07/28(木) 20:41:03.36ID:+EEHpdbwあくまでFOMAだからな
RFC?何それ?ってなもんで
0974デフォルトの名無しさん
2016/07/28(木) 22:41:31.56ID:YFw1hd800975デフォルトの名無しさん
2016/07/29(金) 18:25:47.99ID:dQhvNRrMでも未だに「@」の前が「.」で終わったり「.」が2つ続くアドレスとか普通に存在してるからな
docomo,auの功罪はでかいよ
0976デフォルトの名無しさん
2016/07/29(金) 19:17:33.93ID:xSV95ggv功もあるので良し
0977デフォルトの名無しさん
2016/07/30(土) 03:54:40.55ID:wilS7b6y0978デフォルトの名無しさん
2016/07/30(土) 06:16:09.50ID:tSy6NJrp著作物に関わるものなら著作権に照らし合わせて使えばいいだけのこと
0979デフォルトの名無しさん
2016/07/30(土) 09:14:01.54ID:AdeEmNwB0980デフォルトの名無しさん
2016/07/30(土) 10:03:56.98ID:ra6fEHwC元々、誰でも見ることが出来る情報なんだし。
ただ、そのやり過ぎでサーバーに負荷がかかったら、それを理由に訴える事はできる。
つまりまぁ、公に「やっても良い」とは言えないので、
やるなら節度をわきまえてやれってとこじゃないかな? 恐らくだけど。
0981デフォルトの名無しさん
2016/07/30(土) 10:37:54.32ID:uyw/q1V90982デフォルトの名無しさん
2016/07/30(土) 13:53:49.52ID:qR7Cbx7h0983デフォルトの名無しさん
2016/07/30(土) 15:10:58.74ID:xuNBL+LwセッションIDがなければ新規発行し、データベースへの接続を作成。
セッションIDがあれば、先に作成した接続を利用してデータベースへアクセス。
というのを、単純な仕組みで実装してしまったがために
そもそもクッキーを持たないようなクライアントでアクセスすると死ぬ、とかそんなんだっけか
0984デフォルトの名無しさん
2016/07/30(土) 15:37:02.62ID:k5aoOJnSデータベース側はタイムアウトにより解放するんだけど、
連続したアクセスを行われると、解放し切れずに使い切ってしまい、システムが落ちてしまう。
ちょこっとした確認試験では見つからないとしても、
運用時を想定して連続負荷試験をしていれば、簡単に見つかる不具合だね。
問題はそれだけじゃなく、
開発会社が不具合に気がついたものの、こっそり直そうとしたため、当該図書館が修正できず放置されていたこと。
システムへのアクセスがパスワード無しでできたため、ソースがネット上に流出し、バグ解析を皆でやったこと。
0985デフォルトの名無しさん
2016/07/30(土) 15:39:49.32ID:uyw/q1V90986デフォルトの名無しさん
2016/07/30(土) 15:40:45.05ID:xuNBL+Lwあら、通常のブラウザからでもダメだったのか
0987デフォルトの名無しさん
2016/07/30(土) 15:43:30.35ID:uyw/q1V90988デフォルトの名無しさん
2016/07/31(日) 00:09:01.04ID:DXnXJ1sjPEARのHTTP_OAuthでいいかな
0989デフォルトの名無しさん
2016/07/31(日) 01:25:53.16ID:HOTyuPmaなんもフレームワークつかっとらんの?
0990デフォルトの名無しさん
2016/07/31(日) 01:46:48.89ID:DXnXJ1sjパーフェクトPHP読みながら作ったやつ使ってるの
フレームワークにはOAuthの機能がついてるのん?
0991デフォルトの名無しさん
2016/07/31(日) 14:49:55.94ID:54Ehq7B7あるものもあるし、ないものもある
ないもののときはない
0992デフォルトの名無しさん
2016/07/31(日) 17:44:21.61ID:0U+gA+7M0993デフォルトの名無しさん
2016/07/31(日) 19:03:48.73ID:yvkXdxUw0994デフォルトの名無しさん
2016/07/31(日) 22:22:55.49ID:4YE3aVl50995デフォルトの名無しさん
2016/08/02(火) 20:01:22.80ID:CU+GTCwG【PHP】下らねぇ質問はここに書き込みやがれ 5 [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1462971286/
0996デフォルトの名無しさん
2016/08/03(水) 13:28:45.10ID:cNyQLT6D0997デフォルトの名無しさん
2016/08/03(水) 13:29:08.32ID:cNyQLT6D0998デフォルトの名無しさん
2016/08/03(水) 13:29:24.20ID:cNyQLT6D0999デフォルトの名無しさん
2016/08/03(水) 13:29:35.75ID:cNyQLT6D1000デフォルトの名無しさん
2016/08/03(水) 13:30:03.00ID:cNyQLT6D10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
life time: 40日 16時間 24分 13秒
10021002
Over 1000Thread運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
http://premium.2ch.net/
http://pink-chan-store.myshopify.com/
レス数が1000を超えています。これ以上書き込みはできません。