トップページtech
1002コメント432KB

【PHP】下らねぇ質問はここに書き込みやがれ 7 [無断転載禁止]©5ch.io

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん 転載ダメ©2ch.net (ワッチョイ 1342-Xqtn)2016/11/09(水) 11:03:26.15ID:eAjeihOa0

PHPに関する下らない質問用避難スレです。
まず読むこと【PHPマニュアル】
http://www.php.net/manual/ja/

前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 5(実質6)
http://echo.2ch.net/test/read.cgi/tech/1462971286/

次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

次スレを立てる時は本文の1行目に以下を追加して下さい
!extend:on:vvvvv:1000:512
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
0002デフォルトの名無しさん (ワッチョイ 21d6-vT48)2016/11/09(水) 11:27:10.17ID:zXNkuzHh0
>>1
0003デフォルトの名無しさん (ワッチョイ 1342-Xqtn)2016/11/09(水) 11:41:11.04ID:eAjeihOa0
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】7.0
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

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

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

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

【その他諸注意】
・ SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0004デフォルトの名無しさん (ワッチョイ 1342-Xqtn)2016/11/09(水) 11:41:51.63ID:eAjeihOa0
関連リンク
■本家マニュアル   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/
0005デフォルトの名無しさん (スップ Sd78-DGmA)2016/11/09(水) 17:46:25.80ID:6RGcB/cmd
PPAPはPHPから産まれたと聞いた
0006デフォルトの名無しさん (ワッチョイ 2617-M9UC)2016/11/09(水) 18:32:39.84ID:Bm97/4Ey0
Flash Playerからだと思ってた
0007デフォルトの名無しさん (ワッチョイ 0185-DVlP)2016/11/09(水) 23:26:38.41ID:4PsSc7uc0
http://anond.hatelabo.jp/20161105173044


こんなこと言われてるけど、ええんかおまいら・・・
0008デフォルトの名無しさん (ワッチョイ 0185-DVlP)2016/11/09(水) 23:27:01.89ID:4PsSc7uc0
ありますよ(ありますよとは言っていない)
0009デフォルトの名無しさん (ワッチョイ bc6b-DGmA)2016/11/09(水) 23:56:11.73ID:/fxTpwmS0
ゴミにゴミカスって言われても、ただの日常的な挨拶にしか聞こえないわけで
0010デフォルトの名無しさん (ブーイモ MM6f-9MLS)2016/11/10(木) 09:37:31.54ID:zCDyTG8gM
硬軟自在なのがphpのメリットやろ。
軟の部分が凄まじく緩いからこそ(普通にバッチがわりに使うことすらある)phpが今の地位を築いているってのを分かってないね。
0011デフォルトの名無しさん (ワッチョイ 4b8c-nI0F)2016/11/10(木) 13:10:50.59ID:QpYSz0ES0
このページ二つ目のコードがよくわからないです。
breakを使えばwhile(0)まで一気に抜けれるメリットがあるということでしょうか?
また、こういうコードってよく使われるのでしょうか

http://php.net/manual/ja/control-structures.do.while.php
>これは、do-while(0)でコードを括り、 break 文を使用する方法です
0012デフォルトの名無しさん (JP 0H3f-zoBz)2016/11/10(木) 13:53:26.78ID:X35QhmbOH
>>11
> このページ二つ目のコードがよくわからないです。
> breakを使えばwhile(0)まで一気に抜けれるメリットがあるということでしょうか?
そう
gotoと同じ事をgotoなしで行うコード

> また、こういうコードってよく使われるのでしょうか
あまり使われないし、推奨しない
0013デフォルトの名無しさん (ワッチョイ 4b8c-S1RZ)2016/11/10(木) 14:05:43.43ID:QpYSz0ES0
>>12
ありがとうございます、スッキリしました。
0014デフォルトの名無しさん (ワッチョイ 6f2c-teht)2016/11/10(木) 20:21:03.95ID:3KPBzQI+0
http://c-faq.com/cpp/multistmt.html
このころの名残ともいえるし、もう忘れていいよ。
0015デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/10(木) 23:56:57.47ID:CNuGQpLn0
>>10
phpが硬とか
それはギャグで言ってるのか?
0016デフォルトの名無しさん (ワッチョイ 9faf-teht)2016/11/11(金) 00:25:51.14ID:pwJDB+I80
facebook以下の環境の人は黙ってて
0017デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/11(金) 00:42:46.45ID:KyGVKs7A0
ゆーてfacebookもphp見限っとるやんw
馬鹿なの茶?
0018デフォルトの名無しさん (JP 0H3f-dJcJ)2016/11/11(金) 15:01:06.45ID:MKI+B8jMH
>>15
phpが硬ではなく、硬でも書けるよ
という意味に取れるけど
0019デフォルトの名無しさん (ワッチョイ 0fcb-9MLS)2016/11/11(金) 17:49:53.88ID:vZyRwsWe0
会話しようとしてないのに声を掛けるのは無駄よ
0020デフォルトの名無しさん (ワッチョイ ef17-PwKp)2016/11/11(金) 21:55:09.98ID:SFB8WYWy0
今からやるならruby →ruby on rails
php → wordpress
php → phpフレームワーク
どれがススメですか
なるべくラクしてwebアプリ作りたいです
0021デフォルトの名無しさん (ワッチョイ 4b8c-MKU2)2016/11/11(金) 22:33:40.35ID:j1QEj/J/0
>>20
webサイトじゃなくてwebアプリ?
アプリに集中するために、とりあえずフレームワーク一切なしで作ってみるのが良いと思う
必要ならwordpressを勉強して組み込む感じ

そもそも論を言うと、今ならunityでスマホアプリ作ったほうが良いと思う
0022デフォルトの名無しさん (ワッチョイ ef17-PwKp)2016/11/12(土) 06:49:41.72ID:GiZMq9/+0
>>21
作りたいアプリは例で言うと「bokete」とかそこらへんのイメージを持ってます。投稿、評価、画像アップロード、コメント、ソーシャルAPI利用、等

「unity」は2D.3Dのゲーム描画に特化したものといった印象がありましたが
一段落目に書いたものでも作れるのでしょうか?
0023デフォルトの名無しさん (ワッチョイ 4b8c-teht)2016/11/12(土) 09:25:52.23ID:yDmFrjlv0
>>22
あーもっとゲームゲームしたものかと思った

それぐらいならwordpressで十分だね
あげた機能なら全てプラグインであると思う
wordpressのテンプレートのいじり方覚えたらすぐに出来ると思うよ
0024デフォルトの名無しさん (ワッチョイ 53d6-U3jc)2016/11/12(土) 10:33:45.41ID:yIPA2Z5G0
>>20
まともなとこに就職したいなら ruby →ruby on rails
手っ取り早くWEB屋に就職したいなら php → wordpress
自分でWEBサービス作りたいなら php → phpフレームワーク
0025デフォルトの名無しさん (ワッチョイ 53d6-U3jc)2016/11/12(土) 10:40:27.24ID:yIPA2Z5G0
WordpressはDBの扱いが絶望的に糞だから自分でWEBサービス作りたいなら絶対に無い。

勿論、Wordpressが提供するDB管理機能を全く利用しない方法もあるが
あのデータはWordpressの機能で、こっちは自前の機能で、となって、
開発が進むともはやWordpressを使っているメリットが何もなくなってくる。
0026デフォルトの名無しさん (ワッチョイ 4b8c-S1RZ)2016/11/12(土) 10:53:33.71ID:yDmFrjlv0
>>25
wordpressからdbをさわるのはやめた方が良いのには同意

サニタイズなどのセキュリティ関連を自動でやってくれるのがメリット。これやりだすとキリないからな
あとはカスタム投稿タイプやカスタム投稿フィールドでなんとでもなる
0027デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/12(土) 10:55:23.88ID:J59czjV40
>>18
phpで硬でも書けるよ

というのがそもそもの勘違いだと気付かない時点で
もうね・・・
0028デフォルトの名無しさん (ワッチョイ 53d6-U3jc)2016/11/12(土) 11:42:33.37ID:yIPA2Z5G0
>>26
>あとはカスタム投稿タイプやカスタム投稿フィールドでなんとでもなる

そいつがクソの元凶。
データ構造見てみればわかるが、RDBのメリットを全部殺している仕様。
そいつをとってくる部分のPHPコードを見れば、何しているかよく分かる。
結果ととして、とにかく遅い、重い。
0029デフォルトの名無しさん (ワッチョイ 53d6-U3jc)2016/11/12(土) 12:22:15.78ID:yIPA2Z5G0
>>27
「硬」ってなに? 定義は?

イメージで語ってたらただの罵り合いにしかならんよ。
0030デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/12(土) 15:03:11.24ID:J59czjV40
ゲリ軟便のプェチプァ〜が「定義は?(キリンッ」だってw



草生えwww
0031デフォルトの名無しさん (ワッチョイ 4b8c-uMcr)2016/11/12(土) 15:55:03.79ID:yDmFrjlv0
>>29
静的型付けってことでは?
phpには微塵もないけど・・・というかイメージでもすごくゆるゆるなイメージだけど・・・
0032デフォルトの名無しさん (ワッチョイ 53d6-U3jc)2016/11/12(土) 15:58:50.47ID:yIPA2Z5G0
>>31
静的型付けが強制されると便利なのかね?
どっちもやったことあるけど、本当にどっちでも構わん。
0033デフォルトの名無しさん (ワッチョイ 4b8c-uMcr)2016/11/12(土) 16:05:38.96ID:yDmFrjlv0
>>32
便利というよりメモリの節約に繋がりパフォーマンスが上がる
メモリ使い放題の最近のPC・サーバー環境だとあんまり意味がない気がする

と、思う
0034デフォルトの名無しさん (ワッチョイ 53d6-U3jc)2016/11/12(土) 16:51:44.17ID:yIPA2Z5G0
では、静的型付けが硬柔に関与するという評価は意味を成さないということで、除外
0035デフォルトの名無しさん (JP 0H3f-dJcJ)2016/11/12(土) 17:51:42.87ID:zZEyLimgH
>>31
そうだと思う、柔軟じゃないってことで硬いwww

個人的には、どっちにもメリットがあるし
PHPでも、一人で書く分には静的なつもりで書くこともあるから(あとメモリ管理とかも自分でやるつもりでw)
ただコンパイラでエラーで弾いてくないってのはあるけどね。
0036デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/12(土) 19:18:11.81ID:J59czjV40
屁チプァは、phpしか知らんからなぁ
0037デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/12(土) 19:18:49.66ID:J59czjV40
便器の中の糞ペチプァ、大海を知らず
0038デフォルトの名無しさん (ワッチョイ 9faf-teht)2016/11/12(土) 19:55:37.33ID:LACcmrk+0
facebookは便器だった?
0039デフォルトの名無しさん (ワッチョイ 23af-Og7/)2016/11/13(日) 02:05:43.31ID:de3BW5yb0
質問です
各要素の先頭に文字を追加するにはどうすれば良いのでしょうか…


array(2) { [0]=> string(1)
0040デフォルトの名無しさん (ワッチョイ 23af-Og7/)2016/11/13(日) 02:06:38.07ID:de3BW5yb0
質問です
各要素の先頭に文字を追加するにはどうすれば良いのでしょうか…


array(2) { [0]=> string(1) "A" [1]=> string(1) "B" }

↓先頭に文字『X』を追加

array(2) { [0]=> string(1) "XA" [1]=> string(1) "XB" }
0041デフォルトの名無しさん (ワッチョイ 4b8c-teht)2016/11/13(日) 09:56:04.83ID:sQEc/rMr0
>>40
$a = array('b','c',0);
foreach( $a as &$key){
$key = 'X'.$key;
}

&$keyと参照で渡してるとこに注意してね
0042デフォルトの名無しさん (ワッチョイ 23af-Og7/)2016/11/13(日) 10:18:03.33ID:de3BW5yb0
>>41
ありがとうございます!
助かりましたm(_ _)m
0043デフォルトの名無しさん (ワッチョイ 53d6-U3jc)2016/11/13(日) 13:13:06.70ID:8X77NbwT0
うーん、このくらいの答えは出してくれると思っていたが…

<?php
function addX($n)
{
return "X{$n}";
}

$a = array(1, 2, "3", 4, "5");
$b = array_map("addX", $a);
print_r($b);
0044デフォルトの名無しさん (ワッチョイ 53d6-U3jc)2016/11/13(日) 13:14:48.64ID:8X77NbwT0
unset($key);

もしてないから、罠張ってるし…
0045デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/13(日) 13:33:33.43ID:uHlHhgAc0
P ピュッと出る H 糞 P パー じゃ。しゃーない。
0046デフォルトの名無しさん (ワッチョイ 4b8c-nI0F)2016/11/13(日) 15:47:42.25ID:sQEc/rMr0
デバッグ用の関数って作ってますか?
もしよければどんなものを作っているか教えてください。
0047デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/13(日) 16:21:01.45ID:uHlHhgAc0
vaka_dump(unko)
0048デフォルトの名無しさん (ワッチョイ 4b8c-uvOE)2016/11/13(日) 16:32:13.84ID:sQEc/rMr0
>>47
在日の方ですか?
相変わらず好きなんですね…
0049デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/13(日) 18:07:40.61ID:uHlHhgAc0
>>48
糞転がしのクソパーが何言ってるんだか
未だにprintデバッグをシコシコやってるのなんて
プェチプァ〜だけだぞ
つくずく哀れなゴミだな
0050デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/13(日) 19:23:24.88ID:uHlHhgAc0
スレタイ変えないか?

【PHP】下らねぇペチパーはここで死にやがれ 8死体目【人類最底辺】


立ててきてもいいか?
0051デフォルトの名無しさん (ワッチョイ 93f8-teht)2016/11/13(日) 19:26:03.68ID:fjskhidj0
狂った暇人相手にするなよ
0052デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/13(日) 19:30:41.10ID:uHlHhgAc0
>>51
狂ったペチプァ相手にしない方が大事だとおもw
0053デフォルトの名無しさん (ワッチョイ 6b42-WVKM)2016/11/13(日) 19:38:36.40ID:s20F/plG0
荒らしを相手にする奴もNGになるからそのつもりで
0054デフォルトの名無しさん (ワッチョイ 4b8c-9oz8)2016/11/13(日) 20:03:40.22ID:sQEc/rMr0
荒らしの相手をしてしまい、申し訳ありませんでした。
0055デフォルトの名無しさん (ワッチョイ 9faf-teht)2016/11/13(日) 20:35:01.03ID:iRCzezTE0
facebook作った言語に嫉妬するのも無理はない
0056デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/13(日) 22:55:01.74ID:uHlHhgAc0
>>55
むしろfacebookこそ最大のphpアンチなんだけどな

そんなこともわからず
「facebookが使ってる(た)phpを使ってる俺はfacebook並に価値がある」
なんて本気で信じてるプェチプァ〜


もはや狂気だね
0057デフォルトの名無しさん (ワッチョイ 9faf-teht)2016/11/14(月) 00:24:54.92ID:M6em6aiU0
今はphp7の時代なんで
0058デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/14(月) 00:38:06.38ID:6SFC1aBy0
今さらスカラー型の導入で大喜びしてるのも失笑モンだけどな・・・
迷走もいいとこだわ
0059デフォルトの名無しさん (ワッチョイ 6f2c-teht)2016/11/14(月) 01:34:41.88ID:1UFbZdny0
苦笑ではなく?
0060デフォルトの名無しさん (ワッチョイ 9faf-teht)2016/11/14(月) 11:46:21.61ID:M6em6aiU0
php7からはfacebook並の設計ができてしまう
できないのは言語のせいではなく己の能力の問題
0061デフォルトの名無しさん (ワッチョイ 4b8c-nI0F)2016/11/14(月) 13:01:46.56ID:xYG8vb1X0
phpのバージョンって上げることありますか?
wordpressは上げないと不便なのでちょくちょくバージョンアップしています
古いサイトのphpは未だに5.2のまんまです
0062デフォルトの名無しさん (ササクッテロリ Sp2f-sKfk)2016/11/14(月) 15:02:10.18ID:HjuQK1ynp
5.2は流石に不便過ぎるな。
0063デフォルトの名無しさん (ワッチョイ 4b8c-uvOE)2016/11/14(月) 15:12:12.35ID:xYG8vb1X0
>>62
ありがとうございます。結構変わってるんですね。
サイトの更新があればphpもバージョンアップしたいと思います。
0064デフォルトの名無しさん (ワッチョイ 9faf-teht)2016/11/14(月) 17:04:12.42ID:M6em6aiU0
5.2ってサポート切れてるから 5.6 かwordpressが爆速になる 7 にしないと
0065デフォルトの名無しさん (ワッチョイ 4b8c-54pa)2016/11/14(月) 17:34:59.64ID:xYG8vb1X0
smartyって使ったほうが良いんでしょうか?
それとも過去の遺物?
0066デフォルトの名無しさん (アウアウカー Saaf-9MLS)2016/11/14(月) 19:28:01.33ID:Kcn0MlOda
Smartyそのものは過去の遺物
新規に採用するようなものではない
0067デフォルトの名無しさん (ワッチョイ 4b8c-54pa)2016/11/14(月) 19:37:01.77ID:xYG8vb1X0
>>66
ありがとうございます。
0068デフォルトの名無しさん (ワッチョイ 378b-PwKp)2016/11/14(月) 19:48:58.15ID:1K5xVYwe0
勉強始めてそろそろ一年なんですが、
JAVAに手を出そうか迷っています。
このままPHPだけでいくべきですか?
0069デフォルトの名無しさん (アウアウカー Saaf-9MLS)2016/11/14(月) 20:04:00.16ID:Kcn0MlOda
>>68
好きにすれば

Javaのほうが汎用的かつ高速なのは疑いの余地はない
手を広げて二兎を追う状況になっても大丈夫な自信があれば
0070デフォルトの名無しさん (ワッチョイ 6b42-WVKM)2016/11/14(月) 20:27:05.55ID:Hc1MVstx0
>>68
色々触れてみると、ものの考え方感じ方が広がる
Javaは経験しておいた方がいい
0071デフォルトの名無しさん (ワッチョイ b35b-OZ/y)2016/11/14(月) 20:55:09.21ID:fvXjtZa20
ねぇねぇ、久しぶりにPHP触ることになったんだけど。

キューイング系つかってCSVの構築とあとは普通のユーザ管理がある程度のWebサイトを作るとして、今のおすすめ的なPHPフレームワークは何ですかね?
色々ググってみた結果、Laravelに落ち着きそうなんだけが、日本だとCakePHPもそこそこ人気あるみたいで。

プロトタイプは俺一人で良いのだけど、次期は2−3人入ってもらう予定なので、できればそこそこユーザの多いフレームワークを先方が希望らしいので教えてくださいな。

上にも書いた通りCSVの構築とユーザ管理(メールによるログイン・パスワード忘れ対応)くらいの小さなモノです。
0072デフォルトの名無しさん (ワッチョイ 53d6-jPSF)2016/11/14(月) 22:13:20.30ID:h95aIIZL0
CSV構築って何?
0073デフォルトの名無しさん (ワッチョイ b35b-OZ/y)2016/11/14(月) 22:39:13.93ID:fvXjtZa20
ちょっと端折りすぎたようでごめん。CSV構築ってのは、DBから少し多めのデータを抜き出してCSVファイルを毎月構築するものです。
0074デフォルトの名無しさん (ワッチョイ fb16-teht)2016/11/14(月) 23:20:28.54ID:fBkpBr4q0
>>73
そんな程度のものにフレームワークなんているの?
100行かかんないだろ
0075デフォルトの名無しさん (ワッチョイ b35b-OZ/y)2016/11/14(月) 23:31:38.72ID:fvXjtZa20
>>74
現時点ではナシでもいいんですが、まだこのあと開発が残ってるんですよ。
クレカ課金があったり、月ごとなのが週ごとになったり、対戦成績を載せたり、スケジュール管理をしたりと。
0076デフォルトの名無しさん (ワッチョイ 6f2c-teht)2016/11/14(月) 23:47:54.20ID:1UFbZdny0
どれがいいって話になると人によるので、Laravel選んでも特に困らないよという返事にしとく
0077デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/15(火) 00:05:34.14ID:klJkxJ4l0
その要件でPHPて正気とは思えないんだけど
まぁ技術レベルが低くてPHPしか書けないとかそういう理由ならしょうがないのかね
かわいそうに
0078デフォルトの名無しさん (ワッチョイ 53d6-jPSF)2016/11/15(火) 00:09:18.75ID:3F2UTwHz0
上級プログラマの>>77様が、最適な言語を教えてくれるってさ。
期待しようぜ。
0079デフォルトの名無しさん (ワッチョイ b35b-OZ/y)2016/11/15(火) 00:35:59.41ID:4MZvDNf00
>>76
ありがとう。
色々見てて大丈夫そうなのでLaravelにしときます。

>>77
いつもならRailsかgoのechoかginでやるんですけどね。お客さんの意向でPHPなので。
0080デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/15(火) 01:23:07.40ID:klJkxJ4l0
>>79
こういう>>78ガキみたいでおまけに頭も悪くて技術レベルも低い、公害案件の処理なんだろな
かわいそうに
がんばってな
0081デフォルトの名無しさん (JP 0H3f-dJcJ)2016/11/15(火) 11:07:29.36ID:3uVE+nIkH
>>77
どんな要件がダメなの?
気になるから教えて
0082デフォルトの名無しさん (JP 0H3f-+5S2)2016/11/15(火) 11:13:27.66ID:8fo209efH
>>81
>>75程度の要件ならPHPでも十分だと思う
0083デフォルトの名無しさん (ワッチョイ 5356-MJQ8)2016/11/15(火) 11:34:10.16ID:HQWsQ9u90
むしろこの程度の案件だからこそPHPで「も」いいやというのがまともな感覚かと
後は誰が保守をするのかとか保守にかかるコストとか新人入れるなら学習コストとかetc
諸々から判断すればいいだけの事

いつまで経っても土方PGな人は
そういう総合的な判断ができないからいつまで経ってもそういう立場なわけって事が
こういうやり取りを見てもよく分かると思う

木を見て森を見ず
ってやつだな
0084デフォルトの名無しさん (ワッチョイ 4b8c-uMcr)2016/11/15(火) 11:36:07.54ID:xn4k1ngQ0
wordpressのプラグインで全部済む。
学習コストはほぼゼロだ
0085デフォルトの名無しさん (ワッチョイ 6b42-WVKM)2016/11/15(火) 11:56:59.53ID:k8jObWYJ0
>>75
今、複数テナント入っているモールシステム作って運用しているけど
テナント毎の日ごと、月ごとの売上げ集計(CSV出力も含む)
カート式による購入とクレカ決済・プリペイド扱い、代引き扱い、
月次会員の自動課金処理、アフィリエイト機能があるシステム、PHPで作ったよ

スケジュール管理が何を指すのかはよく分からないが
0086デフォルトの名無しさん (ワッチョイ 9faf-teht)2016/11/15(火) 11:58:04.34ID:B219Se7j0
facebookがphpで作られたんだ
なんだって作れるさ
0087デフォルトの名無しさん (ワッチョイ 53d6-EKpQ)2016/11/15(火) 12:23:14.52ID:3F2UTwHz0
で、上級プログラマの>>77はどんな言語が最適だと思うの?
遁走したの?
0088デフォルトの名無しさん (ワッチョイ 5356-MJQ8)2016/11/15(火) 12:46:18.07ID:HQWsQ9u90
>>85
一昔前の出会い系なんて月の売上億単位が当たり前だったけど
当時はASPやperlやPHP4で組んでたよ

クライアントにとってはどの言語で書かれたかなんてどうでもいい事だしね
(クライアント自身が保守をする場合は例外として)
求めている仕様が使いやすく安定して運用できればいいんだよ

言語やフレームワークの仕様について大層なごたくを述べてる人達
今までどれだけの実績上げてどれだけ儲けてきたんだろうなぁ…
0089デフォルトの名無しさん (ワッチョイ 53d6-EKpQ)2016/11/15(火) 13:03:35.63ID:3F2UTwHz0
>言語やフレームワークの仕様について大層なごたくを述べてる人達

>>77の悪口はそれぐらいにしといた方がいいよ。上級プログラマ様だから。
0090デフォルトの名無しさん (オイコラミネオ MMdf-wOPQ)2016/11/15(火) 14:52:13.32ID:PI9boQlCM
ASPって?
0091デフォルトの名無しさん (JP 0H6f-2n2A)2016/11/15(火) 17:06:06.59ID:4QSE1fRAH
たぶんマイクロソフトの Active Server Pages
0092デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/15(火) 22:59:29.32ID:klJkxJ4l0
その”当時”の負債をあの頃は良かった、総合的判断キリッ
とか言って未だにPHPにこだわってる老害

鼻で笑っちゃうよね
0093デフォルトの名無しさん (ワッチョイ 4b8c-9oz8)2016/11/15(火) 23:32:01.77ID:xn4k1ngQ0
private static なメンバをマジックメソッドの__get()で取り出そうとしたのですが、うまくいきませんでした
何か間違っているでしょうか?

class db {
// DB接続
private static $usr = "yamada";
public function __get($name) {
return self::$name;
}
}
echo db::$usr; //ここでエラー Fatal error: Cannot access private property db::
0094デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/16(水) 00:03:00.66ID:SCyhPTB30
支離滅裂な文法、支離滅裂な評価式、支離滅裂な標準関数
そして、初心者でも書ける!という大嘘のもと寄せ集めたゴミがひり出した
糞、糞、糞の山

PHPの保守案件だけは二度と関わりたくない
新規でPHP選択する馬鹿とも関わりたくない

早く死ねよ糞言語
0095デフォルトの名無しさん (ワッチョイ 6b42-WVKM)2016/11/16(水) 00:08:01.92ID:+mSoNAtY0
ここにいると関わることになるよ、構って君
0096デフォルトの名無しさん (ブーイモ MM1f-9MLS)2016/11/16(水) 09:36:33.90ID:Lu/Sj8/2M
新規だったらfw選び放題なんだし寧ろphpが選択肢になるだろ。laravelとかクッソ楽やぞ。
0097デフォルトの名無しさん (ワッチョイ 4b8c-S1RZ)2016/11/16(水) 10:05:35.38ID:Dv5FSsuo0
ファイルの分け方で質問です
ヘッダとメイン部分で分ける時、どこで切り分けますか?

<body>
<header>
</header>
ここ?
<article>
ここ?
</article>
</body>
0098デフォルトの名無しさん (ワッチョイ 6b42-WVKM)2016/11/16(水) 10:46:39.76ID:+mSoNAtY0
なんで<header>が<body>の要素になっているのか、分からない
0099デフォルトの名無しさん (ワッチョイ 5356-MJQ8)2016/11/16(水) 11:46:27.85ID:hBvYZuGZ0
>>92
PHPにこだわってるなんてどこにも書いてないし、
当時ASPやperlやPHP4を選択したのは、
その時のタイミングや環境でそれがベストであると判断されたからであって、
今でもそれがベストだなんてどこにも書いてない

クライアントにとっては糞どうでもいい事にこだわった挙句
仕様も納期もロクに守れない糞PGなんてこれまで嫌って程見てきたが、
お前みたいなのは物事の優先順位がまるで分かってないし頭も固すぎるんだよ

そんなのだからいつまで経っても他人にこき使われる土方PGで終わるんだよと
0100デフォルトの名無しさん (オイコラミネオ MMdf-9MLS)2016/11/16(水) 11:54:41.99ID:/8z1qpVVM
他人の組んだシステムの保守なんかやってる雇われ底辺層の人間がPHPが糞だ糞だと言ってるのは滑稽な話だよなあ
お前そんな仕事でしかお金もらえないのかと少し同情はするけど
0101デフォルトの名無しさん (ワッチョイ 5356-MJQ8)2016/11/16(水) 12:01:31.69ID:hBvYZuGZ0
保守といっても高度な技能を持ってる人にしかできない案系もあるけど
PHPの案件って大半はそうではないよね

PHPに文句言ってる暇があったら、そんな仕事しか任されない自分を見直すべきじゃないのかね
あなた他に何の仕事できるの?
自分で仕事取ってきて自分でプロジェクト進めたりできるの?
0102デフォルトの名無しさん (ワッチョイ d385-RDQU)2016/11/16(水) 20:58:26.65ID:0r8HM5W+0
世間一般的にPHP案件は糞って話でしょ?
PHPをまともに仕立てる努力を、他の方向に使えばいいのにと常々思うわ
PHPでEnumの自作しちゃうヤツとか大草原不可避
0103デフォルトの名無しさん (ワッチョイ 6d85-Sd4e)2016/11/17(木) 00:38:15.62ID:XujYwt6V0
リファレンスなしじゃまともに書けない糞ゴミ言語

ありがたがってるのはPHPしか書けない糞ゴミ土方のペチプァだけ

死んだ方がいい
0104デフォルトの名無しさん (ワッチョイ f2af-XpIe)2016/11/17(木) 06:54:46.67ID:cCnEQpg60
facebookがなんだって?
0105デフォルトの名無しさん (ワッチョイ 6d85-Sd4e)2016/11/17(木) 07:10:59.96ID:XujYwt6V0
便器の中の糞ペチプァ
大海を知らず
0106デフォルトの名無しさん (ワッチョイ 3316-XpIe)2016/11/17(木) 09:49:08.01ID:4ircgs/a0
>>97
PHPの前にHTMLの勉強しようね
0107デフォルトの名無しさん (ワッチョイ 9e17-dXbs)2016/11/17(木) 16:35:51.69ID:6iCG+1Nj0
html5の話じゃない?
0108デフォルトの名無しさん (JP 0H9a-2Ppy)2016/11/17(木) 16:57:48.29ID:SIbcJcrOH
フロントエンドエンジニアじゃなくても、HTML5, CSS3の基本は押さえておきたいよね
0109デフォルトの名無しさん (ワッチョイ 6d85-Sd4e)2016/11/17(木) 21:00:45.64ID:XujYwt6V0
ウンパー(頭がウンコでくるくるペチパー)は、htmlspecialcharsの勉強でもしてろよw
0110デフォルトの名無しさん (ワッチョイ f2af-XpIe)2016/11/19(土) 01:15:54.45ID:67PJcS6R0
phpにはテンプレートがあってだな
0111デフォルトの名無しさん (ワッチョイ ff8c-FGJm)2016/11/20(日) 23:36:06.68ID:XBfWdaaF0
echo explode("/", $foo)[1];
こういう書き方ってできないのでしょうか?
0112デフォルトの名無しさん (ワッチョイ 0dd6-8L7G)2016/11/20(日) 23:44:23.29ID:TbPre/tj0
>>111
PHP 5.4以降で出来るようになったね。
0113デフォルトの名無しさん (ワッチョイ ff8c-8NYh)2016/11/21(月) 00:13:19.21ID:YLgSo5hw0
>>112
ありがとうございます
できそうで出来ないと思ったら、サーバーのphpバージョンが古いことが問題でした
0114デフォルトの名無しさん (ワッチョイ 6d85-Sd4e)2016/11/21(月) 00:44:30.66ID:+hdtxnKs0
ただでさえゴミな標準関数がゴミみたいな仕様変更でさらにゴミに

ほんとPHPは地獄だぜ!フゥーハハー
0115デフォルトの名無しさん (ササクッテロレ Spa9-EfL1)2016/11/21(月) 21:37:25.45ID:X/7/aPy3p
何にもわかって無い的外れのアホな煽りでバカをさらけ出さなくてもいいのに。
0116デフォルトの名無しさん (ワッチョイ 6d85-uBSt)2016/11/22(火) 08:28:35.62ID:b4/cBMIz0
わかってたらそもそもphpなんて使わんしな
0117デフォルトの名無しさん (ワッチョイ 0dd6-myIb)2016/11/22(火) 10:24:13.59ID:wk7xl0OZ0
じゃあなんでおまえはここにいるんだ? 分かってない自慢か?
0118デフォルトの名無しさん (ワッチョイ 0d56-DGos)2016/11/22(火) 11:43:01.79ID:as71JNCU0
この業界って実績と信頼があってなんぼの世界だけど
毎日嬉しそうにペチパーペチパー言ってるお猿さんは
どの程度の実績があるのか知りたいもんだね

俺は技術はそう大した事ないけど実績ならそこらの人間には負けない自信あるけど
0119デフォルトの名無しさん (ワッチョイ ff8c-V26C)2016/11/22(火) 11:53:18.50ID:/nq338Jo0
正規表現で
/ (?P<foo>)/
という例を見かけたのですが、このPってなんでしょうか?
0120デフォルトの名無しさん (ワッチョイ 0d56-DGos)2016/11/22(火) 12:11:54.05ID:as71JNCU0
>>119
正規表現の名前付きキャプチャってやつ
( )でキャプチャした内容って通常は0,1,2で参照するけど
これを使うと名前を付ける事ができる

Pythonでは結構おなじみだけどもちろんPHPでも使える
0121デフォルトの名無しさん (ワッチョイ ff8c-oE7B)2016/11/22(火) 12:17:40.16ID:/nq338Jo0
>>120
これは便利ですね!ありがとうございます
0122デフォルトの名無しさん (ワッチョイ 0d56-DGos)2016/11/22(火) 12:20:53.32ID:as71JNCU0
>>121
書き忘れたけど「P」は省略してもOK
最近の正規表現エンジンでは省略して書く事の方が多いのかもしれないけど
昔はPを書かないと駄目だった

perlやrubyでも使えるけど正規表現エンジンのバージョンに依存するから注意
0123デフォルトの名無しさん (ワッチョイ ff8c-oE7B)2016/11/22(火) 13:02:02.63ID:/nq338Jo0
>>122
ありがとうございます。古い書き方だったんですね
0124デフォルトの名無しさん (ワッチョイ ff8c-cP7M)2016/11/22(火) 13:13:18.42ID:/nq338Jo0
PDO,SQLで質問です
実際にどんなクエリが発行されているかを確認する方法ってありますか?
以下のsqlがうまく動かないのですが、
$st->queryStringを見ても
'SELECT * FROM table WHERE word LIKE :word '
としか入っていなくて、原因の調査に手間取っています

//あ が入っているものを検索したい
$word='あ';
$st = $pdo->prepare ( 'SELECT * FROM table WHERE word LIKE :word ' );
$st->bindvalue ( ':word', '%' . $word . '%', PDO::PARAM_STR );
$st->execute ();
$result = $st->fetchall (); //結果 0件

MYSQLで直接以下を発行するとうまく検索できます
SELECT * FROM table WHERE word LIKE '%あ%'

お助け下さい
0125デフォルトの名無しさん (ワッチョイ 0d56-DGos)2016/11/22(火) 14:24:40.46ID:as71JNCU0
>>124
勘違いしてるみたいだけど
プリペアドクエリは「○○と書くと××という書き方に変換してくれるという仕組みではない」よ
だから

> $st->queryStringを見ても
> 'SELECT * FROM table WHERE word LIKE :word '
> としか入っていなく
というのは当たり前

予期せぬ結果が返ってきた時は「とりあえず」例外処理してgetMessage()でも見ればいい
http://php.net/manual/ja/class.pdoexception.php

ただ、ソースをパッとみた感じ文法エラーとかは無い感じなので
勘だけどたぶん文字コードの問題
MySQLが認識している文字コードとPHPから投げてる文字コードとが一致してないんじゃない?
0126デフォルトの名無しさん (ワイモマー MM85-1ibN)2016/11/22(火) 14:30:34.03ID:IDHLlL/iM
>>124
とりあえずパラメータバインド後のSQLが見られるかといえば, 見られない。
プリペアドステートメントはプレイスホルダを含むSQLがDB側で構文解析, 実行計画済みの状態となってからプレイスホルダに値を入れて実行される。
エミュレーションの場合はその限りではないけども, まぁプリペアドステートメントでは「パラメータバインド後のSQL」は存在しないということで

因みにそれ, プレイスホルダ無しの場合やqueryで直接投げた場合には期待通りの結果になるの?
0127デフォルトの名無しさん (ワッチョイ 0d56-DGos)2016/11/22(火) 14:33:02.76ID:as71JNCU0
>>124
あーひょっとしてこれを知りたいってことかな?

$st->execute ();
// $result = $st->fetchall ();
$st->debugDumpParams();
0128デフォルトの名無しさん (ワッチョイ ff8c-8NYh)2016/11/22(火) 15:38:30.34ID:/nq338Jo0
>>125,126
ありがとうございます、文字コードが原因でした
>>127
それも知りたかった事です!ありがとうございました
0129デフォルトの名無しさん (JP 0Hea-Th+s)2016/11/22(火) 18:52:34.04ID:gGTiwxlIH
MySQLの管理者権限を持ってるなら
スロークエリログの設定して、long_query_timeを0にすれば・・全てのクエリーが出力されるようになったはず
もちろん本番環境で下手にやると問題になるので注意だけどww
0130デフォルトの名無しさん (アウアウカー Sa41-1ibN)2016/11/22(火) 19:05:54.30ID:bB30Q14Ca
voteの結果はギリギリだけど何か7.2で実装予定らしい
ttps://wiki.php.net/rfc/debugging_pdo_prepared_statement_emulation
0131デフォルトの名無しさん (ワッチョイ 0d56-DGos)2016/11/22(火) 19:44:48.31ID:as71JNCU0
ざっと読んだけどこれは>>126も書いてるPDOがプリペアドステートメントを
エミュレーションモードで処理してる時の話だよね
MySQLなんかだと
PDO::setAttribute(ATTR_EMULATE_PREPARES, false)
で運用してる人の方が多いんじゃないかな?

最新の情報には疎いから嘘を書いてたらすまない
訂正してもらえると助かる
0132デフォルトの名無しさん (ワッチョイ 0dd6-8L7G)2016/11/22(火) 20:02:35.86ID:wk7xl0OZ0
>>131であってるはず。
0133デフォルトの名無しさん (ワッチョイ 15c9-ne1E)2016/11/22(火) 20:10:12.59ID:ccoK8ySA0
【OS名】windows7
【PHPのバージョン】5.3.8
【連携ソフトウェア】XAMPP1.77(apacheは2.22.1) localhost環境です。
【質問内容】
Deprecated: Assigning the return value of new by reference is deprecated
の表示を避けるためにエラー表示をphpファイルで変更したいのですが、うまくいきません。
ファイルの最初に
<?php
ini_set('display_errors', 0);
error_reporting(0);
中略
$hoge =& new $fuga();
?>
としてもエラーが表示されます。
※php.iniでerror_reporting = 0にすれば表示しなくなります。

公開用に借りているサーバ(php5.3.x)では
ini_set('display_errors', 1); //多分0でも問題ないと思います。
error_reporting(E_ALL & ~E_DEPRECATED & ~E_NOTICE);
で件のエラー表示はされません。(この設定も試しました)

どこを確認・修正すればよいのかどなたか教えてください。お願いします。
0134デフォルトの名無しさん (ワイモマー MM85-1ibN)2016/11/22(火) 20:43:38.25ID:mxQI2A9MM
>>133
php.iniのerror_reportingはE_ALLのままでlog_errorsとerror_logを設定
レンタルサーバ側は.htaccessで同様に設定出来るんじゃないかね(production環境ならE_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICTでいい)
Deprecatedを消すためにコードを直すんじゃなくエラーを消すとか本末転倒
0135デフォルトの名無しさん (ワッチョイ 5e2c-XpIe)2016/11/22(火) 21:11:04.68ID:zY6SxlaL0
取り急ぎエラーを消したいんじゃないですかね。
んで、追ってコード対応と。
0136133 (ワッチョイ 15c9-ne1E)2016/11/23(水) 10:16:55.53ID:+HCTRHy30
>>134
質問の仕方が悪かったでしょうか。
ini_set('display_errors', 0);
error_reporting(0);
が効かないのはなぜでしょうか?
効かす(効かせない)設定とかあるのでしょうか?というのが主旨です。

※公開サーバは効いています。
>>135
その通りです。
ローカルの制作環境がうまく動作してないのがどうも嫌で。
0137デフォルトの名無しさん (ワッチョイ 6d85-uBSt)2016/11/23(水) 11:58:07.71ID:Zyc7G/7g0
制作環境www
0138デフォルトの名無しさん (JP 0Hea-Th+s)2016/11/23(水) 13:47:17.85ID:r5WCgEtQH
自分のPCの環境ってことなら、自由に設定変更できるだろうし
設定ファイル直した方が早いかも?
Windows手元にないのでわからないが、phpinfo()でどのファイルを参照してるか出るはず
0139デフォルトの名無しさん (ワッチョイ 15c9-ne1E)2016/11/23(水) 14:00:52.06ID:+HCTRHy30
>>138
返信ありがとうございます。php.iniを変更すればエラー表示が変更されます。
確認済です。そうではなくて、
ini_set('display_errors', 0);
error_reporting(0);
が効かないのはなぜでしょうか?
効かす(効かせない)設定とかあるのでしょうか?
というところが知りたいのです。
制作と本番と理由がわからず違う動作をしているのが嫌なものですから。
0140デフォルトの名無しさん (ワッチョイ f6cb-tQqt)2016/11/23(水) 14:27:38.81ID:x5VxXmbk0
>>139
> 効かす(効かせない)設定とかあるのでしょうか?
まぁそりゃあるけども

> 制作と本番と理由がわからず
お前さんの環境がどうなってるかは知る由もないんでな
とりあえずini_setの成功確認やらその後にini_getで値セットを確認とかそのぐらいはやってるのか?
0141デフォルトの名無しさん (ワッチョイ 6d85-uBSt)2016/11/23(水) 15:53:55.45ID:Zyc7G/7g0
制作環境なんて呼んでるトーシロがそんなの知ってるわけねえだろ
大人しく外注丸投げしとけゴミw
0142デフォルトの名無しさん (ワッチョイ 15c9-ne1E)2016/11/23(水) 16:02:47.52ID:+HCTRHy30
>>140
ini_set('display_errors', 0);error_reporting(0);で
ini_setは1を返します。ini_getで、display_errors、error_reportingともに0を返します。
ini_getは問題発生行の前でも後でも0です。しかしエラーが表示されています。
さて、どうかひとつあなたがご存知の設定を教えてもらえませんか?
0143デフォルトの名無しさん (ワッチョイ 6d85-uBSt)2016/11/23(水) 16:19:26.80ID:Zyc7G/7g0
さて、どうかひとつwwwwwwwwwwwwwwwwwwwww
0144デフォルトの名無しさん (ワッチョイ f6cb-+6wY)2016/11/23(水) 18:43:39.16ID:x5VxXmbk0
当該エラーがコンパイル時エラーだからスクリプト中でini_setやerror_reportingを設定しても抑制出来ないか
レンタルサーバ側でその設定をしない場合はDeprecatedは表示されてるのか?
0145デフォルトの名無しさん (ワッチョイ 15c9-ne1E)2016/11/23(水) 19:17:52.34ID:+HCTRHy30
>>144
アドバイスありがとうございます。
結論からいうと、サーバのerror_reporting設定が変更されたようでDeprecated表示がされませんでした。
以前は表示されたため、error_reporting(E_ALL & ~E_DEPRECATED & ~E_NOTICE)の設定で避けたのです。
コンパイル時エラーということですが、$a =& new class();といった機能はしており
その後のini_getも含めページは最後まで表示されます。
動作は問題ありません。旧cakeやpearとかphp5.3利用した場合、error_reporting()で応急対処するのは定番のようなのですが、
なぜローカルのxampp環境では通用しないのか見当はつきませんでしょうか?
以前、xampp1.8(php5.5)の環境だったときは抑制できていたのですが、本番と同じ5.3にしたらこの現象が発生しました。
ちょっと試したいのですが、致命傷でないE_NOTICEにひっかかるコードを例示できますか?
0146デフォルトの名無しさん (ササクッテロラ Spe7-3zn4)2016/11/25(金) 11:57:29.27ID:jtQtk7Typ
馬鹿って、自分の立ち位置と使うべき言葉の関係を理解出来ないから相手にされないんだよな。
0147デフォルトの名無しさん (ワッチョイ 138c-YSSY)2016/11/25(金) 21:31:21.31ID:am9ZDc9v0
リファレンスってC言語で言う参照のことですか?
0148片山博文MZ ◆T6xkBnTXz7B0 (ガラプー KKb7-R9Gf)2016/11/25(金) 21:33:32.52ID:puIxfyJVK
CじゃなくてC++だね
0149デフォルトの名無しさん (ワッチョイ 138c-BwdM)2016/11/25(金) 22:17:11.22ID:am9ZDc9v0
ありがとうございます
0150デフォルトの名無しさん (ワッチョイ 138c-BwdM)2016/11/25(金) 22:29:05.06ID:am9ZDc9v0
例外処理でいくつか質問です
ErrorException
Exception
の違いについてですが

基本的にはException を使い、severity(深刻度)などのプロパティを決めたい場合はErrorExceptionを使う、
という認識で良いでしょうか?

Exception
http://php.net/manual/ja/class.exception.php
ErrorException
http://php.net/manual/ja/class.errorexception.php

またcatchでは以下のように基底クラスのExceptionクラスで受けたほうが良いのでしょうか?
catch(Exception $e)

以下ではエラーになります
try {
throw new Exception ('throw new Exception ');
} catch(ErrorException $e) {
echo $e->getMessage().'<br>';
}

もう一つ、php7ではErrorクラスとExceptionクラスを両方catchするために
Throwableで指定した方がいいのでしょうか?
catch(Throwable $e)
0151デフォルトの名無しさん (ワッチョイ 6f2c-lM3r)2016/11/26(土) 05:00:37.53ID:l19dqbE50
何のためにキャッチするのかって話
0152デフォルトの名無しさん (ワッチョイ 0bd6-rApL)2016/11/26(土) 11:00:09.75ID:zRxKnjZm0
PHP5.6までのケースで説明すると、PHPのエラーは元々例外ではないので、
http://php.net/manual/ja/class.errorexception.php
の「例」のようにexception_error_handler()を設定して例外に変換することで、エラーハンドリングを行いやすくしていた。

この場合の変換に用いられるのがErrorException。

つまりErrorExceptionは、Error、WarningやNoticeといった、プログラムの実行に関する例外として投げるべきもので、
端的にいうとデバッグ用として用いられ、アプリケーション特有の例外とは分けて考える。

例)
try {
 if($value[0] > 5){
  throw new MyException("値が許容値を超えています");
 }
} catch(MyException $ex){
 // 与えられた値が正しくない場合の処理。アプリケーション特有の例外。プログラムは正しく動作している
 echo $ex->getMessage();
} catch(ErrorException $ex){
 // プログラム実行エラー
 // 例えば$valueがarrayでなかった場合Noticeが発生し、これがErrorExceptionに変換されて投げられてくる
 // これはシステムの不具合であり、そこにバグがあることがわかる。
 // この例外のエラーメッセージはシステムのバグの実態なので、ユーザーに知らせるべきではない
 echo "システムエラーです";
} catch(Exception $ex){
 // 予期しない例外。ここで例外がキャッチされた場合も、やはりバグがあることがわかる。
 // この例外のエラーメッセージはシステムのバグの実態なので、ユーザーに知らせるべきではない
 echo "システムエラーです";
}
0153デフォルトの名無しさん (ワッチョイ 138c-4BG+)2016/11/26(土) 11:56:58.06ID:pWqEBz120
>>152
そういう風に使うものだったんですね。
よくわかりました、ありがとうございました
0154デフォルトの名無しさん (ワッチョイ 8b85-S5sA)2016/11/26(土) 12:20:35.58ID:ooyaFqF30
phpで例外設計とか臍茶ですわ
0155デフォルトの名無しさん (ワッチョイ 0bd6-rApL)2016/11/26(土) 12:24:34.56ID:zRxKnjZm0
×「例」のようにexception_error_handler()を設定して例外に変換することで

正しくは、
○set_error_handler()を設定して例外に変換することで
0156デフォルトの名無しさん (ワッチョイ 8b85-S5sA)2016/11/26(土) 12:26:42.24ID:ooyaFqF30
タイポもマトモに直せない池沼プェチプァ〜
哀れな言語ですこと
0157デフォルトの名無しさん (ワッチョイ 138c-4BG+)2016/11/26(土) 13:07:28.70ID:pWqEBz120
>>154
参考にしたいのでお聞きしたいのですが、例外設計に優れてる言語ってなんでしょうか?
0158デフォルトの名無しさん (ワッチョイ b730-lM3r)2016/11/26(土) 14:35:52.46ID:cFmpK3Dq0
その他の例外を一括でcatchするのが楽だといいなー
0159デフォルトの名無しさん (ワッチョイ 277b-I39F)2016/11/26(土) 14:41:18.13ID:mx1WdaLu0
Java, C# でも、アプリでキャッチして、アプリが処理できるものは、
Exceptionの派生クラスを、自分で定義する

Errorは、アプリ側では、どうにもならないもの。
キャッチしても、アプリ側で回復不能な、実行環境のエラーだから、キャッチしない
0160デフォルトの名無しさん (ワッチョイ 0bd6-rApL)2016/11/26(土) 15:13:14.88ID:zRxKnjZm0
>キャッチしても、アプリ側で回復不能な、実行環境のエラーだから、キャッチしない

は?
0161デフォルトの名無しさん (ワッチョイ 2bc9-lP3M)2016/11/26(土) 15:23:28.21ID:M9z8QwC90
>>146
相手にされないというか、ここの人たちは知らないのに解決しようとしている姿勢はよいよね。
でも的はずれ。検索してわかることばかり。シンプルに聞いても変化球しかなげられない。
>>140 結局、知らないんだよね。見透かされちゃうからそういう物言いをしたのだけれど。
環境なぞ、最初の質問で当りをつけられなきゃどうしようもないよ。

>>160
アプリがハングするようなものはキャッチできないってことすら逐次いわなわからんの?

ところで制作環境って何かおかしい?いやこれはマジで。
0162デフォルトの名無しさん (ワッチョイ 8b85-S5sA)2016/11/26(土) 15:26:57.22ID:ooyaFqF30
>>161
いいから早くphpでウンコの制作でもしてこいよ無能w
0163デフォルトの名無しさん (ワッチョイ 138c-e4bX)2016/11/26(土) 15:31:52.87ID:pWqEBz120
>>162
>>157をお願いします
0164161 (ワッチョイ 2bc9-lP3M)2016/11/26(土) 15:36:29.62ID:M9z8QwC90
>>160
ごめん、これはちょっと言い過ぎた。反省する。
>>163
過去発言を見ても、相手にしないほうがいいですよ。
現実世界でいろいろと溜まることがあるんだと思います。
0165デフォルトの名無しさん (ワッチョイ 0bd6-rApL)2016/11/26(土) 15:46:32.01ID:zRxKnjZm0
>アプリがハングするようなものはキャッチできないってことすら逐次いわなわからんの?

なにいってんのこいつ?
それがなんで、キャッチできるものもしない理由になるんだよ、ノータリン。


おいID:ooyaFqF30、
このバカ>>159 >>161は罵ってもいいぞ。お前に任せる。
0166デフォルトの名無しさん (ワッチョイ 8b85-S5sA)2016/11/26(土) 17:11:30.18ID:ooyaFqF30
だからペチピーなんて制作してる糞池沼に例外なんて高度なもの扱えるわけないんだよ
return "1"でもやってろゴミw
0167161 (ワッチョイ 2bc9-lP3M)2016/11/26(土) 17:53:20.81ID:M9z8QwC90
>>163
なっ話をすすめる知識がないだろ。
0168デフォルトの名無しさん (ワッチョイ 8b85-S5sA)2016/11/26(土) 18:00:57.30ID:ooyaFqF30
さて、どうかひとつローカルの制作環境で糞ペチプ〜を制作して下されやwwwww
0169デフォルトの名無しさん (ワッチョイ 0bd6-rApL)2016/11/26(土) 18:25:27.56ID:zRxKnjZm0
>>167
おめーは、Exceptionを正しく使う知識がねーだろーが。
0170デフォルトの名無しさん (ワッチョイ 138c-zoOx)2016/11/26(土) 19:19:41.09ID:pWqEBz120
>>164,167
なるほど。
この先いいことがあると良いですね。
0171デフォルトの名無しさん (ワッチョイ 8b85-S5sA)2016/11/26(土) 19:20:05.85ID:ooyaFqF30
ドッカン
          ドッカン
                  ☆ゴガギーン
        .______
.        |    |    |
     ∩∩  |     |    |  ∩∩
     | | | |  |    |    |  | | | |  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
    (  ,,)  |     |    | (・x・ )<おらっ!制作環境から出てこい、 ID:M9z8QwC90!!
   /  つ━━"....ロ|ロ   . | l   |U \逃げるなゴミ
 〜(  /   |    |    |⊂_ |〜  \___________
   し'∪  └──┴──┘  ∪
0172デフォルトの名無しさん (ワッチョイ 138c-YSSY)2016/11/26(土) 20:38:28.26ID:pWqEBz120
echo '23A'+1;
これはなぜ24になるのでしょうか?
0173デフォルトの名無しさん (ワッチョイ 0bd6-p/G0)2016/11/26(土) 20:49:06.90ID:zRxKnjZm0
そんなどうでも良いこと知る前に学ぶべきことが山ほどあるだろ。
そんな演算の成り行きが問題になってる時点で設計間違ってるって気付けよ。
0174デフォルトの名無しさん (ワッチョイ 8b85-S5sA)2016/11/26(土) 20:49:31.74ID:ooyaFqF30
>>172
ゲリ糞プェチピだもの
そういう頭のイカレたお作法と永遠にダンスするんだよ
プェチプァは
0175デフォルトの名無しさん (ワッチョイ 138c-xMZc)2016/11/26(土) 20:51:07.20ID:pWqEBz120
>>173
確かにそうですね、了解です
今phpマニュアルを端から読んでいるところです
0176デフォルトの名無しさん (ワッチョイ 8b85-S5sA)2016/11/26(土) 20:52:42.50ID:ooyaFqF30
プェチプァ〜は人生をマニュアル(ドブ)に捨てるのが生きがいらしい


哀れだよな
0177デフォルトの名無しさん (ワッチョイ 87c9-lM3r)2016/11/27(日) 13:35:28.67ID:wcKeEZPe0
復元可能な暗号化で一番お手軽な方法ってなに?
0178デフォルトの名無しさん (ワッチョイ b730-lM3r)2016/11/27(日) 13:47:56.16ID:TeOgRo4V0
各バイト(文字)に特定の値を足す
0179デフォルトの名無しさん (ワッチョイ 0bd6-rApL)2016/11/27(日) 14:10:06.08ID:PAFp/IGH0
お手軽な暗号化を求めたらお手軽な復号が可能になるってことがわからないサルだらけなのです。
0180デフォルトの名無しさん (ワッチョイ 8b85-S5sA)2016/11/27(日) 14:13:30.95ID:iWuqA4Km0
phpコード自体が難読化された暗号だからセーフ
0181デフォルトの名無しさん (ワッチョイ 138c-e4bX)2016/11/27(日) 16:07:52.18ID:/eV3H2FX0
>>177
お手軽に合致するか知らないけど
http://php.net/manual/ja/function.password-hash.php
http://php.net/manual/ja/function.password-verify.php
0182デフォルトの名無しさん (ワッチョイ 87c9-lM3r)2016/11/27(日) 16:24:18.76ID:wcKeEZPe0
>>181
申し訳ありませんが
復号不可能な方法は
NGです
0183デフォルトの名無しさん (ワッチョイ 138c-e4bX)2016/11/27(日) 16:32:14.26ID:/eV3H2FX0
>>182
rot13?
http://php.net/manual/ja/function.str-rot13.php
0184デフォルトの名無しさん (ワッチョイ 0bd6-rApL)2016/11/27(日) 17:40:01.55ID:PAFp/IGH0
>>183

179 名前:デフォルトの名無しさん (ワッチョイ 0bd6-rApL) :2016/11/27(日) 14:10:06.08 ID:PAFp/IGH0
お手軽な暗号化を求めたらお手軽な復号が可能になるってことがわからないサルだらけなのです。
0185デフォルトの名無しさん (ワッチョイ 8b85-S5sA)2016/11/27(日) 17:48:53.99ID:iWuqA4Km0
>>184
底辺土方専用言語のPHP相手に何言ってだ
0186デフォルトの名無しさん (ワッチョイ 0bd6-rApL)2016/11/27(日) 18:04:03.92ID:PAFp/IGH0
>>185

何言ってるのかわからないのは お ま え だ け
0187デフォルトの名無しさん (ワッチョイ 87c9-lM3r)2016/11/27(日) 18:26:09.15ID:wcKeEZPe0
>>183
なるほどこういうのもあるのか

これは復号がお手軽で良さそうだけど、暗号化状態からの類推が
ちょっと簡単すぎな気もするな
0188デフォルトの名無しさん (ワッチョイ 6316-lM3r)2016/11/27(日) 18:32:15.04ID:5j5eipzu0
ランダム値を足していく
0189デフォルトの名無しさん (ワッチョイ 138c-YSSY)2016/11/27(日) 18:43:23.48ID:/eV3H2FX0
>>187
base64。これも知ってる人が見れば一発で分かる
ゲームの演出にでも使うんならいいけど
http://php.net/manual/ja/function.base64-encode.php
0190デフォルトの名無しさん (ワッチョイ b730-lM3r)2016/11/27(日) 19:31:13.07ID:TeOgRo4V0
お手軽な暗号化っていうから、
単に難読化とか、ファイルをそのまま開けないレベルの話だと思ったんだけど違うん?
0191デフォルトの名無しさん (ワッチョイ 8b85-S5sA)2016/11/27(日) 21:03:09.33ID:iWuqA4Km0
phpの時点で難読だから安心汁w
0192デフォルトの名無しさん (ワッチョイ 138c-YSSY)2016/11/27(日) 21:24:14.60ID:/eV3H2FX0
>>172
解決しました

文字列の数値への変換
http://php.net/manual/ja/language.types.string.php#language.types.string.conversion
0193デフォルトの名無しさん (ワッチョイ 8b85-S5sA)2016/11/27(日) 21:31:39.10ID:iWuqA4Km0
>>192
ペチパーは、そういう一挙手一投足に永遠苦しみ続けるんやで
0194デフォルトの名無しさん (ワッチョイ 138c-YSSY)2016/11/27(日) 21:38:32.25ID:/eV3H2FX0
>>93
解決しました

マジックメソッドはインスタンスでないと呼べないことが原因でした
0195デフォルトの名無しさん (ワッチョイ 138c-YSSY)2016/11/27(日) 21:56:20.11ID:/eV3H2FX0
assertって例外みたいな分岐ということはわかったのですが、assertって使いますか?
0196デフォルトの名無しさん (ワッチョイ 0bd6-rApL)2016/11/27(日) 22:37:45.33ID:PAFp/IGH0
>>195
今存在を知った。

マニュアルを呼んでみると分かるが、PHPUnit等を利用していれば全く必要ないだろう。
0197デフォルトの名無しさん (ワッチョイ 138c-LVz2)2016/11/27(日) 22:39:14.64ID:/eV3H2FX0
>>196
なるほど。ありがとうございます
0198デフォルトの名無しさん (ワッチョイ 8b85-S5sA)2016/11/28(月) 01:32:53.97ID:8eLi/pVq0
ぺぺぺ

ペチプァがウニットテストwwwwwwwwwwwww
0199デフォルトの名無しさん (ワッチョイ 0b56-znN9)2016/11/28(月) 19:23:11.99ID:goD476AK0
またペチパーペチパー嬉しそうに言ってる猿が湧いてるのか
>>87>>157あたりに具体的な回答できないところを見ると
PHP以外の言語全くできない人なんだろうが…やれやれ

ケチをつけたり文句いうのだけは一丁前で
自ら生産性のある事は何一つできない猿は猿山で1人で吠えてろ
0200デフォルトの名無しさん (ワッチョイ 0b56-znN9)2016/11/28(月) 19:36:39.34ID:goD476AK0
>>187
PHP5.3からしか使えないけど
openssl_encrypt()なんかは手軽さと強固さを兼ね備えてると思うけどどうだろう?

レスに上がってたstrrot13()やbase64()は暗号化とはとても呼べないものだけど
本当に簡易的なものでいいなら
strrot13(strrev(base64($str)))みたいに文字列を並び替える系の標準関数をいくつか組み合わせて
自作してしまうのもアリかもね
0201デフォルトの名無しさん (ワッチョイ 8b85-S5sA)2016/11/28(月) 21:48:27.70ID:8eLi/pVq0
>>200
草w
0202デフォルトの名無しさん (ワッチョイ 6f2c-lM3r)2016/11/29(火) 00:00:56.02ID:Xo8/l89i0
そのうちユニットテストについて知りたくてユニットテスト系のレスが増えるんだろうなぁ…
0203デフォルトの名無しさん (ワッチョイ 8b85-S5sA)2016/11/29(火) 00:12:08.67ID:rYidf/CN0
ペチパーの神、テワダさんにでも頼めよ
0204デフォルトの名無しさん (ワッチョイ 87c9-lM3r)2016/11/29(火) 10:43:42.59ID:G1PQ5qe80
>>200
ありがとう
これがちょうどいい感じなのでこれでいきます
0205デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/01(木) 21:29:51.50ID:XF2FB4o/0
なぜPHPなどという糞言語を選んでしまったのか?

哀れだ
0206デフォルトの名無しさん (ワッチョイ 83f8-NTgB)2016/12/02(金) 00:11:33.99ID:cTMcx3vL0
↑こういう馬鹿たまに来るけど
適材適所で使ってるだけで選んでるわけじゃないからな
ここはド素人向けのスレではあるけども
そんなこともわからんド素人にすら届かないミジンコ向けのスレはこの板には存在しないから
他あたって荒らしてくれな
0207デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/02(金) 00:39:49.39ID:+/BurYJT0
適材適所(知恵遅れ並感)

ぼくちんプェピプェでウンコード量産するしか能のない池沼どぇ〜す
なんて公言しちゃって
恥ずかしくないん?
0208デフォルトの名無しさん (ワッチョイ 1030-NTgB)2016/12/02(金) 01:32:54.72ID:Zj5y44Q+0
プログラマが言語を選ぶのではない
顧客が言語を選ぶのだ
0209デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/02(金) 08:34:12.06ID:+/BurYJT0
顧客にこびへつらってケツの穴舐めて
「俺は適材適所でPHPを使ってる(キリッ」
なんて自分を納得させないと生きていけない奴隷ペチプァ

カアイソウ
0210デフォルトの名無しさん (ワッチョイ 3e01-VrYX)2016/12/02(金) 18:09:31.20ID:cbvf3DNb0
ここもWebProg板もPHPについてまともに質問できる場所がねーな
0211デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/02(金) 21:18:34.38ID:+/BurYJT0
ペチプェ自体まともじゃないからしゃーない
0212デフォルトの名無しさん (ワッチョイ 1030-H1ya)2016/12/02(金) 21:24:57.33ID:3AEkxakR0
オチンポ騎士団に入りたいです!
0213デフォルトの名無しさん (ワッチョイ 1030-H1ya)2016/12/02(金) 21:25:14.69ID:3AEkxakR0
すみませんスレ間違えました
0214デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/02(金) 21:56:07.53ID:+/BurYJT0
212 名前:デフォルトの名無しさん (ワッチョイ 1030-H1ya)[sage] 投稿日:2016/12/02(金) 21:24:57.33 ID:3AEkxakR0 [1/2]
オチンポ騎士団に入りたいです!

213 名前:デフォルトの名無しさん (ワッチョイ 1030-H1ya)[sage] 投稿日:2016/12/02(金) 21:25:14.69 ID:3AEkxakR0 [2/2]
すみませんスレ間違えました



これがペチパーだ
0215デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/02(金) 22:16:14.16ID:eDwctYwK0
>>214
お前もその一味だってこと、いい加減に気付こうな。
0216デフォルトの名無しさん (ワッチョイ 2b8c-58uJ)2016/12/02(金) 22:35:08.99ID:cJB1i/Y+0
DB接続で質問です

DBにSELECTやUPDATEする時は、
PDOはprepare()、PDO::bindValue()
PDOStatementが返ってきたらPDOStatement::execute()で良いでしょうか?
PDO::query()などは使わない方が良いですよね?
0217デフォルトの名無しさん (ワッチョイ 2b8c-o9v3)2016/12/02(金) 22:39:13.41ID:cJB1i/Y+0
DB接続でもう一つ質問です

トランザクションについて教えてください
UPDATEなどのクエリを複数一度に処理するという仕組みは何となく分かるのですが
PDO::TransactionやPDO::commit()はどういう時に使いますか?
0218デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/02(金) 23:14:32.24ID:eDwctYwK0
PDO::beginTransaction を実行すると、トランザクションがスタートします。
これは、
PDO::commitを実行することでDBの変更処理が確定します。
もし、不都合が生じた場合、
PDO::rollBackを行えばPDO::beginTransactionが開始されてから行った変更要求は全てキャンセルされ
PDO::beginTransactionの前の状態に戻ることが保証されます。

これは、atomicな処理が求められる場合において、とても重要です。

ただし、PDO::rollBackがすべての要求を撤回できるわけではなく、
それは使用するデータベースの仕様に依存します。

例えば、MySQLではテーブルの作成や削除といった、DDLに類するSQLについて
ロールバックが行えないことを留意する必要があります。

とはいえ、トランザクション機能を有する大抵のデータベースにおいて、
DMLについてはふつうにロールバックできると思って構いません。
0219デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/02(金) 23:23:17.30ID:eDwctYwK0
例を示しましょう。

たとえば、ECサイトにて注文を行う場合を想定します。

あるユーザーの一つの注文においては、Orderテーブルにレコードを1つ追加し、
注文内容について、OrderItemsテーブルに注文種類ごとにレコードを1つ追加するとします。

もし仮にOrderテーブルに注文情報を追加した後、
OrderItemsテーブルのレコード追加で問題が発生したとします。

今場合、OrderItemsテーブルの登録のみをキャンセルすると、
予期しないオーダーが発生してしまいます。

こうした場合、最初にトランザクションを発行しておいて、
問題が発生した場合に直ちにPDO::rollBackを行うことで、
注文処理の全てをキャンセルすることが可能になるわけです。

もし、全ての処理が完了した場合は晴れてPDO::commitを実行することで、
DBの変更処理を確定させます。

こうした処理を、atomic(アトミック:原子性)と呼びます。
この意味は、「一連のものとして定義された処理がすべて完了するか、一つも実行されないかのいずれか状態になること」です。
0220デフォルトの名無しさん (ワッチョイ 2b8c-o9v3)2016/12/02(金) 23:30:47.37ID:cJB1i/Y+0
>>218-219
なるほど、イメージ出来ました
文章もとても読みやすくて感動してしまいました。大変わかりやすかったです、ありがとうございます。
0221デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/02(金) 23:35:26.44ID:eDwctYwK0
どういたしまして。サルとは違うのです。
0222デフォルトの名無しさん (オイコラミネオ MM54-wK09)2016/12/02(金) 23:45:09.50ID:v09MugEBM
どうせコピペだろうと思ってググったら見当たらないでござるwww
0223デフォルトの名無しさん (ワッチョイ f1d6-eVYr)2016/12/02(金) 23:49:34.38ID:eDwctYwK0
あたりめーだろ、サルw
職人が一文字一文字、心を込めて打ち込んでんだよw
0224デフォルトの名無しさん (ワッチョイ 1030-H1ya)2016/12/03(土) 00:00:35.85ID:ovpKhMnk0
マジレスですまんがECシステムの前提として注文の編集は過去注文のキャンセル→新規注文だろ
0225デフォルトの名無しさん (ワッチョイ f1d6-eVYr)2016/12/03(土) 00:10:19.23ID:ZI8uIr2i0
マジレスってことは本気で言ってんのか、ゴミクズだな。

履歴残すのは注文が確定した場合。
注文そのものに問題があった場合はエラーログだ。

PHPerって、こんなにレベル低いのかよ、マジ引くわ。

>>214 またお前の出番だ、忙しくてすまんな。
0226デフォルトの名無しさん (ワッチョイ 8342-/mAi)2016/12/03(土) 00:13:09.12ID:3jlcDMZy0
口座間の振替を例にすれば良かったのに
0227デフォルトの名無しさん (ワッチョイ f1d6-eVYr)2016/12/03(土) 00:13:10.30ID:ZI8uIr2i0
受注エラーあるたびに赤伝と青伝発行してるのかよw
ゴミクズここに極まれりだなw
どんな会計すんだろうなw
0228デフォルトの名無しさん (ワッチョイ f1d6-eVYr)2016/12/03(土) 00:14:06.47ID:ZI8uIr2i0
>>226
おまえ、本当のノータリン♪
0229デフォルトの名無しさん (ワッチョイ f1d6-eVYr)2016/12/03(土) 00:15:35.93ID:ZI8uIr2i0
>>226
そう思うならおまえが書けば?
誰も読まないけどなw
0230デフォルトの名無しさん (ワッチョイ f1d6-eVYr)2016/12/03(土) 00:19:00.98ID:ZI8uIr2i0
そら、PHPerにシステム作らせるなって話にもなるわわ
ホント、迷惑極まりないな。
0231デフォルトの名無しさん (ワッチョイ 1030-H1ya)2016/12/03(土) 00:20:36.24ID:ovpKhMnk0
さーせん
レベルに着いていけませんわwww
0232デフォルトの名無しさん (ワッチョイ f1d6-eVYr)2016/12/03(土) 00:22:21.53ID:ZI8uIr2i0
多分このバカは、話が一個もみえていないし、トランザクションの意味も分かっていない
でも、話に首突っ込んじゃう、ビクンビクン



224 : デフォルトの名無しさん (ワッチョイ 1030-H1ya)2016/12/03(土) 00:00:35.85 ID:ovpKhMnk0
マジレスですまんがECシステムの前提として注文の編集は過去注文のキャンセル→新規注文だろ
0233デフォルトの名無しさん (ワッチョイ f1d6-eVYr)2016/12/03(土) 00:23:08.02ID:ZI8uIr2i0
ついてこれねーならだまってよ、クソぺちぱー
0234デフォルトの名無しさん (ワッチョイ f1d6-eVYr)2016/12/03(土) 00:27:35.93ID:ZI8uIr2i0
さーせんとか、能無しがてめーの体裁繕うために使ってんじゃねーよ、クソ蟹味噌
0235デフォルトの名無しさん (ワッチョイ f1d6-eVYr)2016/12/03(土) 00:30:04.88ID:ZI8uIr2i0
んで、口座間の振り替えじゃないとトランザクションが理解できない知恵遅くんはどうしたん?
0236デフォルトの名無しさん (ワッチョイ 753c-Nkiq)2016/12/03(土) 00:32:55.51ID:2r0RT9ig0
IDが変わっていきなり喧嘩を始めるPHPer
0237デフォルトの名無しさん (ワッチョイ f1d6-eVYr)2016/12/03(土) 00:38:26.53ID:ZI8uIr2i0
喧嘩になってると思うなら、おまえの中ではそうなんだろう
0238デフォルトの名無しさん (ワッチョイ f1d6-eVYr)2016/12/03(土) 00:40:54.32ID:ZI8uIr2i0
>>236

おまえ、クソをぺちぱー言ってる分にはいいけど、俺に舐めた口きいてきたらおまえも叩くよ
0239デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/03(土) 09:52:33.04ID:Y9I90W1E0
>>230
ついにPHPoorの真実のアホーナ姿に気付いてしまったようだね
0240デフォルトの名無しさん (ワッチョイ 462c-NTgB)2016/12/03(土) 14:32:44.96ID:pjHuRuWW0
>>231
新規注文の話なので、注文編集の話とは関係ないよってだけ
0241デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/03(土) 16:50:01.30ID:ZI8uIr2i0
編集でもトランザクションは関係あるけどな。
さーーーーーーーーーる
0242デフォルトの名無しさん (ワッチョイ 462c-NTgB)2016/12/03(土) 17:05:11.66ID:pjHuRuWW0
もちろんそうだね。俺もトランザクション関係ないとは書いてない。
彼も注文の編集でキャンセルと追加という処理を行うのであれば、それを1トランザクションにすべきと思っているかと。

あなたにレスするつもりはなかったけど、DDLのロールバックに触れるならシーケンスについても触れたら?と思う。
アトミックについては片手落ち。分離レベルに依存する話だからね。
それ以外は大体いいんじゃないの。

ただ、質問に対する回答としてはTMIと言わざるを得ない。
そういう意味で、一般的な例である送金処理のリンクを貼っておけば終わっていた話なのではないかと思う。
0243デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/03(土) 17:09:21.92ID:ZI8uIr2i0
適当にそれっぽい言葉を並べておけば頭が良さそうに見えると思ってるばーーーーーーーーか

模範解答書いてみろよ、ID:pjHuRuWW0
どんな長文レスに成るか考えろ、サル

>そういう意味で、一般的な例である送金処理のリンクを貼っておけば終わっていた話なのではないかと思う。

はぁ? 何が一般的なの、お前の中の話なんか、しらねーよ。


>質問に対する回答としてはTMIと言わざるを得ない。

なんだ、これw さーーーーーーーーーーーるw


こういうバカがいるからPHPerはゴミだって言われるんだよ。
0244デフォルトの名無しさん (ワッチョイ 462c-NTgB)2016/12/03(土) 17:10:47.41ID:pjHuRuWW0
え…
サルじゃなければ、ああそうだねって思える内容だと思ったんだが、分からなかったならごめんね。
0245デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/03(土) 17:10:53.44ID:ZI8uIr2i0
ノータリンID:pjHuRuWW0の模範解答期待age!
0246デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/03(土) 17:11:36.85ID:ZI8uIr2i0
>>244

ごめんとか言わなくていいから早く模範解答書けよ、ゴミw
0247デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/03(土) 18:10:43.38ID:ZI8uIr2i0
あれあれー? おかしいぞー? 1時間経つぞぉーーーー?www

模範解答、どうしたんだぁーーーー?www
0248デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/03(土) 19:11:06.15ID:ZI8uIr2i0
あれあれー? おかしいぞー? 2時間経つぞぉーーーー?www

243 : デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/03(土) 17:09:21.92 ID:ZI8uIr2i0
244 : デフォルトの名無しさん (ワッチョイ 462c-NTgB)2016/12/03(土) 17:10:47.41 ID:pjHuRuWW0

わずか1分で能書きだけたれたやつが、2時間たってもマトモな答えができないぞぉーーー???

模範解答、どうしたんだぁーーーー?www
0249デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/03(土) 19:38:23.62ID:Y9I90W1E0
ゲリピーペチピー頭はパー
思考停止の無能のくせに
「俺はサービスにコミットすることだけを考えてる(キッ」
なんて本気で思い込んでる池沼プェチプァ
0250デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/03(土) 19:40:11.31ID:Y9I90W1E0
ペチプァにトランザクションなんて必要ないんだよ


プェチピィ使ってる時点で手遅れなんだからwwwwww
0251デフォルトの名無しさん (ワッチョイ 2b8c-NTgB)2016/12/04(日) 09:37:46.47ID:EvGM7d6Y0
dbの情報を取得する際、PDOStatementに対して、
・foreach
・whileとfetchの組み合わせ
はどちらがいいのでしょうか?

//事前処理
//テーブル名:'test'
//カラム'id'のみ
$dbh = new PDO('接続処理');
$st = $pdo->prepare(' SELECT id FROM test ');

//PDOStatementに対してforeach
$st->execute();
foreach ($st as $key) {
echo $key['id'].'<br>';
}

//whileとfetchの組み合わせ
$st->execute();
while ($row = $st->fetch()) {
echo $row['id'].'<br>';
}
0252デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 10:17:58.35ID:a4cVsRuX0
>>251
どっちもダメ
0253デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 10:22:52.73ID:a4cVsRuX0
> >>242 : デフォルトの名無しさん (ワッチョイ 462c-NTgB)2016/12/03(土) 17:05:11.66 ID:pjHuRuWW0
> あなたにレスするつもりはなかったけど、DDLのロールバックに触れるならシーケンスについても触れたら?と思う。
>ただ、質問に対する回答としてはTMIと言わざるを得ない。
> そういう意味で、一般的な例である送金処理のリンクを貼っておけば終わっていた話なのではないかと思う。

どうしたの? 早く書かないの?wwww
書けないのにレスしちゃったのぉ?wwww
0254デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 10:39:27.45ID:iVFW+LnC0
>>251
ちゃんとユーザ入力受け取れるようにしないとダメだよ
$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
余計な処理入れると重くなったり予期せぬバグが混入するから
最短の直で入れるのが一番確実
0255デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 10:45:45.30ID:a4cVsRuX0
> >>254 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 10:39:27.45 ID:iVFW+LnC0
> ちゃんとユーザ入力受け取れるようにしないとダメだよ
> $st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);


この、クソコード、やべぇwwwwwwww
こんなコード書いたら、本当にカモだろ、DBふっとばされるぞw

だからPHPerはDBイジるなってw
0256デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 10:49:32.06ID:a4cVsRuX0
質問者のコードは問題なかったのに、
回答コードで脆弱性仕込むクソペチパーwwwwww
0257デフォルトの名無しさん (ワッチョイ 8617-2YVp)2016/12/04(日) 10:51:59.79ID:cHsFJgzN0
確かにそのコードは恐いな
あとHTMLの中でDB処理させるのもまずくない?
0258デフォルトの名無しさん (ワッチョイ 2b8c-5/Kt)2016/12/04(日) 11:03:17.36ID:EvGM7d6Y0
>>252
なんとー
ではどのように書けばよいでしょうか?

>>254
その辺は長くなるので省略しました
$st = $pdo->prepare(' SELECT id FROM test WHERE :id ');
$st->bindvalue(':id', $_GET['id'], PDO::PARAM_INT);
$st->execute();
0259デフォルトの名無しさん (ワッチョイ 2b8c-Sm/J)2016/12/04(日) 11:07:17.59ID:EvGM7d6Y0
PDOStatement、Traversableについて質問です

内部的にforeachでどういう処理を行っているのでしょうか?
Traversableをimplementsし、foreachの対象とできることはわかりました。
PDOStatementの何をforeachで見ているのでしょうか?
プロパティかと思いましたが、プロパティにはqueryStringしか入っていません

それともこれはカプセル化ということで、考えなくてもいい部分なのでしょうか
0260デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:07:43.84ID:iVFW+LnC0
>>255
君、何もわかってないね・・・
0261デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:09:05.30ID:iVFW+LnC0
>>258
それ深刻なバグあるから止めた方がいいよ
俺のコードが一番正しい
0262デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:11:34.96ID:a4cVsRuX0
>>260
おまえだよ、わかってねーのwwww
0263デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:13:06.06ID:a4cVsRuX0
> >> 261 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:09:05.30 ID:iVFW+LnC0
> それ深刻なバグあるから止めた方がいいよ


おまえ自体が深刻なバグだからw
0264デフォルトの名無しさん (ワッチョイ 753c-Nkiq)2016/12/04(日) 11:14:59.09ID:A5aAm+Vr0
ユーザー入力をそのままDBに渡すとかないけど
ここは単なるサンプルコードだからな
それを忘れて突っ込んでる奴はアホ
0265デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:16:14.69ID:a4cVsRuX0
こいつ、只のアラシなのかとも疑ってたけど、
マジモンだったのかよw
あたま悪すぎだろwwwwwwwwwwwwwww



254 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 10:39:27.45 ID:iVFW+LnC0
>>251
ちゃんとユーザ入力受け取れるようにしないとダメだよ
$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
余計な処理入れると重くなったり予期せぬバグが混入するから
最短の直で入れるのが一番確実

260 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:07:43.84 ID:iVFW+LnC0
>>255
君、何もわかってないね・・・
261 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:09:05.30 ID:iVFW+LnC0

>>258
それ深刻なバグあるから止めた方がいいよ
俺のコードが一番正しい
0266デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:19:15.63ID:a4cVsRuX0
さらにアホが擁護しはじめたw
やばい、やばすぎる、クソペチパーw



264 : デフォルトの名無しさん (ワッチョイ 753c-Nkiq)2016/12/04(日) 11:14:59.09 ID:A5aAm+Vr0
ユーザー入力をそのままDBに渡すとかないけど
ここは単なるサンプルコードだからな
それを忘れて突っ込んでる奴はアホ
0267デフォルトの名無しさん (ワッチョイ 753c-Nkiq)2016/12/04(日) 11:20:56.02ID:A5aAm+Vr0
ID:ZI8uIr2i0=ID:a4cVsRuX0だな
0268デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:23:24.71ID:a4cVsRuX0
んで、どうでもいいけど
おまえら、まともなSQL書けるようになってから掲示板に書き込みしようなw
preareしてる時点でおかしいからw

うっかりだとしても、そんな間違いしねーよwwww

全部このバカが悪いんだけどなw
254 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 10:39:27.45 ID:iVFW+LnC0



> $st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);

> $st = $pdo->prepare(' SELECT id FROM test WHERE :id ');
> $st->bindvalue(':id', $_GET['id'], PDO::PARAM_INT);
0269デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:24:17.71ID:iVFW+LnC0
わかってるフリしてサンプルコードの一つも提示できないゴミ屑が何か騒いでいるな
0270デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:24:56.52ID:a4cVsRuX0
>>267

それ、特定して何か意味あると思っちゃったの、ぼくちゃんwwwww

ID:A5aAm+Vr0 くそばーーーーーーーーーーーーーーーーかwwwww

技術者として意味あることかけよゴミクズども
0271デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:25:49.95ID:a4cVsRuX0
>>269
あ? 書いてほしいなら「どうかこの間抜けな私にサンプルコードを例示して下さい、神様」
って言えばいいじゃん?

なんでその程度のことがわからないの? ゴミカス
0272デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:26:26.46ID:iVFW+LnC0
>>267
こういう意味のない荒らしはNGにするしかないですね
きっと普段よほどストレスの溜まる生活をしてるのでしょう
かわいそうに
0273デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:28:49.98ID:a4cVsRuX0
本当に
>>251 ID:EvGM7d6Y0
が可哀想過ぎる。

ノータリンバカの
>>254 ID:iVFW+LnC0
が、全く見当違いなレスしたせいで、ズレまくり。

>>251は一生>>254 ID:iVFW+LnC0のバカサ加減を恨んでいいよ
0274デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:29:36.42ID:a4cVsRuX0
>> 272
> かわいそうに


うん、かわいそうなのは、お ま え の の う み そ
0275デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:29:59.19ID:iVFW+LnC0
>>271
人に言われなきゃ書けないようじゃ、三流以下だよ、君
0276251 (ワッチョイ 2b8c-ahdY)2016/12/04(日) 11:30:12.65ID:EvGM7d6Y0
雑なコードを書いてすいません。書き直して再度質問します

dbの情報を取得する際、PDOStatementに対して、
・foreach
・whileとfetchの組み合わせ
はどちらがいいのでしょうか?

//事前処理
//テーブル名:'test'
//カラム'id'のみ
//$dbh = new PDO('接続処理');

//PDOStatementに対してforeach
$st = $pdo->query(' SELECT id FROM test ');
foreach ($st as $key) {
echo $key['id'].'<br>';
}

//PDOStatementをfetch
$st = $pdo->query(' SELECT id FROM test ');
while ($key = $st->fetch()) {
echo $key['id'].'<br>';
}
0277デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:31:06.47ID:a4cVsRuX0
で、これを見る通り、

ID:iVFW+LnC0

このバカのレス、マジだったのなw
これがペチパーの実力なのだよwwwww

ちゃんとユーザ入力受け取れるようにしないとダメだよ
$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
0278デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:31:49.07ID:a4cVsRuX0
275 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:29:59.19 ID:iVFW+LnC0
>>271
人に言われなきゃ書けないようじゃ、三流以下だよ、君


お ま え が 三 流 以 下 w
0279デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:33:23.99ID:iVFW+LnC0
ID:a4cVsRuX0

喚くだけのゴミ
こいついつものペチパー連呼厨ですね
NG推奨
0280デフォルトの名無しさん (ワッチョイ 2b8c-ahdY)2016/12/04(日) 11:34:01.56ID:EvGM7d6Y0
>>259もお願いします。
0281デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:34:33.34ID:a4cVsRuX0
>>276
悪いね、>>252の時点で、君が質問してきたらすぐに答えてやるつもりだったが、
想像以上にID:iVFW+LnC0がバカ過ぎる。

君が可愛そうでしょうがないが、ここは2chなのでID:iVFW+LnC0みたいな本物のバカが
さもわかったような顔をして居るのはしかたないことだ。

あんまりオススメはできないが、teratailあたりで顛末を話して教えてもらいなさい。
今日、今のここはアホしかいないから、俺もマトモにレス出来ない。
0282デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:36:16.59ID:a4cVsRuX0
> >>279 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:33:23.99 ID:iVFW+LnC0
> 喚くだけのゴミ
> こいついつものペチパー連呼厨ですね
> NG推奨

しろしろw
おまえに俺様の智識を覗かれないで済むw

お前がアホなだけだということが全く理解できないバカはとっととNGしろw ゴミクズ
0283デフォルトの名無しさん (ワッチョイ 2b8c-ahdY)2016/12/04(日) 11:36:37.03ID:EvGM7d6Y0
>>281
ありがとうございます。移動させていただきます。
>>251,259は取り下げます。
0284デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:37:12.99ID:iVFW+LnC0
>>281
要約:僕ちん頭が悪くてわかりません


適当にそれっぽい言葉を並べておけば頭が良さそうに見えると思ってるばーーーーーーーーか
こんなにレベル低いのかよ、マジ引くわ。
0285デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:37:46.11ID:iVFW+LnC0
>>282
智識w
池沼の間違いだろw
0286デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:39:04.78ID:a4cVsRuX0
2016年、2ch流行語大賞wwwwwwwwww

--------------------------------------------------------------------
>>254 ID:iVFW+LnC0
ちゃんとユーザ入力受け取れるようにしないとダメだよ
$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
--------------------------------------------------------------------
0287デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:39:33.56ID:a4cVsRuX0
おやー。まだなんかホザイてますねぇ。かわいいですねぇw
0288デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:41:14.73ID:a4cVsRuX0
>>283
そのほうがいい。
ID:iVFW+LnC0 こいつ、まじで自分のレベルの低さを全く分かってない
0289デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:41:33.12ID:iVFW+LnC0
真性のキチガイペチパー ID:a4cVsRuX0
0290デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:42:54.13ID:iVFW+LnC0
>>283
災難でしたね
foreachとwhileの違いもよくわかってないキチガイペチパー連呼厨が居座ってるなんて
ここは恐ろしいスレッドだ
0291デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:47:55.81ID:a4cVsRuX0
全く関係ない話しし始めたよw 狂ってるな、ID:iVFW+LnC0
死ねばいいのに
0292デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:51:01.49ID:iVFW+LnC0
死ねばいいとか平気で言うガイジ
おお恐い
この子、PHPのお勉強も必要だけど、それより先に道徳のお勉強をし直さないとだね
0293デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:52:48.82ID:a4cVsRuX0
コンドリア以下の脳みそが、自分の生命の価値を主張して道徳を語り始めたw
0294デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 11:55:59.06ID:a4cVsRuX0
これは、コンドリアが知性を持ち始めた記念すべき第一歩だ。
今日を、コンドリア記念日に認定することを提唱しよう!
0295デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 12:04:18.45ID:iVFW+LnC0
全く関係ない話しし始めたよw 狂ってるな、 ID:a4cVsRuX0
死ねばいいのに
0296デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 12:05:56.84ID:a4cVsRuX0
> >>290 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:42:54.13 ID:iVFW+LnC0
> foreachとwhileの違いもよくわかってないキチガイペチパー連呼厨が居座ってるなんて


てめーから、質問内容のforeachとwhileと全く関係ないところに
全く見当違いなレスをしておいて、
突然、なんの脈絡もなく、foreachとwhileの話を始める精神分裂な

ID:iVFW+LnC0

まじやば
0297デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 12:06:59.14ID:a4cVsRuX0
そして、他人の発言のオウム返ししかできない、
本当に脳みそコンドリアの

ID:iVFW+LnC0

まじやば
0298デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 12:09:12.55ID:a4cVsRuX0
忘れなようにもう一回貼っとこ

2016年、2ch流行語大賞wwwwwwwwww

--------------------------------------------------------------------
>>254 ID:iVFW+LnC0
ちゃんとユーザ入力受け取れるようにしないとダメだよ
$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
--------------------------------------------------------------------

こんなクソコードを初心者に奨める、脳みそコンドリアw
0299デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 12:09:32.49ID:iVFW+LnC0
>>296
>>281
>>284
0300デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 12:11:52.48ID:iVFW+LnC0
ID:iVFW+LnC0

コピペ返しで十分扱いされてるのに喜ぶガイジw
0301デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 12:12:39.59ID:a4cVsRuX0
■初心者の質問者が頑張って書いたコード
$st = $pdo->prepare(' SELECT id FROM test WHERE :id ');
$st->bindvalue(':id', $_GET['id'], PDO::PARAM_INT);
$st->execute();

■識者気取りの池沼が書いた回答
ちゃんとユーザ入力受け取れるようにしないとダメだよ
$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);



初心者の質問者のほうが遥かにマシwwwwwwwww
0302デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 12:14:43.68ID:a4cVsRuX0
>> 300 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 12:11:52.48 ID:iVFW+LnC0
> ID:iVFW+LnC0

> コピペ返しで十分扱いされてるのに喜ぶガイジw




まさかの、自分で自分をガイジ呼ばわりwwwwww
0303デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 12:16:09.67ID:iVFW+LnC0
煽るしか脳の無いガイジ様の智識溢れるレス

>>253
0304デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 12:16:55.20ID:iVFW+LnC0
>>302
焦って連投する前によく読めガイジw
0305デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 12:20:55.99ID:a4cVsRuX0
>>304
せんぱい、どこをどうよく読むと、何がわかるんすかwwwwwwww

>ID:iVFW+LnC0
> コピペ返しで十分扱いされてるのに喜ぶガイジw


いーーーーーーーーーーーーーひゃっひゃっひゃっひゃっひゃっひゃm9(^Д^)
0306デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 12:25:44.75ID:a4cVsRuX0
このように頭のおかしいペチパーは
初心者の質問者に見当違いなバカレスをしたあげく質問者を帰らせ、
自らを障害者と呼称して恥をひけらかす、人間的に故障した出来損ないなのです。

マトモなPHP技術者は、このようなガイジに被害を被っていることに憤りを覚えています。
0307デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 12:35:17.94ID:a4cVsRuX0
ほんと、質問者がかわいそうだわ。

ID:iVFW+LnC0 のコードなんか、ちょっとプログラムかじったことあれば「ヤバイ」ってわからないほうがおかしいのに
平気で書き込む神経が狂ってる。

二度と書き込むなと思うわ。

書き込んでもいいけど、指摘されたら「どこがおかしいでしょうか?」って聞くくらいの誠意を持てよ、ホント。
どうしてあんなクソコードで他人に指導できると思ったのか、
これまで受けてきた教育のあり方から疑う。
0308デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 12:37:17.43ID:a4cVsRuX0
おめーもだからな? ゴミカス

> >>264 : デフォルトの名無しさん (ワッチョイ 753c-Nkiq)2016/12/04(日) 11:14:59.09 ID:A5aAm+Vr0
> ユーザー入力をそのままDBに渡すとかないけど
> ここは単なるサンプルコードだからな
> それを忘れて突っ込んでる奴はアホ
0309デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 12:57:51.34ID:a4cVsRuX0
そんで、この能書き垂れたバカはどうした? 忘れてねーからな
質問者の質問内容に端的に答えてみせろよ、ゴミカス

こんだけの能書き垂れたんだから、模範解答くらい書けるんだろ?
楽しみにしてるぞ!



> >>242 : デフォルトの名無しさん (ワッチョイ 462c-NTgB)2016/12/03(土) 17:05:11.66 ID:pjHuRuWW0
> もちろんそうだね。俺もトランザクション関係ないとは書いてない。
> 彼も注文の編集でキャンセルと追加という処理を行うのであれば、それを1トランザクションにすべきと思っているかと。
> あなたにレスするつもりはなかったけど、DDLのロールバックに触れるならシーケンスについても触れたら?と思う。
> アトミックについては片手落ち。分離レベルに依存する話だからね。
> それ以外は大体いいんじゃないの。
> ただ、質問に対する回答としてはTMIと言わざるを得ない。
> そういう意味で、一般的な例である送金処理のリンクを貼っておけば終わっていた話なのではないかと思う。
0310デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 13:34:32.57ID:iVFW+LnC0
こういう言葉の通じない気狂いは放置するに限りますねw
0311デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 13:36:55.47ID:a4cVsRuX0
>>310
> こういう言葉の通じない気狂いは放置するに限りますねw


また自分の事ですか、おつかれさまっすw
0312デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 13:37:18.55ID:a4cVsRuX0
忘れないようにもう一回貼っとくよーーーーーーー

2016年、2ch流行語大賞wwwwwwwwww

--------------------------------------------------------------------
>>254 ID:iVFW+LnC0
ちゃんとユーザ入力受け取れるようにしないとダメだよ
$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
--------------------------------------------------------------------
0313デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 13:38:37.18ID:a4cVsRuX0
放置に限ると言いながら、自分で全く放置出来ていないバカwwwww

厚顔無恥というか、睾丸で物を考えているバカwwww
0314デフォルトの名無しさん (ワッチョイ 8342-/mAi)2016/12/04(日) 13:56:17.66ID:eI7Tmf7L0
黙ってNGに登録するだけで良い
かまうな
0315デフォルトの名無しさん (ワッチョイ f1d6-eVYr)2016/12/04(日) 13:59:12.73ID:a4cVsRuX0
自分からおかしなこと言っておいてけなされまくったら放置するしかないと言い出すバカと
NGするしかないと擁護するバカw

これがぺちぱーw
0316デフォルトの名無しさん (ワッチョイ f1d6-eVYr)2016/12/04(日) 14:00:57.34ID:a4cVsRuX0
ぺちぱーは、レベルが低いほど引きつけ合う負の連鎖w
0317デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 14:01:01.27ID:iVFW+LnC0
>>312
アンタニキ、何もわかってないね・・・w
0318デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 14:05:44.15ID:iVFW+LnC0
>>316
ブーメラン刺さってるぞブパヨw
0319デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:10:59.02ID:a4cVsRuX0
>>317
>アンタニキ

wwwwwwwwwwwwwwwwwwwwwwwwwwwww

アンタニキって何すかwwwwwwwwwwwwwwwwwwww

タイプもマトモに出来ないんすかw テンパり過ぎっす、睾丸先輩w
0320デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:11:54.11ID:a4cVsRuX0
>>318
ブーメランの使い方変ですよ、先輩w
意味わかってるんですか? 本当に日本人ですか?wwww
0321デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:13:43.57ID:a4cVsRuX0
この土日のバカ二大巨頭
大口だけで、何も説明できないwwwwww



>>254 ID:iVFW+LnC0
ちゃんとユーザ入力受け取れるようにしないとダメだよ
$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);


> >>242 : デフォルトの名無しさん (ワッチョイ 462c-NTgB)2016/12/03(土) 17:05:11.66 ID:pjHuRuWW0
> もちろんそうだね。俺もトランザクション関係ないとは書いてない。
> 彼も注文の編集でキャンセルと追加という処理を行うのであれば、それを1トランザクションにすべきと思っているかと。
> あなたにレスするつもりはなかったけど、DDLのロールバックに触れるならシーケンスについても触れたら?と思う。
> アトミックについては片手落ち。分離レベルに依存する話だからね。
> それ以外は大体いいんじゃないの。
> ただ、質問に対する回答としてはTMIと言わざるを得ない。
> そういう意味で、一般的な例である送金処理のリンクを貼っておけば終わっていた話なのではないかと思う。
0322デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 14:18:54.57ID:iVFW+LnC0
ここでバカナンバーワンをご紹介

ID:a4cVsRuX0

トランザクションもforeachもwhileもわからないガイジ
決めぜりふは


あんまりオススメはできないが、teratailあたりで顛末を話して教えてもらいなさい。
今日、今のここはアホしかいないから、俺もマトモにレス出来ない。


いつもマトモにレス出来ないの間違いだろwww
0323デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 14:21:40.07ID:iVFW+LnC0
>>321
> 大口だけで、何も説明できないwwwwww
> 大口だけで、何も説明できないwwwwww
> 大口だけで、何も説明できないwwwwww

特大ブーメラン刺さり過ぎててくさ
0324デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:24:25.37ID:a4cVsRuX0
>>322
>ここでバカナンバーワンをご紹介


うわぁ… ここにきて更に煽り方まで猿真似かよ。
特亜の方は、本当になりふり構わないっすね…
0325デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 14:25:44.33ID:iVFW+LnC0
見ろよこの的外れなレス

>>219
> 例を示しましょう。
>
> たとえば、ECサイトにて注文を行う場合を想定します。
>
> あるユーザーの一つの注文においては、Orderテーブルにレコードを1つ追加し、
> 注文内容について、OrderItemsテーブルに注文種類ごとにレコードを1つ追加するとします。
>
> もし仮にOrderテーブルに注文情報を追加した後、
> OrderItemsテーブルのレコード追加で問題が発生したとします。
>
> 今場合、OrderItemsテーブルの登録のみをキャンセルすると、
> 予期しないオーダーが発生してしまいます。
>
> こうした場合、最初にトランザクションを発行しておいて、
> 問題が発生した場合に直ちにPDO::rollBackを行うことで、
> 注文処理の全てをキャンセルすることが可能になるわけです。
>
> もし、全ての処理が完了した場合は晴れてPDO::commitを実行することで、
> DBの変更処理を確定させます。
>
> こうした処理を、atomic(アトミック:原子性)と呼びます。
> この意味は、「一連のものとして定義された処理がすべて完了するか、一つも実行されないかのいずれか状態になること」です。

221 名前:デフォルトの名無しさん (ワッチョイ f1d6-BMT5)[sage] 投稿日:2016/12/02(金) 23:35:26.44 ID:eDwctYwK0 [4/5]
どういたしまして。サルとは違うのです。 (キリッ

223 名前:デフォルトの名無しさん (ワッチョイ f1d6-eVYr)[sage] 投稿日:2016/12/02(金) 23:49:34.38 ID:eDwctYwK0 [5/5]
あたりめーだろ、サルw
職人が一文字一文字、心を込めて打ち込んでんだよw (キリリッ
0326デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:26:13.53ID:a4cVsRuX0
> >>323 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 14:21:40.07 ID:iVFW+LnC0
> 大口だけで、何も説明できないwwwwww
> 大口だけで、何も説明できないwwwwww
> 大口だけで、何も説明できないwwwwww

> 特大ブーメラン刺さり過ぎててくさ


よし、それ言ったってことは、

> >>317 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 14:01:01.27 ID:iVFW+LnC0
> >>312
> アンタニキ、何もわかってないね・・・w

お ま え は、コレ、何が分かって無いと言ってるのか説明するってことだよな???
できるよな????wwwwwwwwww
自分で宣言したんだもんな???wwwwwwwww

さぁ、説明してもらいましょう、さぁ、さぁwwwwwwwwwww
0327デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 14:26:54.45ID:iVFW+LnC0
職人丹精込めた自作レス
口座間トランザクションの一言に敗北して発狂

カアイソウ
0328デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 14:28:05.90ID:iVFW+LnC0
>>326
あ? 書いてほしいなら「どうかこの間抜けな私にサンプルコードを例示して下さい、神様」
って言えばいいじゃん?

なんでその程度のことがわからないの? ゴミカス


要約:僕ちん頭が悪くてわかりません


適当にそれっぽい言葉を並べておけば頭が良さそうに見えると思ってるばーーーーーーーーか
こんなにレベル低いのかよ、マジ引くわ。
0329デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:29:11.28ID:a4cVsRuX0
\/\/\/\/\/\/\/\/\/\/\/\/\/\/

こ こ か ら ID:iVFW+LnC0 先 生 が

$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);

こ の コ ー ド の 素 晴 ら し さ と 有 用 性 に つ い て 語 り ま す

           ご 期 待 く だ さ い ! !

/\/\/\/\/\/\/\/\/\/\/\/\/\/\
0330デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:30:15.51ID:a4cVsRuX0
>>328
どうかこの間抜けな私にサンプルコードを例示して下さい、ID:iVFW+LnC0様


はい、言ったよーーーーーーーーーーーーーーーーーーwwwwwwww

早く書いてよ、ほら、ほらwwwwwwww
0331デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:31:06.26ID:a4cVsRuX0
>>328
どうかこの間抜けな私に
$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
の素晴らしさと有用性について説明して下さい、ID:iVFW+LnC0様


ほら、ほらwwwwwww
0332デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 14:31:40.75ID:iVFW+LnC0
w
0333デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 14:32:13.84ID:iVFW+LnC0
どこまでも哀れな生き物だな・・・
0334デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:34:25.60ID:a4cVsRuX0
>>333
あれあれ?どうしたんですか?
そんな戯言いいから、早く説明してくださいよ、睾丸先輩w

まさか、自分で言ったのに出来ないなんてことないですよね?
睾丸先輩、本当に口だけっすか?
0335デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:35:32.37ID:a4cVsRuX0
>>333
あ、すいません、失礼なこといいました。
睾丸先輩だから、睾丸だけですよね? 本当にすいませんw
0336デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 14:37:10.65ID:iVFW+LnC0
はい、キチガイはNGw
0337デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:37:23.45ID:a4cVsRuX0
>>333
で、睾丸先輩

売り言葉に買い言葉だとしても、自分でこんなこと書いたんだから、
なすべきことはするんですよね? 人間として最低限の事くらいは守りますよね?
それすらしなかったら、本当にゴミカスですよ?


-----------------------------------------------------------
328 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 14:28:05.90 ID:iVFW+LnC0
>>326
あ? 書いてほしいなら「どうかこの間抜けな私にサンプルコードを例示して下さい、神様」
って言えばいいじゃん?

なんでその程度のことがわからないの? ゴミカス


要約:僕ちん頭が悪くてわかりません


適当にそれっぽい言葉を並べておけば頭が良さそうに見えると思ってるばーーーーーーーーか
こんなにレベル低いのかよ、マジ引くわ。
-----------------------------------------------------------
0338デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:38:15.92ID:a4cVsRuX0
> >>336 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 14:37:10.65 ID:iVFW+LnC0
> はい、キチガイはNGw

うわ、やべぇ、コイツ、都合が悪くなったら逃げやがんのwwww
本当に人間としてゴミクズ過ぎるwwww
0339デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:39:42.87ID:a4cVsRuX0
やっぱり間違いなかった 2016年、2ch流行語大賞
受賞理由:人間として最低限の事が出来ないゴミカスの発言


--------------------------------------------------------------------
>>254 ID:iVFW+LnC0
ちゃんとユーザ入力受け取れるようにしないとダメだよ
$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
--------------------------------------------------------------------
0340デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 14:40:29.49ID:iVFW+LnC0
レス番がよく飛ぶなぁ
ドMガイジ嬉ション漏らして発狂中か?
0341デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:43:19.73ID:a4cVsRuX0
もう一回言っとくけど、お前も忘れてないからね
お前の言い分がマトモだと思うなら、ちゃんと説明してね


> >>242 : デフォルトの名無しさん (ワッチョイ 462c-NTgB)2016/12/03(土) 17:05:11.66 ID:pjHuRuWW0
> もちろんそうだね。俺もトランザクション関係ないとは書いてない。
> 彼も注文の編集でキャンセルと追加という処理を行うのであれば、それを1トランザクションにすべきと思っているかと。
> あなたにレスするつもりはなかったけど、DDLのロールバックに触れるならシーケンスについても触れたら?と思う。
> アトミックについては片手落ち。分離レベルに依存する話だからね。
> それ以外は大体いいんじゃないの。
> ただ、質問に対する回答としてはTMIと言わざるを得ない。
> そういう意味で、一般的な例である送金処理のリンクを貼っておけば終わっていた話なのではないかと思う。
0342デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:43:39.87ID:a4cVsRuX0
クソペチパーは、能書きだけたれて自分では何も説明できないってことを証明する土日でした。
こういうのは、マトモなPHP技術者が本当に困るので、
一生外に出てこないで下さい。
0343デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:45:04.07ID:a4cVsRuX0
睾丸先輩が、悔しくてNGアピールしてますねw
一生やっててもらいましょうw
0344デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 14:45:25.99ID:iVFW+LnC0
マトモじゃないガイジが何か喚いてるぞ
0345デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:46:57.00ID:a4cVsRuX0
NGしたはずなのに、一生懸命自分の体裁を繕おうと必死らしいですw
0346デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:48:36.64ID:a4cVsRuX0
もはや、何のためにNGしたのかすら分からない状態ですw
0347デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:50:10.31ID:a4cVsRuX0
彼はこのまま、ずっとNGしたと言い張ってレス番をチェックしつづけるのでしょうか?
知的障害者のすることは、まったくもって意味が解りません。

さすが、
$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
こんなコードを初心者に奨めるだけのことはあります。
0348デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:53:50.49ID:a4cVsRuX0
良いPHP初心者のみんなー!
冗談抜きで、このレスはクソレスだから、絶対に真似しちゃダメだよー?


> >>254 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 10:39:27.45 ID:iVFW+LnC0
> >>251
> ちゃんとユーザ入力受け取れるようにしないとダメだよ
> $st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
> 余計な処理入れると重くなったり予期せぬバグが混入するから
> 最短の直で入れるのが一番確実
0349デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 14:56:58.15ID:iVFW+LnC0
全員にNGされ誰も読んでないレスを必死に書き続けるガイジ
0350デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:58:49.10ID:a4cVsRuX0
まだNGアピールしつづける悔しくてたまらない睾丸w
0351デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 14:59:10.60ID:a4cVsRuX0
NGしたなら関わらなきゃいいのにw
何のためのNGだよwwww
0352デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:00:34.12ID:a4cVsRuX0
NGした、悔しいでも気になっちゃうビクンビクンwwwwww
0353デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 15:01:03.78ID:iVFW+LnC0
ID:a4cVsRuX0
0354デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:02:52.45ID:a4cVsRuX0
はい、意味の分からないID貼り頂きましたw

んなことしてる暇あるなら、自分の論説の正しさを証明すればいいだけなのに。
それが技術に携わる者のつとめじゃん。

ほんと、昨日のバカにしろ睾丸君にしろ、口ばっかで何もできねーよな。
0355デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:04:11.08ID:a4cVsRuX0
睾丸くんは2chの運営で、リロードされて広告収入ウハウハとかなの?
それならそういえばいいのに。3分に1回リロードしてやるよ。
0356デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 15:04:11.77ID:iVFW+LnC0
口ばっかで何もできない人っているんだなぁ
0357デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:05:06.51ID:a4cVsRuX0
NG宣言したはずの睾丸君が、レスを読んでいないとわからないレスを書き込みましたwwwwwwwwwwwwww
0358デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:05:31.13ID:a4cVsRuX0
NG宣言したのにNGできていない小心者のばかwwwwwwwwwwwwwwwwwwwwwwwww
0359デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:06:12.92ID:a4cVsRuX0
気になっちゃう? 気になっちゃうのぉ????

睾丸君は、理性ないもんねぇwwwww
0360デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:09:07.51ID:a4cVsRuX0
で、真面目に聞くけど

>>356
どうして
> $st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
こんなコードで良いと思ったの?

こんなコード書いたら、それ運用した組織は甚大な被害被ることになってもおかしくないよ?
もしワザとだとしたら、おまえのやったことはテロリストと変わらないよ?

どっちなの?
ワザとなの? お前の無知からなの?
0361デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 15:12:00.91ID:iVFW+LnC0
俺がレスした途端に理性を失ったサルのように書き込んでるキチガイがおるね
見えんけどw
0362デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:14:44.06ID:a4cVsRuX0
>>361
せめてID変えてそれ書き込めよw どこまでサルなんだよwwww

おめーはNG宣言したんだから見えてるはずねーのに、
ここで再び「見えんけどw」ってバカの極みかw
0363デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:16:01.76ID:a4cVsRuX0
354 : デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:02:52.45 ID:a4cVsRuX0
ほんと、昨日のバカにしろ睾丸君にしろ、口ばっかで何もできねーよな。

356 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 15:04:11.77 ID:iVFW+LnC0
口ばっかで何もできない人っているんだなぁ


NG宣言したのに、思いっきり見えまくりなアホは何言っても説得力ないっす。
0364デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 15:16:26.97ID:iVFW+LnC0
みなさん、
トランザクションもforeachもwhileもわからないガイジ
決めぜりふは


あんまりオススメはできないが、teratailあたりで顛末を話して教えてもらいなさい。
今日、今のここはアホしかいないから、俺もマトモにレス出来ない。


こんな人間にならないよう気をつけましょうね
0365デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 15:20:31.66ID:iVFW+LnC0
まぁ気をつけなくても普通こんな恥ずかしい人間にはならんかw
0366デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:23:40.95ID:a4cVsRuX0
NGしてねーじゃんwwwwwwwwwwwwwwwwww

チキン睾丸先輩ちーーーーーーーーーーーーーーーすwwwwwwwwwwwww
0367デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 15:24:45.15ID:iVFW+LnC0
よくこんな無知丸出しのレスできるよね
俺だったら恥ずかしくて生きてかれんわw
0368デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:25:42.43ID:a4cVsRuX0
こんなクソコードを初心者に奨める人は、何言っても無駄っすwww

> $st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
0369デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:26:17.55ID:a4cVsRuX0
>>367

あれあれ? NGはどうなったんですか? 睾丸先輩w
0370デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:27:28.72ID:a4cVsRuX0
>よくこんな無知丸出しのレスできるよね

と、発言した方のコードを見てみましょう。

> $st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
0371デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:29:13.46ID:a4cVsRuX0
NGしたけど、何が書かれているか気になってしかたがない睾丸先輩、かわいすぎ
0372デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 15:29:51.16ID:iVFW+LnC0
とんでもない構ってチャンですなw
0373デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:30:47.73ID:a4cVsRuX0
NGしたなら関わらなきゃいいのにw
何のためのNGだよwwww
0374デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:32:05.16ID:a4cVsRuX0
これ、今日の晩御飯は大根の煮物にしましょうかねーとか書いても

372 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 15:29:51.16 ID:iVFW+LnC0
とんでもない構ってチャンですなw

とか、書くのかね? ま さ し く き ち が い

NGしたんだから関わるなよ、小心者w
0375デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 15:35:16.51ID:iVFW+LnC0
まだまだレス番飛びますなぁ
よほど俺に論破されたのが悔しいのだろうな
0376デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:39:20.47ID:a4cVsRuX0
こいつ、一生レス番気にしてそうw
0377デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:40:12.06ID:a4cVsRuX0
もはや、自分の技術的論説はどうでも良く、ただひたすらレス番を追うのみ。
ただのロボ。
0378デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 15:40:34.81ID:iVFW+LnC0
みなさん、
トランザクションもforeachもwhileもわからないクソガイジ
決めぜりふは


あんまりオススメはできないが、teratailあたりで顛末を話して教えてもらいなさい。
今日、今のここはアホしかいないから、俺もマトモにレス出来ない。


こんな人間にならないよう気をつけましょうね
0379デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:41:13.79ID:a4cVsRuX0
「論破」の意味を辞書で調べろよw
NGして逃げる奴を「論破した」とは言わねーよw
必死にレス番追うやつが、なんで論破できてんだよw
0380デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:42:11.97ID:a4cVsRuX0
ちょっとテストしてみるか
0381デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:42:29.00ID:a4cVsRuX0
今日、人参とジャガイモにしようかな
0382デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:42:49.44ID:a4cVsRuX0
やっぱPHPerはカレーだよね
0383デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:43:23.37ID:a4cVsRuX0
ID:iVFW+LnC0 も、そう思うだろ?w
0384デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:43:48.65ID:a4cVsRuX0
カレーは日本人の命だからなwwwwww
0385デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:52:08.90ID:a4cVsRuX0
で、真面目に聞くけど

>>356
どうして
> $st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
こんなコードで良いと思ったの?

こんなコード書いたら、それ運用した組織は甚大な被害被ることになってもおかしくないよ?
もしワザとだとしたら、おまえのやったことはテロリストと変わらないよ?

どっちなの?
ワザとなの? お前の無知からなの?
0386デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 15:58:17.74ID:a4cVsRuX0
一生懸命 >>378 みたいに見当違いな事書いても、
結局ID:iVFW+LnC0こいつがバカなだけでしたーーーーーーーーーーwwwww
0387デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 16:06:16.84ID:a4cVsRuX0
やっと諦めたようだ。大人しくNGで喜んでればいいのに。

被害者が出ないようにもう一回貼っとこう。

やっぱり間違いなかった 2016年、最悪のクソコード2ch流行語大賞
受賞理由:人間として最低限の事が出来ないゴミカスの発言な上、脆弱性の塊


--------------------------------------------------------------------
>>254 ID:iVFW+LnC0
ちゃんとユーザ入力受け取れるようにしないとダメだよ
$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
--------------------------------------------------------------------
0388デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 17:13:56.60ID:a4cVsRuX0
>>251が可哀想過ぎる。こんな知ったかぶりのマヌケがいるのがPHPerなのです。
マトモなPHPerの人は諦めましょう。

---------------------------------------------------------------------------------------
>>251 : デフォルトの名無しさん (ワッチョイ 2b8c-NTgB)2016/12/04(日) 09:37:46.47 ID:EvGM7d6Y0
dbの情報を取得する際、PDOStatementに対して、
・foreach
・whileとfetchの組み合わせ
はどちらがいいのでしょうか?

//事前処理
//テーブル名:'test'
//カラム'id'のみ
$dbh = new PDO('接続処理');
$st = $pdo->prepare(' SELECT id FROM test ');
(略)


>>254 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 10:39:27.45 ID:iVFW+LnC0
>>251
ちゃんとユーザ入力受け取れるようにしないとダメだよ
$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
余計な処理入れると重くなったり予期せぬバグが混入するから
最短の直で入れるのが一番確実
0389デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 17:17:57.94ID:iVFW+LnC0
みなさん、
トランザクションもforeachもwhileもわからないクソガイジ
決めぜりふは


あんまりオススメはできないが、teratailあたりで顛末を話して教えてもらいなさい。
今日、今のここはアホしかいないから、俺もマトモにレス出来ない。


こんな人間にならないよう気をつけましょうね
0390デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 17:19:00.95ID:iVFW+LnC0
まだレス番飛んでるっw
きもっw
粘着ストーカーガイジきもちわるっww

ニートかよ
0391デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 17:28:42.43ID:iVFW+LnC0
きちんとコードを提示して技術的論説を語っている人間がいる傍ら、
睾丸だのバカだの汚い言葉で人様を罵るしか脳の無いゴミ屑がいるらしい

まったく、呆れちゃうね
0392デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 17:30:08.40ID:a4cVsRuX0
>きちんとコードを提示して技術的論説を語っている人間がいる傍ら

それ、誰のことよwwwww

きちんとしたコード、どこにあるのよwwwww
0393デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 17:30:48.03ID:a4cVsRuX0
$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
↑↑↑↑↑↑↑↑↑↑↑↑
これ??

これのことなの? ま さ かwwwwww
0394デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 17:33:09.35ID:a4cVsRuX0
>>390
>ニートかよ


先輩、さーーーーせん、今日、日曜日なもんでw PCの処理待ちの間に先輩の相手してまさーw

先輩はお仕事っすか? おつかれさまっすwwww
0395デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 17:35:22.82ID:a4cVsRuX0
>>391

先輩もプログラムに携わるなら、たまにはPCに関する勉強とか、
したほうがいいんじゃないっすか?

$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);

こんなん、今時、学生でも書かないっすよw
0396デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 17:40:08.41ID:iVFW+LnC0
何の生産性もないウンコ以下のゴミ
0397デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 17:41:17.82ID:a4cVsRuX0
先輩の自己紹介の上手さには感服するっすw

で、


$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);

このコードのやばさ、そろそろ分かったんすか?w
0398デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 17:44:00.86ID:a4cVsRuX0
>>396
> 何の生産性もないウンコ以下のゴミ

$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);

これで、生産した気になっているゴミwww

ほんとID:iVFW+LnC0こいつ、アクセス数稼ぎたいだけの運営だろw
0399デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 17:44:38.23ID:iVFW+LnC0
気持ち悪いなぁ
誰も読んでないレスがまた書き込まれてるw
頭おかしいよな
0400デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 17:54:27.42ID:iVFW+LnC0
まだおるのか? ID:a4cVsRuX0 ガイジ
0401デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 17:55:15.16ID:a4cVsRuX0
NGしてんなら気持ち悪いことね―じゃんw
NGしたのにずーーーーーーーーーーーーーーーーっと気にしてる
$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
こんなクソコード書く気違いw
0402デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 17:56:14.76ID:a4cVsRuX0
本当に、何のためのNGだよw
0403デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 18:01:07.42ID:iVFW+LnC0
また何の生産性もないウンコ以下のゴミレスなんだろうな、見えないけどw
0404デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 18:05:58.19ID:a4cVsRuX0
はい、恒例の「見えてない」宣言乙っす。
NGしたって、もうずーっと前に聞いてるんですけどね。
何主張なんでしょ?
0405デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 18:06:33.57ID:a4cVsRuX0
↓次レスする奴、ウンコ
0406デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 18:07:36.36ID:iVFW+LnC0
みなさん、
トランザクションもforeachもwhileもわからないクソガイジ
決めぜりふは


あんまりオススメはできないが、teratailあたりで顛末を話して教えてもらいなさい。
今日、今のここはアホしかいないから、俺もマトモにレス出来ない。


こんな人間にならないよう気をつけましょうね
0407デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 18:07:51.15ID:iVFW+LnC0
きちんとコードを提示して技術的論説を語っている人間がいる傍ら、
睾丸だのバカだの汚い言葉で人様を罵るしか脳の無いゴミ屑がいるらしい

まったく、呆れちゃうおね
0408デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 18:09:48.38ID:a4cVsRuX0
はい、期待を裏切りませんでしたw
0409片山博文MZ ◆T6xkBnTXz7B0 (ガラプー KK41-cZQp)2016/12/04(日) 18:12:45.69ID:jH5ILEuZK
一応解説しておくが、このコードには「SQLインジェクション」という攻撃が可能だ。
$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
ここで$_GET['id']はエスケープされてないので、クライアント側で指定された生のデータが入る。
もし、$_GET['id']が"FALSE; ..."などといったデータだったら、任意のSQLコードが実行可能である。
0410デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 18:14:03.99ID:iVFW+LnC0
ID:a4cVsRuX0

はい、ちゃんと勉強してね、ガイジくん
>>409
0411デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 18:14:48.65ID:a4cVsRuX0
片山くんはやさしいねぇ。
まだこっちは終わらないから、睾丸君ともっと遊んでいようと思ったんだけどなぁ。
0412デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 18:16:21.23ID:a4cVsRuX0
>>410
あらま、片山くんを俺だと思ってお構いなしにレスしてきたよw
本当に脳みそ無しで睾丸で物考えて条件反射してくるのなw
0413デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 18:19:13.53ID:iVFW+LnC0
412 名前:デフォルトの名無しさん (ワッチョイ f1d6-BMT5)[sage] 投稿日:2016/12/04(日) 18:16:21.23 ID:a4cVsRuX0 [101/101]

俺の釣りレスにマジになって100レスも書き込むヴァカがおるwwwwwwwwwwwwwwwwww

貴重な日曜全部費やして、こんなクソみたいな釣りにマジになるとかwwwwwwwwwwwwwwwwwwwwww

さすがプェチプァ〜wwwwwwwwwwwwwwwwww

頭おかしいガイジwwwwwwwwwwwwwwwwwwwwwwww
0414デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 18:23:23.93ID:iVFW+LnC0
412 名前:デフォルトの名無しさん (ワッチョイ f1d6-BMT5)[sage] 投稿日:2016/12/04(日) 18:16:21.23 ID:a4cVsRuX0 [101/101]

休日丸々wwwwwwwwwwww
$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
こんな見えてる釣りにwwwwwwwwwwwwwwwww
マジギレして100レスwwwwwwwwwwwwwww
これがペチプァ〜〜〜〜wwwwwwwwwwwwwwwwwwwwwwwww
頭に睾丸でも詰まってるのかwwwwwwwwwwwwwwwwwwwwwwwwwwww

ファーwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0415デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 18:25:01.44ID:iVFW+LnC0
こんなミエミエの釣りを爆喰いしちゃうなんて
今どきなかなかおらんで(´・ω・`)
プェチプァってやっぱ低脳やんな
0416デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 18:26:30.25ID:iVFW+LnC0
あまりのショックで憤死しちゃってレスできなくなっちゃったかな

次は目指せ200レスだおw ガイジヴォーイ ID:a4cVsRuX0
0417デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 18:30:12.40ID:a4cVsRuX0
初心者相手にしたレスで釣り宣言をはじめました。
片山くんのことすらしらずに食いついておいて、釣り宣言ですって。

もう、何を言っても説得力ありませんねー。
0418デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 18:31:48.61ID:iVFW+LnC0
>>417
まあ元気出せよゴミ屑
お前のようなゴミ屑ニートでもどっかで役に立つって、たぶんきっと
0419デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 18:32:21.86ID:a4cVsRuX0
>俺の釣りレスにマジになって100レスも書き込むヴァカがおるwwwwwwwwwwwwwwwwww


鏡ないのか、この人の家。貧乏なんだなぁ…
0420デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 18:33:02.75ID:a4cVsRuX0
NG宣言に必死になっていた睾丸にエンジンがかかり始めたようです。
0421デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 18:34:22.04ID:a4cVsRuX0
片山くんにまで突っ込まれた後で
後釣り宣言とか、今時中学生でもしませんねー。
0422デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 18:37:45.91ID:a4cVsRuX0
> >>261 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:09:05.30 ID:iVFW+LnC0
> >>258
> それ深刻なバグあるから止めた方がいいよ
> 俺のコードが一番正しい


はいはい、君のコードが一番正しかったねー
0423デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 18:43:26.90ID:a4cVsRuX0
初心者の質問にすら釣り()するようなゴミクズ、出入り禁止にしたほうがいいねー

ホントだとしても、嘘()だとしても
0424デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 18:47:37.99ID:a4cVsRuX0
初心者の真剣な質問で釣り()とかする人でなしの神経、わからんわー
日本人じゃないんだろうなー
0425デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 18:48:44.60ID:iVFW+LnC0












て100レスも書き込むヴァカがおるwwwwwwwwwwwwwwwwww

なんかまだ記録伸ばしとるでwwwwwwwwwwwwwww
200レス目指すのか!?!?wwwwwwwwwwwwww?!?wwwwwwww
ID:a4cVsRuX0
0426デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 18:50:04.29ID:iVFW+LnC0
252 名前:デフォルトの名無しさん (ワッチョイ f1d6-BMT5)[sage] 投稿日:2016/12/04(日) 10:17:58.35 ID:a4cVsRuX0 [1/108]
>>251
どっちもダメ

281 名前:デフォルトの名無しさん (ワッチョイ f1d6-BMT5)[sage] 投稿日:2016/12/04(日) 11:34:33.34 ID:a4cVsRuX0 [16/108]
>>276
悪いね、>>252の時点で、君が質問してきたらすぐに答えてやるつもりだったが、
想像以上にID:iVFW+LnC0がバカ過ぎる。

君が可愛そうでしょうがないが、ここは2chなのでID:iVFW+LnC0みたいな本物のバカが
さもわかったような顔をして居るのはしかたないことだ。

あんまりオススメはできないが、teratailあたりで顛末を話して教えてもらいなさい。
今日、今のここはアホしかいないから、俺もマトモにレス出来ない。


>>424
おまえのレスもたいがいやんけwwwww
同族ゥ−!
0427デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 18:52:11.76ID:a4cVsRuX0
>>426
あれ? NGしてたんじゃなかったの?
気になって覗くくらいなら、最初っからNGとかしなければいいのにw

やっぱ、おちょこのやる事は何もかも中途半端だよなぁ。
0428デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 18:53:16.86ID:a4cVsRuX0
>>426
おまえが馬鹿すぎるから質問者を早めに逃したの、わかんなかったの?
やっぱ特亜級の人は、自分のことしか考えてないね
0429デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 18:54:37.87ID:iVFW+LnC0
>>428
ご立派ご立派
後付けの言い訳だけは頭の回転が早いようで
0430デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 18:55:21.01ID:a4cVsRuX0
てか、

>同族ゥ−!

ってw
「偉そうなこと言っても、俺と同じ部類だぞ」って言って満足するバカ、初めて見たwwww
0431デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 18:59:00.16ID:a4cVsRuX0
>>429
> 後付けの言い訳だけは頭の回転が早いようで

うん、少なくとも即座に「ヤバイ」と思って質問者を逃がせるところをみると、
関係ない人からツッコミ入って慌てて釣り()宣言する誰かさんよりは、頭の回転は早そうだねw
0432デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 18:59:55.96ID:a4cVsRuX0
同族の意味、わかってんのかなぁ? 本当に特亜の人か…
0433デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 19:01:23.12ID:a4cVsRuX0
> >>261 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:09:05.30 ID:iVFW+LnC0
> >>258
> それ深刻なバグあるから止めた方がいいよ
> 俺のコードが一番正しい


はいはい、君のコードが一番正しかったねー
0434デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 19:02:03.46ID:a4cVsRuX0
認めてやっとけば、滿足して帰るだろ、「同族」の意味すらわかんない奴だし…
0435デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 19:03:58.71ID:iVFW+LnC0
釣り宣言後も食いつくヴァカ初めて見た
相当な負けず嫌いだなw
0436デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 19:05:14.78ID:a4cVsRuX0
>釣り宣言後も食いつくヴァカ初めて見た
>相当な負けず嫌いだなw


はいはい、君のコードが一番正しかったねー
君が王様だねー
0437デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 19:06:14.65ID:a4cVsRuX0
> >>261 : デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 11:09:05.30 ID:iVFW+LnC0
> >>258
> それ深刻なバグあるから止めた方がいいよ
> 俺のコードが一番正しい
> $st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);


はいはい、君のコードが一番正しかったねー
0438デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 19:07:50.46ID:a4cVsRuX0
これ、次回から>>1に追加しようぜw

> それ深刻なバグあるから止めた方がいいよ
> 俺のコードが一番正しい
> $st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);


はいはい、君のコードが一番正しかったねー
0439デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 19:10:07.34ID:a4cVsRuX0
> ID:iVFW+LnC0

おい、次から >>1 に追加するから、ちょっと名前教えてくれよw
さぞかし名のある技術者なんだろ?wwww
0440デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 19:12:09.52ID:a4cVsRuX0
初心者の質問に、なんの前触れもなく釣り()で欠陥コードを教える、
極悪非道のスーパーバカー ID:iVFW+LnC0 さんを、子々孫々まで語り継ごう!
0441デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 19:12:45.62ID:a4cVsRuX0
あ、さーせん、
スーパーバカーは、スーパーハッカーの間違いです。
うっかりタイプミスしましたwww

ほんま、さーせんw
0442デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 19:15:03.96ID:a4cVsRuX0
>おまえのレスもたいがいやんけwwwww
>(俺と)同族ゥ−!

スーパーハッカーのOKの判断基準w
0443ちんぽ剥き出し(幹部クラス) ◆360jPyDFno (ワッチョイ d185-yQe2)2016/12/04(日) 19:17:05.54ID:iVFW+LnC0
はい
0444デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 19:19:59.17ID:a4cVsRuX0
うわぁ… くそつまんえぇし、意味分かんねぇ… 面白いと思ったのかな?

これがスーパーバカーたる所以か…
0445デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 19:20:57.24ID:iVFW+LnC0
まだ続けるの?
0446ちんぽ剥き出し(幹部クラス) ◆360jPyDFno (ワッチョイ d185-yQe2)2016/12/04(日) 19:21:36.10ID:iVFW+LnC0
君、丸一日このスレに張り付いてたみたいだけど
そんなんでいいの?
0447デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 19:21:54.45ID:a4cVsRuX0
>>445

俺に聞くなよw お前次第だよw
誰が原因だと思ってんだよw
0448デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 19:22:33.40ID:a4cVsRuX0
>>446
俺に聞くなよ、お前の事はなんで無かったことになってんだよw

おれはやることやってんだよw
0449デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 19:24:11.83ID:a4cVsRuX0
ほら、こっちはそろそろ終わるぞ?

お前はどうすんだよw スーパーバカー
0450ちんぽ剥き出し(幹部クラス) ◆360jPyDFno (ワッチョイ d185-yQe2)2016/12/04(日) 19:24:37.61ID:iVFW+LnC0
> おれはやることやってんだよw

へえ
初心者ペチプァ〜を正しい道に導くお仕事かな?
0451デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 19:29:33.07ID:a4cVsRuX0
>初心者ペチプァ〜を正しい道に導くお仕事かな?

おめーは宣教師かなんかか?

プログラマならプログラマらしいことしろよ、ゴミカス
0452デフォルトの名無しさん (ワッチョイ f1d6-BMT5)2016/12/04(日) 19:30:48.63ID:a4cVsRuX0
ほい、テストも終わったよ。
ほんと、おめーこそ1日何やってたんだよ。

風呂入ってくるから、せいぜい言い訳してろ、後で添削してやるから。
0453デフォルトの名無しさん (ワッチョイ 8342-/mAi)2016/12/04(日) 22:08:35.18ID:eI7Tmf7L0
書いた人は釣りねらいでワザとやってると思う
0454デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 22:55:11.01ID:iVFW+LnC0
ゴミカスペチプァ〜
まだやっとるんか?
0455デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 22:56:39.73ID:iVFW+LnC0
>>452
小学生かな?

それとも、日曜日もクッサイクッサイプェチピィなんて書くことを強いられてるカアイソウな身分の方?
0456デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/04(日) 23:55:30.79ID:iVFW+LnC0
逃げたか、ゴミ屑ペチプァ〜w
0457デフォルトの名無しさん (ワッチョイ 2aaf-NTgB)2016/12/05(月) 05:38:38.60ID:XsASdaCq0
中間コードでpython超えたな
0458デフォルトの名無しさん (JP 0H72-r6VC)2016/12/05(月) 11:07:08.76ID:yklFhliPH
このクラス、なんというクラス名にしたらいい?

class Foo
{
  private $data = [];

  public function __construct($data)
  {
    $this->data = $data;
  }

  public function __get($name)
  {
    if (array_key_exists($name, $this->data)) {
      return $this->data[$name];
    } else {
      return null;
    }
  }
}
0459デフォルトの名無しさん (ワッチョイ d185-yQe2)2016/12/05(月) 22:44:23.43ID:MzBxRBIo0
>>458
無意味なクラスだからfooでもhageでも何でもいいんじゃない
0460デフォルトの名無しさん (ワッチョイ 8d85-yQe2)2016/12/06(火) 00:16:56.59ID:r0hSL9Mg0
>>458
PHPerってこういう無駄な再発明大好きだよね

言語が増長させてるのか、それともPHPerがバカなのか
どっちだと思う?
0461デフォルトの名無しさん (ワッチョイ 2aaf-NTgB)2016/12/06(火) 00:46:23.81ID:htjN7Smq0
>>458
issetの方がいいよ
php7なら $this->data[$name] ?? null で
0462デフォルトの名無しさん (JP 0H72-r6VC)2016/12/06(火) 13:11:22.99ID:divUGXK8H
>>458
>>459
意味はあるよ。
こんな使い方。
class User
{
  private $id;
  private $name;
  private $email;
  private $tel;

  public function __construct(Foo $data)
  {
    $this->id = $data->id;
    $this->name = $data->name;
    $this->email = $data->email;
    $this->tel = $data->tel;
  }
}

// 必要な属性だけ指定してインスタンス化
$user = new User(new Foo(['name' => 'abc', 'email' => 'def']));

>>461
レス、サンクス。
0463デフォルトの名無しさん (ワッチョイ f156-fiY4)2016/12/06(火) 18:12:11.15ID:JcfxhrYu0
>>461
isset()だと配列の値にnullが入っている時に期待した結果が得られないので
使い方としてはarray_key_exists()のが正しいでしょ

もっとも>>458のコードなら結果は同じになるから
言語構造として高速に処理されるisset()でもいいのだけど
0464デフォルトの名無しさん (ワッチョイ f156-fiY4)2016/12/06(火) 18:16:53.16ID:JcfxhrYu0
>>462
ArrayAccessでググると幸せになれるかもね
0465デフォルトの名無しさん (スッップ Sda8-4nGE)2016/12/06(火) 19:22:55.54ID:PCB2coTrd
error_logで指定ファイルに書き込む時ってロックの処理はphp側がやってくれますか?
つまり、同じタイミングでerror_logがコールされても両方の内容が混ざったり途切れたりしませんか?
error_logのドキュメントのどこにもファイルロックについての記述がないから不安
0466デフォルトの名無しさん (ワッチョイ 8d85-yQe2)2016/12/06(火) 21:30:59.95ID:r0hSL9Mg0
>>462
バグ仕込むの好きそう
0467デフォルトの名無しさん (JP 0H72-r6VC)2016/12/07(水) 10:48:17.99ID:RQ1fz/bFH
>>465
> error_logで指定ファイルに書き込む時ってロックの処理はphp側がやってくれますか?
Unix系OSで直接ファイルに出力する場合は、PHPがロックします。

# 試してみる方法
# 2つのPHPプロセスを起動してノーウェイトで5000バイトのログを1万回出力する
for x in A B; do php -r 'ini_set("error_log","/tmp/test.log");for($i=0;$i<10000;$i++)error_log(str_repeat("'$x'",5000));' & done
(ログファイルは1GBになります)

心配ならソースを見ることをお勧めします。error_logの実装はext/standard/basic_functions.cにあります。
あるいは、syslogを使うとか。
0468デフォルトの名無しさん (JP 0H72-r6VC)2016/12/07(水) 10:51:14.55ID:RQ1fz/bFH
あ、5KB*10K回*2processだから、1GBじゃなくて100MB(+行ヘッダ分)でした。
0469デフォルトの名無しさん (ワッチョイ ebce-drn7)2016/12/08(木) 18:36:24.51ID:OrP/1tFO0
$a = 1, 2, 3, 4, 5, 6;
$b = 2, 4, 7, 8, 9, 10;

上記の$bを、$aにも含まれる値だけ排除したいんですけど、どうすればいいんですか?
最終的に

return 7, 8, 9, 10;

したいです
0470デフォルトの名無しさん (JP 0H1f-w4ID)2016/12/08(木) 18:44:12.48ID:el1RUHvYH
>>469
$a, $bが配列なら、array_diff($b, $a)
0471デフォルトの名無しさん (ワッチョイ 4bd6-gb6D)2016/12/08(木) 19:29:34.95ID:0ZPHkgBc0
>>470
それ深刻なバグあるから止めた方がいいよ
正しくは、こう

$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
0472デフォルトの名無しさん (ワッチョイ 6bc9-0Emn)2016/12/08(木) 23:41:47.59ID:lC9K7mam0
>>470
それだと
null, null, 7, 8, 9, 10,
になる。それでいいならいいけれどさ。もういっちょ関数かまして整列させると吉。
0473デフォルトの名無しさん (ワッチョイ 7b85-mK2l)2016/12/09(金) 00:32:08.92ID:D7O+rItB0
PHPの人気が落ちてきてるらしいね
PHP7の登場もあったのに
なぜ?
0474デフォルトの名無しさん (ワッチョイ d342-WrC4)2016/12/09(金) 01:00:11.35ID:Bxx28N620
そうなの?
代わりに人気の出た言語って何?
0475デフォルトの名無しさん (ワッチョイ 7b85-mK2l)2016/12/09(金) 01:05:15.48ID:D7O+rItB0
ttp://www.tiobe.com/tiobe-index/


PHP使ってるのってもう日本のナンチャッテWEB系企業くらいしか残されてないんちゃうか
0476デフォルトの名無しさん (ワッチョイ d342-WrC4)2016/12/09(金) 01:07:19.26ID:Bxx28N620
何だ業界の人間じゃないんだ?
0477デフォルトの名無しさん (ワッチョイ b3f8-drn7)2016/12/09(金) 04:48:38.67ID:9utkwVnD0
もともと近年そんなもんだったし
PerlやRubyも下がってるの見れば本質が見えてくるだろ
PHPがオワコンなんじゃなくてWebがオワコンってな
0478デフォルトの名無しさん (JP 0H1f-w4ID)2016/12/09(金) 10:21:23.44ID:kAdF1NvvH
>>472
> null, null, 7, 8, 9, 10,
> になる。

ならないよ。
> $a = [1, 2, 3, 4, 5, 6];
> $b = [2, 4, 7, 8, 9, 10];
> print_r(array_diff($b, $a));

PHP 5.6.27 (cli) (built: Oct 14 2016 14:06:54)の結果
Array
(
[2] => 7
[3] => 8
[4] => 9
[5] => 10
)

PHP 7.1.0 (cli) (built: Dec 1 2016 07:08:49) ( NTS )の結果も同じ

> もういっちょ関数かまして整列させると吉。
array_values(array_diff($b, $a))の方がいいね。
0479469 (ワッチョイ ebce-drn7)2016/12/09(金) 18:06:47.89ID:hmFfr0aK0
みなさんレスありがとうございます

一応やりたい事はarray_diffの応用でできました

>>471
深刻なバグというのはどういったものでしょうか?
ググっても出てきませんでした
0480デフォルトの名無しさん (ワッチョイ cfcb-YmwQ)2016/12/09(金) 18:20:51.87ID:Oju9Q0No0
>>479
相手にしなくてよい
内容から容易に判断出来るだろう, 2chとはそういうところ
0481デフォルトの名無しさん (ワッチョイ 7b85-mK2l)2016/12/09(金) 22:50:45.48ID:D7O+rItB0
phpのarray標準関数使ってる時点でおわっとル
0482デフォルトの名無しさん (ワッチョイ ef3e-xm+r)2016/12/10(土) 00:19:09.85ID:sPlkpY+00
>>475
お、C#やVB.Netと同じくらい普及してる
すごいーPHP
0483デフォルトの名無しさん (ワッチョイ 4bd6-gb6D)2016/12/11(日) 15:44:05.62ID:YZ89dj950
んー? 随分時間立ったけど、どうなったんだ? >>243-245 に対するレス

> DDLのロールバックに触れるならシーケンスについても触れたら?と思う。
> アトミックについては片手落ち。分離レベルに依存する話だからね。
> それ以外は大体いいんじゃないの。
> ただ、質問に対する回答としてはTMIと言わざるを得ない。
> そういう意味で、一般的な例である送金処理のリンクを貼っておけば終わっていた話なのではないかと思う。

こんだけ能書き垂れたんだから、模範解答くらい書けるだろ、当然。
>>218-219 に対する、最適なレス、早く書けよw

ノータリン >>242 ID:pjHuRuWW0

書けなきゃ、お前は妄想だけでっかいゴミクズ確定なw
0484デフォルトの名無しさん (ワッチョイ 7b85-rXHS)2016/12/11(日) 15:59:53.14ID:ZTpNN/gU0
>(ワッチョイ 4bd6-gb6D)
うわあ・・・こんなレスしといて、人様のことよくノータリンとか言えるな
「お前は妄想だけでっかいゴミクズ確定なw」


471 名前:デフォルトの名無しさん (ワッチョイ 4bd6-gb6D)[sage] 投稿日:2016/12/08(木) 19:29:34.95 ID:0ZPHkgBc0
>>470
それ深刻なバグあるから止めた方がいいよ
正しくは、こう

$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);


483 名前:デフォルトの名無しさん (ワッチョイ 4bd6-gb6D)[sage] 投稿日:2016/12/11(日) 15:44:05.62 ID:YZ89dj950
んー? 随分時間立ったけど、どうなったんだ? >>243-245 に対するレス

> DDLのロールバックに触れるならシーケンスについても触れたら?と思う。
> アトミックについては片手落ち。分離レベルに依存する話だからね。
> それ以外は大体いいんじゃないの。
> ただ、質問に対する回答としてはTMIと言わざるを得ない。
> そういう意味で、一般的な例である送金処理のリンクを貼っておけば終わっていた話なのではないかと思う。

こんだけ能書き垂れたんだから、模範解答くらい書けるだろ、当然。
>>218-219 に対する、最適なレス、早く書けよw

ノータリン >>242 ID:pjHuRuWW0

書けなきゃ、お前は妄想だけでっかいゴミクズ確定なw
0485デフォルトの名無しさん (ワッチョイ 7b85-mK2l)2016/12/11(日) 19:04:25.81ID:ZTpNN/gU0
んー? 随分時間立ったけど、どうなったんだ? >>484 に対するレス

こんだけ能書き垂れたんだから、模範解答くらい書けるだろ、当然。
>>484 に対する、最適なレス、早く書けよw

ノータリン >>483 ID:YZ89dj950

書けなきゃ、お前は妄想だけでっかいゴミクズ確定なw
0486デフォルトの名無しさん (ワッチョイ 4bd6-gb6D)2016/12/12(月) 02:19:47.94ID:j3TQp/z10
なに? この気違い >>484-485 ID:ZTpNN/gU0

何を応えてほしいのか、ちゃんと纏めてから
もう一回書き直してくれる?

統合失調なら、お医者さんで薬もらって安静にして引きこもっててね。
0487デフォルトの名無しさん (ワッチョイ 7b85-mK2l)2016/12/12(月) 08:15:11.71ID:2ZMMoT2S0
>>486
それ深刻なバグあるから止めた方がいいよ
正しくは、こう

$st = $pdo->prepare(' SELECT id FROM test WHERE '.$_GET['id']);
0488デフォルトの名無しさん (ワッチョイ 4bd6-gb6D)2016/12/12(月) 18:54:29.48ID:j3TQp/z10
はいはい、凄い凄い。何いってんだかほんとわかんねーな、この気違い。
0489デフォルトの名無しさん (ワッチョイ 7b85-mK2l)2016/12/12(月) 23:25:54.02ID:2ZMMoT2S0
>>488
自分のレスよく読もう >>484
0490デフォルトの名無しさん (ワッチョイ 4ba0-5aUd)2016/12/13(火) 01:23:48.86ID:EQBenzg80
PHPでデータベース接続して作業することになったんだけど
PHPなんて学生時代にかじった程度だしMySQL?にいたってはたくさんのデータを保存しておく場所という知識しかない
MySQLから勉強すべきかPHPを進めるべきかどっちがいいのだろうか?
後、接続方法って簡単?
0491デフォルトの名無しさん (ワッチョイ d3f8-drn7)2016/12/13(火) 04:11:13.28ID:z1j4sD/10
PHP「なんて」学生時代にかじった程度なんて言い方すると、
他の言語はバリバリにやってるように聞こえるんだが、
もしそうならそんな質問するわけないよな・・・
0492デフォルトの名無しさん (ワッチョイ ef17-YmwQ)2016/12/13(火) 05:15:19.65ID:lELZPdWl0
amazonだと「 php mysql 」で1000冊近く書籍が出てるから好きなの買えばよろしい
0493デフォルトの名無しさん (ワッチョイ cfcb-WrC4)2016/12/13(火) 06:05:10.74ID:fKP5nT8q0
>>490
プログラミング自体に明るくないのならとりあえずPHPで何か書いてみることを勧める
入門レベル程度ならSQLの方が圧倒的に学習量少ないからファイルIOやって, その代わりにDB使おうって思ったときにでもさらっと出来るんでは

接続に関してはPHPは組み込みでサポートしてる
MySQL/MariaDBのインストール/設定に比べたらPHPから利用する設定の方が大分簡単
0494デフォルトの名無しさん (JP 0H9f-Ts63)2016/12/13(火) 13:49:34.93ID:ROOCuyiAH
自分でMySQLインストールして、PHPセットアップしてとなると大変だが
既にDBがあって、PHPが使えるようになってて、他の設定も済んでいるなら
簡単に作れると思うよ。
SQLは大丈夫というレベルなら、pdoかmysqliで簡単に操作できるでしょう。
0495デフォルトの名無しさん (ワッチョイ 4ba0-5aUd)2016/12/13(火) 16:35:32.35ID:EQBenzg80
>>491
htmlとかCSSのおまけで教えてもらった程度の知識しかない

>>492->>494
ありがとう
とりあえずPHPの入門書買ってくるわ

もしこれおすすめって本あったら教えてください
0496デフォルトの名無しさん (ワッチョイ 4bd6-gb6D)2016/12/13(火) 22:37:56.25ID:2MmvJD7M0
うーん、

時代遅れな上に頓珍漢な情報だらけの書籍とか、よく勧めるなぁ…
よっぽどどうでもいいと思ってるのかな?

ちょっと、これはお勧めと思う本とか、挙げてほしいもんだ。
0497デフォルトの名無しさん (ワッチョイ b716-drn7)2016/12/13(火) 22:41:28.69ID:R+9rJdRg0
ダメな自分を救う本 人生を劇的に変えるアファメーション・テクニック (祥伝社黄金文庫)

10万人の悩みを救ったベストセラー、ついに文庫化!
自分を変える! 最強の自己セラピー
※著者が直接語りかける!
0498デフォルトの名無しさん (ワッチョイ 4bd6-gb6D)2016/12/13(火) 22:47:06.46ID:2MmvJD7M0
つまんねぇ…
0499デフォルトの名無しさん (ワッチョイ 7b85-mK2l)2016/12/13(火) 23:19:08.32ID:QKhZWs7J0
php自体時代遅れ・・・って本当のこと言っちゃダメな流れ?
0500デフォルトの名無しさん (ワッチョイ 0bfe-drn7)2016/12/14(水) 07:17:50.02ID:anjzvTtV0
例外やら細かな設定やら省いてDBへの接続は1行で書ける。
DBへの挿入はさすがにプリペアドステートメント使ったほうがいいから数行必要だし、
選択はとってきたあとどうするかを書かないといけないから一番面倒だけど、
それでもコード数でいえば10行もあれば済むレベル。
PHPでやることは少ないし、DB自体の設計やらからするなら、DBがどういうものかを勉強したほうがいい。
0501デフォルトの名無しさん (ワッチョイ 07c9-drn7)2016/12/14(水) 09:28:19.31ID:EWZR46Dr0
>>496
お前がお勧めを挙げろよバーカ
0502デフォルトの名無しさん (ワッチョイ 4b56-xm+r)2016/12/14(水) 10:46:21.58ID:jAtKOHDj0
否定するだけで自ら生産性のある事は何もしない
というのは無能の象徴みたいなもんだ

ある程度大きな会社になると1人はそういう奴いるでしょw
0503デフォルトの名無しさん (ワッチョイ 8da0-1mcA)2016/12/15(木) 09:52:54.41ID:Vhv2ObLt0
>>499
今最先端ってなによ?
0504デフォルトの名無しさん (ワッチョイ 8dd6-2rs/)2016/12/15(木) 18:57:16.58ID:uRShwsN70
>>501
ごみくず、「ロクな本が無いから勧めるものなんて無い」と言ったのが分からなかったのか? 文盲。
勧める物がないのに、どうやって勧めるんだよ、言ってみろ、ゴミクズ。

>>502
本を勧めるのが「生産性」っすか、低能の発想は面白いっすね。
0505デフォルトの名無しさん (ワッチョイ 8d56-W4F2)2016/12/15(木) 19:58:39.68ID:K15wlUgN0
今回の場合なら例えば
勧める本が無いならどうやって学習していくのがお勧めか
そもそも今からならPHP以外の選択肢を勧めるのか
そういった回答をするのが生産性のある行動だ

少なくとも、PHPのスレにはりついて低能だの何だの書くことには生産性のカケラもない
繰り返すけど、否定するだけで自ら生産性のある事は何もしないというのは無能の象徴
自分の能力の低さをさらけ出す羞恥プレイをやりたいなら、どうか他所でやって下さいな
0506デフォルトの名無しさん (ワッチョイ a036-1O4+)2016/12/15(木) 19:58:51.89ID:YjtMYThz0
phpとmysql勉強がてら物凄い簡単なblogを作ろうとしたんですがいきなり躓きました。
色々なブログ見ましたが、なんで拡張子がhtmlなんでしょうか。

考えていたもの
RDBにタイトルと記事と日付等を登録。
main.phpに記事順に並べる。該当記事をクリックすると引数渡して「blog.php」に飛ぶ
blog.phpでは該当引数からRDB読んで記事を表示
しかしそれだとすべての記事が「blog.php」になってしまいます。
まさかhtmlファイルを一つずつ作ってるとも思えませんし、一体どうやって記事番号.htmlみたいにしているのでしょうか?
0507デフォルトの名無しさん (ワッチョイ 9d7b-uX3G)2016/12/15(木) 20:05:43.67ID:qXG0x0ph0
int型のidとdatetime型のrtimeを持つt_recordテーブルがあります。
ここからidごとに5分以内のレコードを除いたレコードの合計数を求めたいのですが
どのようにすればどのようにすれば出来るでしょうか

例えば

id| rtime    
--+-----------------
1 | 2016-12-11 17:00 a(○)
2 | 2016-12-11 17:01 b(○)
1 | 2016-12-11 17:03 c(aから3分×)
3 | 2016-12-11 17:04 d(○)
2 | 2016-12-11 17:06 e(bから5分×)
3 | 2016-12-11 17:06 f(cから2分×)
1 | 2016-12-11 17:07 g(aから7分○)
2 | 2016-12-11 17:07 h(bから6分○)
3 | 2016-12-11 17:07 i(dから3分×)
1 | 2016-12-11 17:11 j(gから4分×)
3 | 2016-12-11 17:12 k(dから8分○)

このようなテーブルの場合(1番右のアルファベットは説明用です)

aと同一idでrtimeがaから5分以内のc
bと同一idでrtimeがbから5分以内のe
dと同一idでrtimeがdから5分以内のf
以下id同じくdから5分以内のi、gから5分以内のjを数えず、
a,b,d,g,h,kだけを数えた6という数字を導き出したいです。

sqlだけでは無理があったのでphpで処理をしようと思いましたが上手いやり方が思いつきません。
0508デフォルトの名無しさん (ワッチョイ f2af-0G5/)2016/12/15(木) 20:23:45.92ID:M5wcye860
>>506
PATH_INFO で調べてみて
あとアクセスされるphpファイルはひとつにしてそこから url (引数) で振り分ける
0509デフォルトの名無しさん (ワッチョイ a13c-f0Z7)2016/12/15(木) 21:05:03.76ID:R0cOIdww0
>>505
正論すぎワロタ
504みたいなのって何しにスレきてるんだろうな
そんなにphp嫌いなら見なけりゃいいのにphpに親でも殺されたのか
それともスレタイも読めないメクラなのか
0510デフォルトの名無しさん (ワッチョイ a13c-f0Z7)2016/12/15(木) 21:15:14.03ID:R0cOIdww0
>>506
サーバがapacheならmod_rewrite使うのがお手軽だけどおすすめはしない
それより

>まさかhtmlファイルを一つずつ作ってるとも思えません
なぜそう思うのかが不思議
リクエストの度にphpで処理して結果を出力するよりも
処理結果をhtmlファイルとしてキャッシュしておいて
2回目以降のリクエストはキャッシュがあればそれを出力
とした方が処理全体にかかるコストはグンと低くなる
ここらの考え方は言語がphpかどうかとか関係ないからしっかり理解した方がいいぞ
0511デフォルトの名無しさん (ワッチョイ bf42-8I6M)2016/12/15(木) 21:25:15.21ID:h9p732cR0
>>506
拡張子htmlだけど実体はphpってこともできる
0512デフォルトの名無しさん (ワッチョイ a036-1O4+)2016/12/15(木) 21:28:59.38ID:YjtMYThz0
>>508
.htaccessですか……全然分かってないから避けてたけど調べてみます。
しかしなるほど、POSTじゃなくてGETで渡して表示させてたんですね。
設定自体はまだ時間かかりますが、つまり

main.php 記事番号とタイトルを表示し、AタブはURL?項目名=値(記事番号)
blog.php GETで受け取った記事番号でSQL発行して画面表示

http://xxxx.com/main.phphttp://xxx.com/blog.php&;no=1
これがPATH_INFOでhttp://xxx.com/1.htmlになるんですね。
こんな方法があるとは……

>>510
キャッシュに出力。そんなこともできるんですね。
>>506で書いた時の話は、普通にhtmlファイルを作ってサーバに保管。
該当htmlにリンクを貼る。
というイメージの話でした。
0513デフォルトの名無しさん (ワッチョイ 9c7b-KEV/)2016/12/15(木) 21:55:30.10ID:kX3WZpE80
所定のディレクトリに、記事番号.htmlがあれば、それを読み込むし、無ければ作るのかも?

そうすれば、初回にそのファイルを作って、2回目以降は、そのファイルを読むだけで済む
0514デフォルトの名無しさん (ワッチョイ a036-1O4+)2016/12/16(金) 12:36:36.58ID:UnWzRR5I0
>>512です。
ローカルでは上手くいきましたがさくらインターネットでは上手くいきませんでした。
ローカル:
hoge/fuga/main.php
hoge/fuga/blog/blog.php
hoge/fuga/blog/.htaccess

さくら
/home/登録時ID/www/hoge-fuga/main.php
/home/登録時ID/www/hoge-fuga/blog/blog.php
/home/登録時ID/www/hoge-fuga/blog/.htaccess
(ドメイン:http://hoge-fuga.com/)

main.php記述
<a href = "blog/blog.php?id=1">クリック</a>

.htaccess記述
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9A-Za-z]+).html$ hoge/fuga/blog/blog.php?id=$1 [L]

長いので分割 続く
0515デフォルトの名無しさん (ワッチョイ a036-1O4+)2016/12/16(金) 12:37:05.99ID:UnWzRR5I0
長いので分割 続き

恐らくこう動いているはずという考え
hoge/fuga/blog/1.html → apacheで hoge/fuga/blog/blog.php?id=$1 に読み替え
hoge/fuga/blog/blog.php?id=$1を読み込んで表示
その際のURLはlocalhost/hoge/fuga/blog/1.html

さくらはRewriteRuleを修正しつつ何度か試して見ました。
RewriteRule ^([0-9A-Za-z]+).html$ home/登録時ID/www/hoge-fuga/main.phpblog/blog.php?id=$1 [L]
RewriteRule ^([0-9A-Za-z]+).html$ 登録時ID/www/hoge-fuga/main.phpblog/blog.php?id=$1 [L]
RewriteRule ^([0-9A-Za-z]+).html$ www/hoge-fuga/main.phpblog/blog.php?id=$1 [L]
RewriteRule ^([0-9A-Za-z]+).html$ hoge-fuga/main.phpblog/blog.php?id=$1 [L]
RewriteRule ^([0-9A-Za-z]+).html$ http://hoge-fuga.com/blog/blog.php?id=$1 [L]

これで動かなかったので試しに
RewriteRule ^([0-9A-Za-z]+).html$ http://www.yahoo.co.jp [L]
としてみましたが、普通に500エラーになりました。
どこがおかしいのでしょうか
0516デフォルトの名無しさん (ワッチョイ 8dd6-2rs/)2016/12/16(金) 13:19:03.95ID:+XZ70WGr0
>>505
>今回の場合なら例えば
>勧める本が無いならどうやって学習していくのがお勧めか
>そもそも今からならPHP以外の選択肢を勧めるのか
>そういった回答をするのが生産性のある行動だ
>少なくとも、PHPのスレにはりついて低能だの何だの書くことには生産性のカケラもない


教えてほしいなら「教えてください」って頭下げるのが人としてあたりまえのことだよね〜
なんでアホに教えて、アホの生産性に協力しなきゃいけないんだよ、乞食かw

>繰り返すけど、否定するだけで自ら生産性のある事は何もしないというのは無能の象徴
>自分の能力の低さをさらけ出す羞恥プレイをやりたいなら、

なんでそこが等号で結ばれるんだよ、丁寧に答えなきゃいけない義務でもあると思ってるのか?
お前らみたいに、ここで書き込みすることが生産性に関わってくる、本当の意味で無能なアホの論理は理解できんな

>どうか他所でやって下さいな

あー、その要求だけはマトモだな、アホなりに。 でも、受け入れねーけどw

てか、能書き垂れてる暇があるなら、お前が良い学習方法教えてやればいいじゃんw
できねーの? 無能だねーwwwwwwwwwwwwwww
0517デフォルトの名無しさん (ワッチョイ 8dd6-2rs/)2016/12/16(金) 13:22:42.97ID:+XZ70WGr0
>>509
>>>505
>正論すぎワロタ

超馬鹿www おまえの都合で勝手に論理を正当化するなよw

>504みたいなのって何しにスレきてるんだろうな
>そんなにphp嫌いなら見なけりゃいいのにphpに親でも殺されたのか

親は殺されてないが、お前みたいに「掲示板の書き込みが生産性に関わっちゃうw」
マヌケには迷惑かけられまくってるな

>それともスレタイも読めないメクラなのか

どっかに「必ず答えなきゃいけない」ってかいてありますかーーーーっw???
下らない質問が書き込める場所としか書いてないんちゃうのん? 頭大丈夫?

てか、「下らない」質問なんだろ? 真面目に答える必要ねーじゃんw

ばあーーーーーーーーーーーーーかw
0518デフォルトの名無しさん (ワッチョイ 8dd6-2rs/)2016/12/16(金) 13:25:00.33ID:+XZ70WGr0
超生産性のあるレスw


>>492 : デフォルトの名無しさん (ワッチョイ ef17-YmwQ)2016/12/13(火) 05:15:19.65 ID:lELZPdWl0
>amazonだと「 php mysql 」で1000冊近く書籍が出てるから好きなの買えばよろしい
0519デフォルトの名無しさん (JP 0H9a-NX/j)2016/12/16(金) 14:17:09.88ID:1IWVJy5MH
>>510
> サーバがapacheならmod_rewrite使うのがお手軽だけどおすすめはしない
その理由は?
0520デフォルトの名無しさん (ワッチョイ 39b2-8I6M)2016/12/16(金) 14:28:03.31ID:DU/UBnAK0
>>514
PHP側でキャッシュHTMLを出力するのでなくその方法で実現を目指すならApacheスレで尋ねるのが適当
0521508 (ワッチョイ f2af-0G5/)2016/12/16(金) 15:08:39.48ID:YxeA971B0
>>514
.htaccessって言ったかな?
そのやり方は普通じゃないよ

まずアクセスされるphpはindex.phpだけにして
.htaccessで全部index.phpに渡す
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

あとはindex.php内で PATH_INFO見て
/ だけならトップページ
/blog/ なら記事一覧
/blog/aaa.html なら aaaa の記事を表示すればいい
(ほんとは .html とか要らないけどまあ好みで)
0522デフォルトの名無しさん (ワッチョイ a036-1O4+)2016/12/16(金) 16:17:40.61ID:UnWzRR5I0
さくらのサポートに電話して解決しました。
命令文も改行コードも文字コードも正しいけど、見えない何かが何かがおかしい
ってことで一から書き直したら動きました。
ここで返事くれた方もさくらのサポートさんもありがとうございました。
0523デフォルトの名無しさん (JP 0H9a-NX/j)2016/12/16(金) 17:18:05.56ID:1IWVJy5MH
>>522
"PHP ルーティング"でググって、いろいろ読んでみるといいかも。
0524デフォルトの名無しさん (ワッチョイ 74c9-0G5/)2016/12/16(金) 23:34:44.26ID:DjMajEbY0
全角スペースとか文字参照とかかね
0525デフォルトの名無しさん (ワッチョイ 7985-VX9/)2016/12/16(金) 23:57:25.05ID:HNJ5uGit0
ペチパーってほんとどうしようもないくらい無能のゴミだよな
いやゴミは元々役に立ってたものだけど、ペチパーは何の役にも立たないからゴミ以下
ペチパー<ゴミ
0526デフォルトの名無しさん (ワッチョイ 8dd6-2rs/)2016/12/17(土) 13:16:17.85ID:aWca00E+0
>>525
ペチパーは、お前みたいなゴミクズでも見下せるからお手軽でいいな。
0527デフォルトの名無しさん (ワッチョイ 7985-VX9/)2016/12/17(土) 14:02:58.08ID:HUzLix+O0
>>526
ほんとそうだな
惨めだよな、ペチパーは
0528デフォルトの名無しさん (ワッチョイ 8dd6-2rs/)2016/12/17(土) 15:27:51.29ID:aWca00E+0
お前もそう変わらんと言ってるんだけどな。まぁ、おまえがそれでいいなら良いんだろう。
0529デフォルトの名無しさん (ワイモマー MM05-0G5/)2016/12/18(日) 07:13:33.02ID:rasa5l4zM
あるウェブサービスにbasic認証をして取得するapiがあります
これにphpでアクセスしようとしているのですが
毎回リクエストヘッダにAuthorizationを付加する必要があるのでしょうか?
なんとなく処理コスト的に無駄な気がするのですが
0530デフォルトの名無しさん (ワッチョイ 7985-VX9/)2016/12/18(日) 10:53:37.90ID:v8zNK0rs0
PHPの存在自体が無駄だからセーフ
0531デフォルトの名無しさん (JP 0Hea-A52a)2016/12/18(日) 21:09:33.22ID:yPKjU4QVH
>>529
HTTPは基本的にステートロスだから、仕方ないかと
ブラウザは、そこらへんはうまくやってくれて、パスワード入力は一度で済むようにしてくれてると。

もしapi設計側だったら、別の仕組みとかありそうだけどw
0532デフォルトの名無しさん (ワッチョイ bf42-8I6M)2016/12/19(月) 01:02:10.38ID:dPpwmd9E0
>>507
http://ideone.com/PiQs7X
0533デフォルトの名無しさん (ワッチョイ 7985-VX9/)2016/12/19(月) 01:19:23.26ID:lnovLV+Y0
>>532
きったねえコードだなオイw
0534デフォルトの名無しさん (ワッチョイ bf42-8I6M)2016/12/19(月) 01:21:56.54ID:dPpwmd9E0
だって誰もやらないんだものw
0535デフォルトの名無しさん (ワッチョイ a030-Azor)2016/12/19(月) 21:32:07.47ID:RnCFnbbl0
閉じタグやめちくり〜w
0536デフォルトの名無しさん (ワイモマー MM2f-i5Qz)2016/12/23(金) 06:14:28.77ID:4E/uUjv0M
JavaScriptで言うjsbinみたいに
phpをオンラインでサラッと書けて動作を確かめられるサービスないですか?
0537デフォルトの名無しさん (ワイモマー MM2f-i5Qz)2016/12/23(金) 06:16:45.50ID:4E/uUjv0M
http://sandbox.onlinephpfunctions.com/

ありました
0538デフォルトの名無しさん (ワイモマー MM2f-i5Qz)2016/12/23(金) 07:41:37.22ID:4E/uUjv0M
http://sandbox.onlinephpfunctions.com/code/cf299ce87075f3b5cc145f0a36be8a4eeb86e38f

date_createでは作成時のタイムゾーン指定がその後の処理にも影響するのでしょうか?
同じようにdate_formatしても、設定時のタイムゾーンを再現します
この動きは気持ち悪いですよね?
datetimeオブジェクトにした時点でタイムゾーンは抽象化されて、
あとは出力時の指定に従って欲しいのが普通です
この場合はデフォルトタイムゾーンがtokyoなのでどっちもtokyoとして表示して欲しいです
何でこんな変な動作なのでしょうか?
0539デフォルトの名無しさん (ワイモマー MM2f-i5Qz)2016/12/23(金) 08:06:00.48ID:4E/uUjv0M
どうもdatetimeオブジェクトは一つ一つが固有のタイムゾーンを持っているようですね
それは、いるのか?
phpに良くある標準クラスダサい問題がここにもあるような気がします
0540デフォルトの名無しさん (ワイモマー MM2f-i5Qz)2016/12/23(金) 08:43:21.86ID:4E/uUjv0M
date等の旧い関数でも、64bitがデファクトになった今では
2038年問題は出ないんですよね?
datetimeみたいなくそださクラスを使うより関数でシンプルにやる方が良くないですか?
0541デフォルトの名無しさん (ワイモマー MM2f-i5Qz)2016/12/23(金) 08:46:03.02ID:4E/uUjv0M
というか2038年になったら128bitOSの上でphp20が走ってますよねプゲラ
0542デフォルトの名無しさん (ワッチョイ 8385-huxb)2016/12/23(金) 10:06:36.91ID:yIxDn18f0
php20になってもarray_hogehoge($nazono, $hikisuu)
とかやってんのかな
0543デフォルトの名無しさん (ワッチョイ df17-n/sn)2016/12/23(金) 13:15:48.49ID:uTzeTHHR0
ヴィジュアルプログラミング的な手法が主流になるでしょう
0544デフォルトの名無しさん (ワッチョイ 8ff8-i5Qz)2016/12/28(水) 21:09:26.74ID:6nWlEfTF0
PHP20とか今のペースじゃ100年後だろ
そのころにはAIが勝手にプログラムしてるよ
0545デフォルトの名無しさん (ワッチョイ fb85-6Sai)2016/12/29(木) 07:28:57.89ID:VeuJGhxe0
でもペチパーは車輪の再発明を続けます
0546デフォルトの名無しさん (ワイモマー MM4f-Sa8B)2016/12/29(木) 10:20:08.68ID:QiV7ZTorM
機械学習で使われるプログラミング言語トップ8
https://news.biglobe.ne.jp/it/1227/mnn_161227_3953009203.html

pythonやJavaScriptがあるのに何故phpが入っていないのでしょうか?
facebookはもうphpを中心に使ってないのでしょうか?
0547デフォルトの名無しさん (ワッチョイ 06af-Sa8B)2016/12/29(木) 12:03:22.44ID:WL48XD2u0
phpはweb言語だから
0548デフォルトの名無しさん (ワッチョイ ff42-O/vA)2016/12/29(木) 13:50:55.27ID:4JfnTdGo0
PHP 7で性能上がったから
今後は少しは使われるようになるかもね。
便利なライブラリでも出てくるようになればだが(Pythonが上位の理由だね)
0549デフォルトの名無しさん (ワッチョイ eb8c-Kqee)2016/12/29(木) 22:41:34.06ID:3fA0wham0
phpのソースって読んだことありますか?
0550デフォルトの名無しさん (ワッチョイ 07ce-Sa8B)2016/12/30(金) 03:36:42.79ID:2Pbjmvkx0
下記のコードで結果を テキスト1テキスト4 と出力させたいんですが、
どうしても◆(の中に"?")マークに文字化けしてしまいます

-----------------
$items = array(
"テキスト1,テキスト2,テキスト3",
"テキスト4,テキスト5,テキスト6"
);

$values = explode(",", $items);
foreach ($values as $val) {
$out .= $val[0];
}

echo $out;
-----------------

[0]を外すと文字化けしないんですが……、これは何が原因でしょうか?
0551デフォルトの名無しさん (ワッチョイ 3bb2-4Ie9)2016/12/30(金) 03:55:23.70ID:pdP4pqmB0
>>550
PHP Warning: explode() expects parameter 2 to be string, array given in test.php on line 8
PHP Warning: Invalid argument supplied for foreach() in test.php on line 9
PHP Notice: Undefined variable: out in test.php on line 13
0552デフォルトの名無しさん (ワッチョイ 07ce-Sa8B)2016/12/30(金) 04:00:02.30ID:2Pbjmvkx0
>>551
-----------------
$items = array(
"テキスト1,テキスト2,テキスト3",
"テキスト4,テキスト5,テキスト6"
);

foreach ($items as $item) {
$values = explode(",", $item);
foreach ($values as $val) {
$out .= $val[0];
}
}
echo $out;
-----------------

すいません、こうでした
0553デフォルトの名無しさん (ワッチョイ 3bb2-4Ie9)2016/12/30(金) 04:04:21.33ID:pdP4pqmB0
>>552
その$val[0]の[0]は何のつもりで付けてんの?
0554デフォルトの名無しさん (ワッチョイ 07ce-Sa8B)2016/12/30(金) 04:09:49.91ID:2Pbjmvkx0
>>553
テキスト1と4を指定してるつもりです
0555デフォルトの名無しさん (ワッチョイ 3bb2-4Ie9)2016/12/30(金) 04:10:27.52ID:pdP4pqmB0
>>554
$valの中身何だと思ってる?
0556デフォルトの名無しさん (ワッチョイ 07ce-Sa8B)2016/12/30(金) 04:12:48.02ID:2Pbjmvkx0
>>555
テキスト1,テキスト2,テキスト3を配列にしたものだと思ったんですが違うんですか?
0557デフォルトの名無しさん (ワッチョイ 3bb2-4Ie9)2016/12/30(金) 04:13:42.87ID:pdP4pqmB0
>>556
そんなら$valuesと$valはどう違うの?
ってかvar_dumpしてみなよ
0558デフォルトの名無しさん (ワッチョイ 07ce-Sa8B)2016/12/30(金) 04:15:36.84ID:2Pbjmvkx0
>>557
根本的に間違ってました
スレ汚しすいません
0559デフォルトの名無しさん (ワッチョイ 3bb2-4Ie9)2016/12/30(金) 04:18:17.38ID:pdP4pqmB0
>>558
くだ質だからそりゃ別に構わんけど, var_dumpとかで自分がやりたいことが起こってるか確認する癖をつけた方がいい
0560デフォルトの名無しさん (ワッチョイ 07ce-Sa8B)2016/12/30(金) 04:42:50.88ID:2Pbjmvkx0
色々やってとりあえず解決できました
お騒がせしました……
0561デフォルトの名無しさん (ワッチョイ 065b-QzL3)2016/12/30(金) 22:55:39.09ID:E0G0h/wT0
>>560
せっかくだから、最終的なコードも書いておけよw
0562デフォルトの名無しさん (ワイモマー MM4f-Sa8B)2017/01/01(日) 22:17:22.13ID:LmJm3S6qM
evernote web clipperやpocketのように
ウェブサイトを読みやすく整形してくれるPHPのライブラリがあれば教えて下さい
0563デフォルトの名無しさん (ワッチョイ bb85-wEaH)2017/01/06(金) 15:30:19.88ID:A0+jLhsU0
PHPerがドメイン駆動設計と関数型プログラミングを学んで得たもの(前編) - Qiita
ttp://qiita.com/nunulk/items/53290a9d995f8a67fbda

PHPで必死こいて型を何とか導入しようって、バカとしか思えないんだけど、どうなん?
0564デフォルトの名無しさん (ワッチョイ 6faf-HvS5)2017/01/07(土) 00:36:31.32ID:5WVocSaL0
2017年に学ぶべきプログラミング言語トップ10、第1位は?

fossBytesに1月2日(米国時間)に掲載された記事「10 Best Programming Languages That You Need
To Learn In 2017」が、GitHubのデータを元に2017年に学習することが推奨されるプログラミング言語
トップ10を伝えた。対象となるプログラミング言語の需要や成長率などを加味して選定されている。

紹介されているプログラミング言語は次のとおり。

  1. JavaScript
  2. Java
  3. Python
  4. Ruby
  5. PHP
  6. C++
  7. C#
  8. Go
  9. Scala
 10. Swift
0565デフォルトの名無しさん (ワッチョイ 1bf8-HvS5)2017/01/07(土) 01:53:51.96ID:lUvWVNVj0
>PHPで必死こいて型を何とか導入しよう
PHPNG見てても、もはやPHPの意味がねーよって感じで、
その辺導入したいやつとは意見割れてたからな。
それでもgotoのように書ける選択肢が増えるだけならいいだろう、
他言語使いに配慮してなんでも取り入れておこうみたいな、適当な空気があるから。
0566デフォルトの名無しさん (ワッチョイ 0f0f-HvS5)2017/01/07(土) 11:16:17.81ID:Xwn+BVv30
正規表現の質問です
A9999、I9999、U9999、E9999、O9999にマッチさせたくて/A9999|I9999|U9999|E9999|O9999/と書いたのですが
もうちょっと短縮できるかなと思い/[AIUEO]9{3}/と書いても別の部分とマッチしたりしてしまいました
解決策知ってる方いましたらお願いします
0567デフォルトの名無しさん (ワッチョイ fb42-pn3f)2017/01/07(土) 11:34:45.30ID:yxOI3uq10
>>566
何で3だと思った?
0568デフォルトの名無しさん (ワッチョイ 0f0f-HvS5)2017/01/07(土) 14:45:06.11ID:Xwn+BVv30
>>567
ありがとうございます
9+9×3かと思ったら9×4だったとは
0569デフォルトの名無しさん (ワッチョイ 6ba0-4j6q)2017/01/07(土) 15:22:24.83ID:4bQMi0Ir0
RSSからデータ引っ張ってきてDBに保存するとこまで出来たんだけど
何もしなくても15分毎に自動でこれ動作させるにはどうしたらいいんでしょうか?
0570デフォルトの名無しさん (ワッチョイ fb42-pn3f)2017/01/07(土) 15:30:59.21ID:yxOI3uq10
cronつかう
0571デフォルトの名無しさん (ワッチョイ 6ba0-4j6q)2017/01/07(土) 16:44:07.77ID:4bQMi0Ir0
cronはサーバー側の機能のようですが
PHPで何かやっておくことはないでしょうか?
0572デフォルトの名無しさん (ワッチョイ fb42-pn3f)2017/01/07(土) 16:51:34.56ID:yxOI3uq10
PHPで実行したいプログラムソースを書いておき
cronで実行したい時刻か時間間隔を指定して動かせばいい
0573デフォルトの名無しさん (ワッチョイ 1bf8-HvS5)2017/01/07(土) 17:12:11.51ID:lUvWVNVj0
cron使わなくてもバックグラウンドでphp実行させときゃ出来るけどcronが何かわからん人には無理だろうな

while(true){
//RDBからデータ引っ張ってきてDBに保存
sleep(15*60);
}

長いスリープ挟んでるとはいえ見ての通り無限ループなんで
共用レン鯖においてhttpでアクセスしたりしないように
0574デフォルトの名無しさん (ワッチョイ 6ba0-4j6q)2017/01/07(土) 17:15:34.35ID:4bQMi0Ir0
ありがとうございます。
cronうまく動きました。
0575デフォルトの名無しさん (アウアウウー Sa3f-/7mX)2017/01/07(土) 19:11:11.91ID:LVq6VClfa
mysqliでプリペアドステートメントを使って、MYSQLの中にバイナリで保存した画像を
SELECT img FROM table LIMIT ?,1;
という感じでechoで出力したいのですが、検索してでてくるサンプルが文字列でのサンプルばかりで
応用ができないのでヒントか答えを教えてください
0576デフォルトの名無しさん (ワッチョイ df30-51vH)2017/01/07(土) 20:38:28.10ID:SB9sxYsP0
ttp://d.hatena.ne.jp/steel-plate/20070910/1201454906
0577デフォルトの名無しさん (アウアウウー Sa3f-/7mX)2017/01/08(日) 18:02:17.13ID:iAaSxX6Ea
>>576
ありがとうございます。見てみます。
0578デフォルトの名無しさん (ワッチョイ 7bd4-pyla)2017/01/08(日) 18:24:14.97ID:w+xbQ2n10
天才プログラマーはどこにいますか?
プログラマーの人にこういうの作って欲しいってスレはどこに立てると沢山の人に見てもらえますか?
こんなの立ててみたんだけど(´・_・`)

拝啓 天才プログラマー様 [無断転載禁止]©2ch.net
http://tamae.2ch.net/test/read.cgi/prog/1483865523/
0579デフォルトの名無しさん (ワッチョイ 6ba0-4j6q)2017/01/09(月) 14:30:53.86ID:ZbwmiDdE0
DBに画像やファイルを保存することはできるのだろうか?
それとも画像はWeb上に保存しておいてDBにURLを保存し、そこからリンクするものだろうか?
画像やファイルをDBで扱う場合どちらが一般的なのだろうか?
0580デフォルトの名無しさん (ワッチョイ 1bf8-HvS5)2017/01/09(月) 15:03:03.56ID:LIDZc6mW0
>DBに画像やファイルを保存することはできるのだろうか?
画像をエディタで開くと変な文字列出るだろ
ざっくりいうとあれを保存するイメージ
出力はヘッダにファイル情報を付加して(mimeタイプを指定して)
ブラウザに普通のテキストではないとわからせてやる

>それとも画像はWeb上に保存しておいてDBにURLを保存し、そこからリンクするものだろうか?
別にweb上である必要はない
DBがアクセス出来る位置であればいい

>画像やファイルをDBで扱う場合どちらが一般的なのだろうか?
静的イメージを作成してDBにはリンク情報をもたせるのが早いし一般的
0581デフォルトの名無しさん (ワッチョイ 1bf8-HvS5)2017/01/09(月) 15:06:16.16ID:LIDZc6mW0
>それとも画像はWeb上に保存しておいてDBにURLを保存し、そこからリンクするものだろうか?
後半読み飛ばしてたわw
まぁそういうことや
0582デフォルトの名無しさん (ワッチョイ bb85-wEaH)2017/01/09(月) 15:11:48.30ID:Dm7q6S9e0
dbにバイナリ保存とかバカじゃねw
0583デフォルトの名無しさん (ワッチョイ fb42-pn3f)2017/01/09(月) 15:16:18.36ID:lAQ0GX8y0
DBに格納した場合は、URLリンクを使わないので、
直アドでアクセスすることができないと言うことくらいかな
0584デフォルトの名無しさん (ワッチョイ 6ba0-4j6q)2017/01/09(月) 16:36:21.44ID:ZbwmiDdE0
>>580
丁寧な説明をありがとうございます。

了解しました。
保存は一応可能だが一般的でないのですね
勉強になりました。
0585デフォルトの名無しさん (ワッチョイ df30-51vH)2017/01/09(月) 17:34:01.84ID:Y2LAQHW00
dbにバイナリ保存ってアレだと言われていて俺もアレだと思うんだけど
SQLアンチパターンの一つなんだよな
EAVとかは誰が見てもゴミだと思うがファントムファイルについてだけは難しいな
0586デフォルトの名無しさん (ワッチョイ bbc7-pn3f)2017/01/09(月) 21:52:38.00ID:8LyXWJaJ0
DBにバイナリを保存することを最初から除外して検討しないことがアンチパターンだからなぁ
必ずしもバイナリもDBに保存せよということではない
0587デフォルトの名無しさん (ワッチョイ df30-51vH)2017/01/09(月) 22:03:43.64ID:Y2LAQHW00
>>586
ですよねー
なのでパターンによる最適解ってのが知りたいんだけど無いんだろうなって
ファントムファイルだけはそういう意見がネットに転がってないのよね英語含めても
0588デフォルトの名無しさん (ワッチョイ fb42-pn3f)2017/01/09(月) 22:24:44.21ID:lAQ0GX8y0
画像、イメージはファイルとして格納しないといけないと言うことはないと思う
それならば、テキストもテキストファイルとして格納しろってことになるし
0589デフォルトの名無しさん (ワッチョイ 2b42-yz8t)2017/01/09(月) 23:03:00.28ID:yvmBF9eo0
画像が大量にあってアクセスが多いとか、いろいろ考慮して
お金がたっぷりあってサーバーに余裕がある時は考慮しても良いかも
昔ファイルシステムがボトルネックになったことあるからね。
もちろん管理しやすさ重視だったけど
0590デフォルトの名無しさん (ワッチョイ 6ba0-4j6q)2017/01/10(火) 00:15:48.11ID:Zz1rnY0L0
正規表現を使って
preg_match_all('/<a.*href\s*=\"?([\-_\.\!\~\*\'\(\)a-z0-9\;\/\?\:@&=\+\$\,\%\#]+(jpg|jpeg|gif|png|bmp))/i', file_get_contents($file), $img_path_list);
こんな感じに作って画像リンクを抽出するようにしたんだけど
たまに改行がなく一文にソースコードがずらーと書いてあるやつがあってうまく取り出せない
何か良い方法はないでしょうか?

こうしたい
<a href="http://img01.jpg"; target="_blank">img01</a> <a href="http://img02.jpg"; target="_blank">img02</a>

Array
(
[0] => http://img01.jpg
[1] => http://img02.jpg
)
0591デフォルトの名無しさん (ワッチョイ 1bf8-HvS5)2017/01/10(火) 01:11:41.52ID:91nFXcAZ0
href="([^"]+\.jpg|jpeg|gif|png|bmp)
0592デフォルトの名無しさん (ワッチョイ 1bf8-HvS5)2017/01/10(火) 01:16:54.93ID:91nFXcAZ0
href="([^"]+\.(jpg|jpeg|gif|png|bmp))"
スマン色々抜けてた
相対リンクは含めないとかでない限り
ごちゃごちゃしたの書くより"が現れるまでをとったほうがいいんじゃない
0593デフォルトの名無しさん (ワッチョイ bbc7-pn3f)2017/01/10(火) 01:39:10.15ID:fP39RQYT0
>>590
その処理は正規表現じゃなきゃ駄目か?
phpQueryとかのライブラリ使ってやる方が素直だし読みやすいと思うが

一応その正規表現の問題点を挙げておくと,

<a.*

の段階で貪欲にマッチして後続の,

href\s*=\"?([\-_\.\!\~\*\'\(\)a-z0-9\;\/\?\:@&=\+\$\,\%\#]+(jpg|jpeg|gif|png|bmp))

にマッチする最後の部分までの間にある全ての文字を食い尽くす
よって <a.* の部分がとてもマズい

HTMLタグにきちっとマッチさせる正規表現は書けるけど面倒
0594デフォルトの名無しさん (ワッチョイ 6b56-IbiL)2017/01/10(火) 17:34:14.17ID:eoRQxw730
>>590
なるべく元のコードに手を加えない方向でいけば
a.* ⇒ a.*?
にするだけでいいと思うが

最短マッチと最長マッチの違い

どのみちタグの中にダブルコーテーションが無いとかシングルコーテーション使ってたり
=の後に空白文字があったら駄目だけど
正規表現って最初は試行錯誤しながら学ぶもんだから
初心者のうちはあんまり他人が書いたものをコピペするのはおすすめしない
0595デフォルトの名無しさん (ワッチョイ 6ba0-4j6q)2017/01/10(火) 17:37:36.65ID:Zz1rnY0L0
>>592
綺麗にできました。
正規表現は使えるとホント便利ですね
いつかしっかり勉強したいです。

その他の方もありがとうございました。
0596575 (アウアウウー Saf3-OYug)2017/01/12(木) 11:50:13.88ID:P6PzELH5a
おかげさまでできました。ありがとうございます。
>>585
DBに保存したほうがセキュリティ上好ましいとどこかで見た気がしたので
そうしているのですが、呼び出しがやや面倒です。
書き込みを拝見させていただくとDBに保存したほうが
動作も重くなるみたいなのですが、DBに保存するメリットってありますか?
なければやめようかと思うのですが・・・
0597デフォルトの名無しさん (ワッチョイ c356-YL17)2017/01/12(木) 12:58:17.42ID:JoWqZZGk0
DBに画像をバイナリ保存するのは
類似画像検索するとかバイナリデータ内に含まれる情報を元にソートや抽出をするといった「明確な目的」があるからであって
特に目的もないのにそうする事はリソースの無駄以外の何者でもない

偉そうな事をいって申し訳ないが
セキュリティ上好ましいってその理由を理解もせずに鵜呑みにしたら駄目だと思う
0598デフォルトの名無しさん (ワッチョイ 67f8-dHfL)2017/01/12(木) 15:40:42.15ID:hdlSpXcO0
セキュリティ上好ましいっていうのは上のほうでも誰か書いてたけど
たぶん直リンで簡単にアクセス出来ないからとかそんな理由なんじゃない?
特定の人しかアクセス出来ない非公開画像なんかの場合はちょっとした工夫が必要だけど
別にDBである必要はないね
0599デフォルトの名無しさん (JP 0H8e-vSov)2017/01/12(木) 17:13:18.12ID:zvW9UYRyH
>>596
詳しくは、書籍『SQLアンチパターン』のファントムファイルを参照するとして、データベースに保存するメリットを列挙すると、

・ファントムファイル(幻のファイル:データベースのレコードはあるがファイルが存在しない)が起こらない
・画像の保存・変更・削除がデータベースのトランザクションと一致する
・ロールバックしたときに不要なファイルが残るということがない
・一般ファイルとして保存すると、File I/Oエラーのときにトランザクションをロールバックするなどのコードが必要になる
・データベースをバックアップすれば、画像も一緒にバックアップされる(一貫した完全なデータセットでバックアップできる)

「SQLアンチパターン ファントムファイル」でググれば、書籍を買わなくてもいろいろと記事が見つかる。
0600デフォルトの名無しさん (JP 0H8e-vSov)2017/01/12(木) 17:21:55.51ID:zvW9UYRyH
あ、念のため書いておくと、『SQLアンチパターン』でアンチパターンとされているのは、
データベースに画像をバイナリで保存することではなくて、
「物理ファイルの使用(データベースにはパスのみ格納)を必須と思い込む」ことで、
たいした考慮もなしにそう実装してしまうというものです。
0601デフォルトの名無しさん (ワッチョイ b222-GBI4)2017/01/12(木) 18:12:29.36ID:LTmK9cNB0
サイト間の文字コードについて質問させてください。

今仕事でブログパーツを作成しているのですが、
文字コードが異なるサイトでは
<script src=
0602デフォルトの名無しさん (ワッチョイ b222-GBI4)2017/01/12(木) 18:15:23.38ID:LTmK9cNB0
規制が掛ってしまったのでプロトコル名は全角のhttpと記載しました。

サイト間の文字コードについて質問させてください。

今仕事でブログパーツを作成しているのですが、
文字コードが異なるサイトでは
<script src="http://hoge/fuge.php?charset=utf8"></script>
のように「charset」明示して読み込めばもちろん判別できるのですが

いくつかの有名サイトではcharsetなしで自動的に文字判別しているようです。
ソースを見ると出力の段階で正しい文字コードになっています。

アダルトサイトのブログパーツで恐縮なのですが、↓など

サイト1
<div id="immoral_parts_1" class="immoral_parts"></div>
<script src="http://p.immoral.jp/parts.php?width=200&layout=1&
keyword=&num=4&id=1&filter="></script>

サイト2
<div id="eroterest_partsv2" class="eroterest_partsv2"></div>
<script src="http://bpm.eroterest.net/v2/?w=&e=&n=6&rn=2&spn=&sprn=&
fc=&ts=&tp=&tbg=&tsz=&tr=&tc=&tmc=&tu=1&is=1&mts=&ds=&dsz=&dr=&dc=&df=&
ibg=&ibm=&ids=&ib=&ibc=&ir=&sf="></script>


どの文字コードのページに埋め込んでも正しく表示されます。
どなたかご教示いただけないでしょうか?
0603デフォルトの名無しさん (ワッチョイ db2c-dHfL)2017/01/12(木) 19:13:19.50ID:taUnzxu50
レスポンスのContent-Typeヘッダのcharsetでブラウザに文字コード教えるだけなのでは
リクエスト時にこの文字コードをくれではなくレスポンスでこの文字コード使ってるからクライアントで勝手に解釈しろという流れ
0604デフォルトの名無しさん (ワッチョイ 3eaf-dHfL)2017/01/12(木) 23:35:18.23ID:yNVhW+sq0
sjisのページにこれ貼り付けても文字化けしないけど
判定とかしてないでしょ
0605デフォルトの名無しさん (ワッチョイ d3d5-oERZ)2017/01/12(木) 23:56:56.78ID:tDwhqFa10
自作ゲーム即売会「ゲームマーケット」に1万人超
http://www.nikkansports.com/general/nikkan/news/1750500.html
ボードゲームのオリジナルオーダー制作
http://www.logygames.com/logy/ordermade.html
カードゲームを自作する1 【自宅でカード印刷】
http://tanishi.org/?p=801
100円ショップでボードゲームを自作しよう
https://sites.google.com/site/jun1sboardgames/blog/makeyourbg
ノーアイデアでボードゲームを作ろう第1回「100円ショップで物を買う」
http://boardgamelove.com/archives/boardgame-make-1/
ボードゲーム市場がクラウドファンディングの出現で急成長を遂げ市場規模を拡大中
http://gigazine.net/news/20150820-board-game-crowdfunding/
実際のところ、自作ボードゲームってどれぐらい売れるもんなの?
http://roy.hatenablog.com/entry/2016/12/20/220102
オリジナル アナログゲーム・絵カード印刷
http://www.shobundo.org/index.html
ゲームマーケット2016春にて初参加サークルさんに作成数アンケートをとってきました
http://hidarigray.blog35.fc2.com/blog-entry-614.html
0606デフォルトの名無しさん (ワッチョイ f67b-S3/X)2017/01/13(金) 00:39:02.36ID:84sZuYo80
>>601-602
2chのバグだろう

書き込み確認画面が出る際、" を使うと、そこで文字列の終了とみなされる。
" の代わりに、\" とエスケープすれば、どうだろう?

それか、書き込み確認画面が出たら、1度キャンセルすれば、確認画面は出ないようになった
0607575 (アウアウウー Saf3-OYug)2017/01/13(金) 09:18:20.76ID:zdP6lRcka
>>597-600
ありがとうございます、検索してきました。とても勉強になりました。
用途ごとで考えていかないといけないんですね
0608デフォルトの名無しさん (ワッチョイ b222-GBI4)2017/01/13(金) 17:40:23.42ID:pW3G4Um70
>>603

ありがとうございます!
header("Content-type: application/x-javascript; charset=utf-8");
で行けました。
こんなに簡単だったなんて・・・
0609デフォルトの名無しさん (ワッチョイ f230-sWU2)2017/01/15(日) 10:07:50.48ID:96oN4X0D0
ファントムファイルの話おもしろいな
久しぶりに有意義なレス読めて嬉しいわ
0610デフォルトの名無しさん (ワッチョイ c3a0-kZbI)2017/01/17(火) 00:12:19.85ID:rCvGxOoa0
文字列がだいたいあってればtrueって返すのってどうにかできないか?

「あいうえおかきくけこ」≒「あ■うえお■きくけこ」
=>true

「あいうえおかきくけこ」≒「さしすせそたちつてと」
=>false
0611デフォルトの名無しさん (ワッチョイ 4f42-q48i)2017/01/17(火) 00:43:41.02ID:ch2PxU+N0
「だいたい」と言う言葉を厳密にまず定義してみて

人によっては、先頭の一文字さえ合えば合っているって言うかもしれない
0612デフォルトの名無しさん (ワッチョイ 1fc7-q48i)2017/01/17(火) 00:45:23.61ID:vaY8CLG20
>>610
文字列の集合上の距離関数(Levenshtein距離など)とtrueを返す距離の閾値を引数にとる関数を考えればよい
0613デフォルトの名無しさん (ワッチョイ 4f46-YL17)2017/01/17(火) 12:40:52.39ID:34x6WvLV0
>>610
611の言うとおり
とてもプログラミングする人間の質問とは思えない
0614デフォルトの名無しさん (ワッチョイ c356-YL17)2017/01/17(火) 12:43:30.29ID:AoWcBh8D0
あいうえお と AいうeO とが「だいたい」同じとみなすなら
>>612の方法ではダメだしね
ある程度定義がないと答えようがない
0615デフォルトの名無しさん (ワッチョイ c3a0-kZbI)2017/01/17(火) 17:30:26.50ID:rCvGxOoa0
すまない
定義も言わずに無茶な質問したなと思っている

定義としていいのかどうかわからないが
ベースとなる文字列に対して対象となる文字列との合致率が80%以上あればいい

最初はベースとなる文字列を2文字ずつ分解して類似を消し、
対象となる文字列内にその文字か含まれるか調査して
それが80%を超えればtrueにしようと考えていたんだけど
これでいいのか、もっといい方法があるんじゃないか?で不安になって質問した
0616デフォルトの名無しさん (アウアウカー Sa5f-kkJw)2017/01/17(火) 18:04:45.68ID:0If6Z2WBa
>>614
距離関数の定義と設定する閾値次第
文字列の近さの評価は距離関数に丸投げするわけだ

用途や目的, 想定に合わせて距離関数を実装してコールバックとして渡す
0617デフォルトの名無しさん (アウアウカー Sa5f-kkJw)2017/01/17(火) 18:17:37.68ID:0If6Z2WBa
>>615
その「一致率」ってのが, 文字列の比較でどこに着目して何を重視するかによって変わる指標でしかないんだけども

とりあえずよく使われる例として上でも挙げたLevenshtein距離とその実装アルゴリズムのBitapを調べてみてはどうか
尚マルチバイト文字列でなければ組み込みのlevenshtein関数がある
0618デフォルトの名無しさん (アウアウカー Sa5f-kkJw)2017/01/17(火) 18:54:34.88ID:0If6Z2WBa
Bitapは実装アルゴリズムじゃないわ失礼
0619デフォルトの名無しさん (ワッチョイ c356-YL17)2017/01/17(火) 19:48:09.06ID:AoWcBh8D0
>>616
日本語って漢字もカタカナもひらがなもアルファベットもあるからさ
Googleみたいな天才集団ならまだしも俺みたいな凡人レベルだと
一度ローマ字読みに統一(それすらYahooAPIに丸投げ)してから
Levenshteinにほとんど丸投げみたいな感じで
似たようなことならやった事があるが参考になるかね

もう5年ぐらい前の話だから今はもっといい方法あるかもな
0620デフォルトの名無しさん (ワッチョイ c356-YL17)2017/01/17(火) 19:49:45.70ID:AoWcBh8D0
619は616ではなく>>615へのレスの間違いだ
失礼
0621デフォルトの名無しさん (ワッチョイ c3a0-kZbI)2017/01/17(火) 20:26:24.43ID:rCvGxOoa0
いろいろありがとうございます。
Levenshteinというのがうまく使えそうなので
これでやってみたいと思います。
0622デフォルトの名無しさん (ワッチョイ b3a0-07nx)2017/01/19(木) 01:02:50.61ID:Iza9bQoq0
質問よろしいでしょうか

文字と6〜11桁の数値の混ざった文字列があり、
この数値以降の文字列を削除したいのですが何か良い方法はないでしょうか?

abcd1234567app-00 → abcd1234567
xyz1234567890xx/0123 → xyz1234567890
0623デフォルトの名無しさん (ワッチョイ 2342-SmTw)2017/01/19(木) 02:17:05.14ID:TMXa1TOT0
<?PHP
$src = array("abcd1234567app-00", "xyz1234567890xx/0123");
print_r($src);

$dst = preg_replace('/^([a-z]+[0-9]+)[^0-9].*$/', '$1', $src);
print_r($dst);
0624デフォルトの名無しさん (ワッチョイ b3a0-07nx)2017/01/19(木) 11:38:32.06ID:Iza9bQoq0
ありがとうございます。

もう一つ同じような質問になってしまい恐縮なのですが、

http://aa.bb5.com/topics/0123456789/58-
http://ll.bb1.com/topics/1234567890/s12
http://cc.bb8.com/topics/2345678901

こういったURLを一律に

http://aa.bb5.com/topics/0123456789/
http://ll.bb1.com/topics/1234567890/
http://cc.bb8.com/topics/2345678901/

このような形に整える場合、どうすると良いのでしょうか?
0625デフォルトの名無しさん (ワッチョイ b356-JQ1R)2017/01/19(木) 13:26:19.40ID:Y9xRubnq0
「topics+数字10桁」が固定なら

$url = array(
'http://aa.bb5.com/topics/0123456789/58-',
'http://ll.bb1.com/topics/1234567890/s12',
'http://cc.bb8.com/topics/2345678901'
);

print_r(preg_replace('/(topics\/\d{10}).*$/', '$1/', $url));
とかさ

とりあえず正規表現勉強しよう
こんなの初歩中の初歩だし
0626デフォルトの名無しさん (ワッチョイ 637b-jh1Y)2017/01/19(木) 15:41:48.95ID:+8JGp/PH0
別々のサイトを同じ正規表現で処理するのってどうなのかな?
できたとしても、普通しないんじゃあないかな?
0627デフォルトの名無しさん (ワッチョイ 8fc9-3qL8)2017/01/19(木) 16:09:49.05ID:+apAMdxY0
>>626
対象が普通じゃないときにはよくやる。
0628デフォルトの名無しさん (ワッチョイ b356-JQ1R)2017/01/19(木) 17:33:26.13ID:Y9xRubnq0
>>626
そんなもん場合によるとしか言いようがない
ドメインが違っても同じシステム上で動いてるならhost以下のURLは同じパターンになる事だってある

parse_url()あたり使ってドメイン別に処理を分岐させるてもいいし
条件が複雑になってもpreg_replace_callback()使ってコールバック関数に投げれば大抵の事は正規表現でできる(正規表現にこだわる必要性はないが)
0629デフォルトの名無しさん (ワッチョイ 2346-JQ1R)2017/01/19(木) 17:36:45.27ID:DEEPX58W0
2chミラー系のサイトとかパスの部分は本家と同じルールの事が多いよな
0630デフォルトの名無しさん (ワッチョイ 03f8-3qL8)2017/01/19(木) 17:49:38.07ID:Yy/ywFZD0
相手方が仕様変更したら、都度変更するってのは当たり前のことだしね。
0631デフォルトの名無しさん (ワッチョイ b3a0-07nx)2017/01/19(木) 17:56:49.57ID:Iza9bQoq0
>>625
うまくいきました。
「preg_replace」こういった便利なものをもっと活用できる様努力したいです。

正規表現はまだ勉強していませんでした。
皆さんはどのように勉強されましたか?
0632デフォルトの名無しさん (ワッチョイ b356-JQ1R)2017/01/19(木) 18:05:43.35ID:Y9xRubnq0
俺はwebでどうしても作りたいサービスがあって
それを実現するために必要なものを都度、本を見たり他人のソース読んで独学で覚えていったなー
正規表現もその内の1つ
当時はPHPなんてまだ実用レベルではなかったけど、プログラミングなんてそんなもんじゃね?
※ちなみに作ったサービスが大ヒットして20代で起業できた

正規表現は言語や環境を超えて色んな場面で使えるから早いとこ覚えた方がいいよ
0633デフォルトの名無しさん (アウアウカー Sac7-Taza)2017/01/19(木) 19:26:50.82ID:IJcB5l5+a
Perlで覚えたっておっさんは多そう
0634デフォルトの名無しさん (ワッチョイ 2342-SmTw)2017/01/19(木) 20:10:06.40ID:TMXa1TOT0
sed使って覚えたw
0635デフォルトの名無しさん (ワッチョイ b3a0-07nx)2017/01/19(木) 23:55:33.82ID:Iza9bQoq0
ありがとうございました。
正規表現に関する書籍などもあるようなので始めのうちはそちらで勉強しようと思います。
0636デフォルトの名無しさん (JP 0H27-Up5i)2017/01/20(金) 08:28:28.07ID:Nvso2zBqH
気の利いたテキストエディタなら 検索条件に正規表現が使えるよ

そんなに身構えるほどのものでもない
でも直感的にすぐできそうなことが
できなかったり遠回りさせられたりするケースは多い
0637デフォルトの名無しさん (JP 0H7f-Taza)2017/01/20(金) 15:15:26.51ID:ytgAV8a7H
所詮有限オートマトンでしかないからなぁ
文脈自由言語を表現したいことはそこそこあるし
0638デフォルトの名無しさん (ワッチョイ 6f5b-WaXM)2017/01/21(土) 11:23:45.42ID:W/zpHkC+0
あああああああああああああ
0639デフォルトの名無しさん (ワッチョイ 634a-OQjX)2017/01/22(日) 11:25:23.82ID:yhCK3ont0
echo "あああああ";
で出力している行が沢山あるのだが、C言語のマクロみたいに
#define echo
などとして、一時的にechoをしないように出来ますか?
#define echo echo
で元に戻すとか。
0640デフォルトの名無しさん (ワッチョイ f342-WaXM)2017/01/22(日) 12:29:06.17ID:Bs668zcL0
ob_startでダミー関数へ出力を流して捨てるとか
まぁecho以外のものも全部影響するけど
0641デフォルトの名無しさん (ワッチョイ 634a-OQjX)2017/01/22(日) 16:56:50.88ID:yhCK3ont0
>>640
サンキュウ。
PHP初心者の俺には難しそうなのであきらめるわ。
0642デフォルトの名無しさん (ワッチョイ f342-WaXM)2017/01/22(日) 17:44:31.99ID:Bs668zcL0
自分も初心者で、この前試してみたら動いたよ。
echoで出力したやつを mongodb へ出力するようにしてみた
callback関数に慣れてないので、結局 ob_get_contents で文字列として取り出してやることになったけどww(一応callback関数も動いたんだけどねw)
0643デフォルトの名無しさん (ワッチョイ 634a-OQjX)2017/01/24(火) 07:22:42.90ID:GW7wBcmJ0
echo '文字列';
echo('文字列');
どちらも行けるのはなぜ?
0644デフォルトの名無しさん (ワッチョイ 03f8-3qL8)2017/01/24(火) 10:15:59.16ID:9JkkYn/G0
なぜって言われても仕様だからとしか
echoは言語構造で関数ではないが関数風の記述も出来る
0645デフォルトの名無しさん (シャチーク 0C67-x36u)2017/01/24(火) 13:11:54.10ID:qMNsZ9tKC
<?php
$shell = new COM('WScript.Shell');
$shell->Popup(mb_convert_encoding('日本語', 'SJIS'));

↑のように書けば文字化けはしないのですが

<?php
$shell = new COM('WScript.Shell');
$shell->Popup('日本語');

↑のように書いても文字化けしない設定はありますか?
環境は、Windows7 x64、PHP 5.6.27、ソースファイルの文字コードはUTF-8です。
現状、以下のようなエラーも発生しています。

PHP Warning: Unknown: Could not convert string to unicode:
`Unicode 文字のマッピングがターゲットのマルチバイト コード ページにありません。' 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)
0646デフォルトの名無しさん (ワッチョイ 634a-OQjX)2017/01/24(火) 13:28:04.90ID:GW7wBcmJ0
>>644
サンキュウ。
勉強になったわ。
ちなみにそういう特徴があるのは echo だけなの?
0647デフォルトの名無しさん (ワッチョイ 63c7-SmTw)2017/01/24(火) 18:11:00.05ID:eJZROb7k0
>>646
引数をとる言語構造は概ね

require_onceとか
0648デフォルトの名無しさん (ワッチョイ ff30-waAN)2017/01/24(火) 22:59:12.64ID:I87canmV0
色々なCMSとかECで管理画面のURLを変更できますがどういう実装なんでしょうか
デフォルト /adminlogin
変更後 /hogehogelogin
ルーター?あたりでリクエストを見てごにょごにょ変更したりなんだりなんでしょうか
0649デフォルトの名無しさん (ワッチョイ b356-JQ1R)2017/01/25(水) 17:48:43.07ID:Rne6Kw8A0
Apacheサーバ上で動作するものならmod_rewriteで変更するのが定番中の定番
0650デフォルトの名無しさん (ワッチョイ 6bc1-y5A3)2017/01/26(木) 00:36:54.30ID:KyKDhrRS0
>>649
それはルータのURIでしょうよ

>>648
そうでしょうね
0651デフォルトの名無しさん (ワッチョイ 1fd6-Q0kd)2017/01/26(木) 01:34:40.14ID:MO+7T8JD0
mod_rewrite楽でいいじゃんって感じで
rewriteしまくってわけわかんなくなってるサイトとか
マジ、いじりたくないのが実在する
0652デフォルトの名無しさん (ワッチョイ 5b42-y5A3)2017/01/26(木) 23:05:32.18ID:VOhYXAVW0
単に管理用のプログラムの置く場所を、そのサイトで変えていると言うだけなんてことは無い?
0653デフォルトの名無しさん (ワッチョイ f7ce-AZYz)2017/01/26(木) 23:45:40.57ID:cKDcvF/b0
if文の条件でorを多用する時、スマートな書き方ってありますか?

if (A || b() || (C && d()) || $E || F);

↑こういうヤツです
0654デフォルトの名無しさん (ワッチョイ eec9-AZYz)2017/01/27(金) 11:14:04.21ID:r9WH4ZGI0
>>653
あんまり量が多いようなら switch case で羅列する
0655デフォルトの名無しさん (ワッチョイ 5320-Cjs8)2017/01/27(金) 12:08:48.97ID:0yUPeU9L0
ネットで調べまくっても解決しないので質問させてください。

Win7にXAMPPをインストールしてPHPを勉強しているのですが、
mb_send_mailでメールが届きません。

ttps://techacademy.jp/magazine/4129
で説明のようにphp.iniとsendmail.iniを設定して
下記のPHPを読み込むと「送信成功」と出るのですがメールが届きません。
php.iniとsendmail.iniの設定は他のサイトで説明されている設定でもいろいろ試したのですが
変わらず届かないので他の問題があるのかなと考えているのですが
同じ症状を経験された方いませんか?

「送信成功」と出てsendmailのエラーが出ていないのでerror.logは作成されません。
迷惑メール等にもメールは見当たらず、gmailやyahooメール等いろんなsmtpを設定しても届いていません。

<?php
if (mb_send_mail('[email protected]', 'メール送信テスト', 'これはメール送信テストです')) {
print '送信完了';
} else {
print '送信失敗';
}
0656デフォルトの名無しさん (ワッチョイ eec9-AZYz)2017/01/27(金) 12:22:22.94ID:r9WH4ZGI0
>>655
宛先が間違っているんやろなぁ
0657デフォルトの名無しさん (ワッチョイ f742-6a6W)2017/01/27(金) 12:22:47.97ID:d1ED6onW0
認証方法が変わったりしたんだろ?
とりあえずPHPは後回しにして手動とか、コマンドで出来るか試す。
0658デフォルトの名無しさん (ワッチョイ ee5b-FuHd)2017/01/27(金) 15:46:24.32ID:qE/DB39Q0
>>655
mailヘッダ情報の設定やってる?
これデバッグできないなら諦めて
他のメールパッケージ使ったほうがいいよ

それでも動作しないなら、sendmailが原因
0659デフォルトの名無しさん (JP 0H36-Ijd2)2017/01/27(金) 16:17:02.67ID:ywWwL4iXH
>>655
今xamppをダウンロードしてみたんだが、ローカルのSMTPサーバを使うのがデフォルトみたいだぞ。
0660デフォルトの名無しさん (JP 0H36-Ijd2)2017/01/27(金) 16:22:12.36ID:ywWwL4iXH
で、ローカルのSMTPサーバを起動したらコントロールパネルでログを見られるみたいだから、
原因の切り分けができるのでは?
https://screenpresso.com/=GRn6e
0661デフォルトの名無しさん (ワッチョイ 6f42-P4zY)2017/01/27(金) 18:34:40.27ID:K/AcGzHR0
Windows 7だから、ローカルにメールサーバーが入ってないってことかも?
Linuxのディストリビューションだと、デフォルトで入ってるから悩まなくてもできるけど
Windowsだと・・Virtualboxとか使った方が早いかも?
0662デフォルトの名無しさん (ワッチョイ f742-6a6W)2017/01/27(金) 19:02:58.26ID:dfMoaU/d0
xamppにメールサーバーはいってたはずだが
ただし原理は不明だが送信相手かプロバイダに弾かれるかして動作しなかったような・・
メールサーバーとして認められるなんらかの手続きがいるはずかと・・不明だが
しかしグーグル経由して送信するんだろ?
0663デフォルトの名無しさん (ワッチョイ f742-6a6W)2017/01/27(金) 19:11:25.07ID:dfMoaU/d0
これとおなじだろ。本物サーバーでなくて、メーラーと同様な動作させたいってことだろ? サーバーはグーグルまかせで。




xamppのMercuryを使ってローカル開発環境からメールを送信する
xamppなどを利用してローカルでメールフォームなどを開発する場合、その動作を確認できなくて困ることがあります。
原因は、単純にローカルマシン自身がSMTPサーバではないからです。

xamppにはその問題を解消するために「Mercury」というソフトが同胞されています。これまで、幾度となく何度もチャレンジしたのですが、うまくメールを送信できませんでした。
しかし、今回、設定に成功したのでメモとして残しておきます。

メールが送信されるしくみ
PHPの関数mb_send_mailなどでメールを送信すると、コマンドsendmailなどを使ってメールが送信されるのが通常です。

今回のMercuryを使う場合は、PHPでメールが送信されるとMercuryを経由して、Mercuryで設定したSMTPサーバにメールが投げられます。
つまり、Mercuryはローカルプログラムから受け取ったメールを、メーラーソフトと同じようにしてメールを送信しているわけです。

したがって、この環境を実装するためには、SMTPサーバが必要です。
もちろん、今利用しているISPのSMTPサーバで問題ありません。
http://helog.jp/xampp/mercury-mail/
0664655 (ワッチョイ 5320-Cjs8)2017/01/27(金) 19:26:49.62ID:0yUPeU9L0
返答遅れて申し訳ないです。

>>656
宛先は何度も確認して別のアドレス宛てにも送っているんで
間違いは無いと思います。

>>657
認証についてはよくわからないのですが、
PHPの本やmb_send_mailを説明しているサイトでは
そのまま問題なくできているようなのです。
メーラーやコマンドライン使って問題なくメールは送れました。

>>658
ヘッダー情報の設定もしてみたのですが結果は同じでした。
PHPのmb_send_mailの勉強なので、もっと出来るようになったら他の方法も勉強してみようと思います。

>>659
ローカルのSMTPサーバを使うまで進んでいませんが
mb_send_mailができないようでしたら勉強してみます。
0665デフォルトの名無しさん (ワッチョイ f7f8-TlWQ)2017/01/27(金) 19:30:01.77ID:5anwLQVh0
phpとは違うけど自分もメール送信できない事があってはまった事があった
原因はアンチウイルスソフトで大量メール送信をブロックしていたためだった
virusscanをもし使っていたら下記リンクを参考にしてブロックを外してみて
http://kayulog.seesaa.net/article/159312396.html
0666655 (ワッチョイ 5320-Cjs8)2017/01/27(金) 19:48:09.53ID:0yUPeU9L0
>>661-663
自分が試みているのは「xamppのfake sendmailを使ってローカル開発環境からメールを送信する」の方で、
↓のサイトでも問題なく出来ているみたいなんですが
同じ設定をしてもメールが届かないんです。

http://helog.jp/xampp/fake-sendmail/
0667デフォルトの名無しさん (ワッチョイ 7e7b-316P)2017/01/27(金) 20:02:05.93ID:SOi9h9fX0
Wireshark を使って、通信パケットでも見れば?
0668デフォルトの名無しさん (ワッチョイ 1fa0-fVsk)2017/01/28(土) 10:35:24.40ID:13qnO7m90
質問です
「$sql = 'select time from sbdate';」
これを使って時間のデータの「40日前〜10日前」を呼び出したいのですがどう書き足すといいでしょうか?
また、登録されている時間のデータで一番新しいデータの呼び出し方も教えていただけると助かります。
0669デフォルトの名無しさん (ワッチョイ 1fd6-Q0kd)2017/01/28(土) 11:31:58.90ID:7mM7CN4P0
>これを使って時間のデータの「40日前〜10日前」を呼び出したいのですがどう書き足すといいでしょうか?

$sql = "SELECT time FROM sbdate WHERE time >= :start_date AND time <= end_date";
$params = array(
  "start_date" => date("Y-m-d", strtotime("-40 day")),
  "end_date" => date("Y-m-d", strtotime("-10 day"))
);

$result = SomeDBAccessLibrary::getInstance()->query($sql)->bind($params)->execute();

>また、登録されている時間のデータで一番新しいデータの呼び出し方も教えていただけると助かります。

$sql = "SELECT * FROM sbdate ORDER BY time DESC LIMIT 1";

$result = SomeDBAccessLibrary::getInstance()->query($sql)->execute();
0670デフォルトの名無しさん (ワッチョイ ea30-Ve17)2017/01/29(日) 00:24:45.60ID:RwW5ifSZ0
windowsとLinuxでまるっきり挙動が違うってのに初めて遭遇したんだけど
そうなるとやっぱりXAMPPって使わないほうがいいのかね?
0671デフォルトの名無しさん (ワッチョイ 6bc1-y5A3)2017/01/29(日) 01:23:23.51ID:q/JB8S+S0
手元でもテストするけど最終的にはDockerで実環境を再現したコンテナ作ってテスト走らせるわ
0672デフォルトの名無しさん (ワッチョイ 1fa0-fVsk)2017/01/29(日) 02:09:49.58ID:9y6Ir6At0
>>669
ありがとうございました。


XAMPPって駄目なのか
簡単に設定できたからずっと使ってた
今はローカルでやる場合は何が主流なんだろう
0673デフォルトの名無しさん (ワッチョイ 5b42-y5A3)2017/01/29(日) 02:27:11.14ID:c27yycvu0
仮想環境で実環境と同じOS使うのが楽だと思う
0674デフォルトの名無しさん (ワッチョイ d3f8-AZYz)2017/01/29(日) 02:38:41.26ID:vdPv4D6s0
別にだめじゃない。
XAMPP使っていて問題が起きるような人は結局、本番環境で開発しないと動かないコードが出来上がるタイプ。
つまりOS以外での差もあるわけで、Linuxで開発したからといって、本番環境のLinuxで動くとも限らないということ。
ていうか具体的にどこで問題がおきたの?
Windows専用とか、Windowsだと制限されてるものとかはあるだろうけど(初めて使うものはちゃんと調べる)、
PHPは曲がりなりにもマルチプラットフォームであって、OS差を埋めるためのコードはちゃんと存在するはず。
例えば定数とかうまく使えてる?
0675デフォルトの名無しさん (ワッチョイ ee5b-FuHd)2017/01/29(日) 03:10:55.44ID:CzSBugT30
本番サーバがLinux環境なら、ローカルもLinuxに合わせたほうがよくない?
環境維持は大事だと思う
0676デフォルトの名無しさん (ワッチョイ 1fa0-fVsk)2017/01/29(日) 09:40:28.87ID:9y6Ir6At0
PHPの開発環境は皆どうしてる?
Google ChromeとTeraPadで書いて確認してたけど
なんかいいのあれば教えてください
流石に疲れました
0677デフォルトの名無しさん (ワッチョイ f742-6a6W)2017/01/29(日) 09:49:26.20ID:VE53RC2e0
エディタは好きなのでいいし、PHP開発の大部分はブラウザは不要だろ?
そっちがメインになることもあるだろうけど。
HTMLなど見える部分以外の動作を作るほうが多いからブラウザでの確認はあとでいい。
0678デフォルトの名無しさん (ワッチョイ ea30-Ve17)2017/01/29(日) 10:21:35.96ID:RwW5ifSZ0
画像周りのライブラリ拾ってきたときにWinとLinuxで動作違ったりしたな
0679デフォルトの名無しさん (ワッチョイ ea30-Ve17)2017/01/29(日) 10:24:34.69ID:RwW5ifSZ0
って670俺だわ酔っ払ってたすまん
>>674
mPDFでWinだと画像パス指定するだけでHTMLそのまま吐くんだけどLinuxだと404になってるのよね
0680デフォルトの名無しさん (ワッチョイ d3f8-AZYz)2017/01/29(日) 11:13:17.56ID:vdPv4D6s0
サードパーティ製はさすがにわからないけど、
症状からしても画像パスの指定方法に問題があるのだろう。
0681デフォルトの名無しさん (ワッチョイ 1fa0-fVsk)2017/01/30(月) 21:53:03.65ID:Jl7rOjwJ0
ライブドアブログに記事をアップロードできるようにしたいがどうしたものか?
AtomPub APIというのを使えばできるとらしいが
使い方がわからん…
これは何かダウンロードして使うものなのだろうか?
0682デフォルトの名無しさん (ワッチョイ f742-6a6W)2017/01/30(月) 22:34:22.73ID:gPTswH1+0
そのくらい初心者でもできるだろ。じぶんも初心者だが・・・
ためしにやってるみる
0683デフォルトの名無しさん (ワッチョイ f742-6a6W)2017/01/30(月) 23:21:18.49ID:gPTswH1+0
>>681
投稿できたぞ
これそのままつかった

https://github.com/seiyaan/LiveDoorBlogAtomPub
0684デフォルトの名無しさん (ワッチョイ 1fa0-fVsk)2017/01/31(火) 00:15:35.31ID:6jwW0/Fs0
>>683
ありがとうございます。
とても助かります。

「通信に PEAR の HTTP_Request2 を使用しております。インストールをお願いします。」

うう…
また知らん機能を…
PEAR とか HTTP_Request2 って何なんじゃい
今日はもうギブアップ
0685デフォルトの名無しさん (ワッチョイ e6af-AZYz)2017/01/31(火) 00:40:09.72ID:4WQSXuaN0
http request2って古いな
普通にfile_get_contentsでできるんちゃうか
0686デフォルトの名無しさん (ワッチョイ 6bc1-y5A3)2017/01/31(火) 00:48:01.99ID:H/15YF7/0
guzzlehttp/guzzleがPSRのインターフェイスの実装になってるからオヌヌメ
0687デフォルトの名無しさん (JP 0H13-zSxl)2017/01/31(火) 04:06:45.41ID:WN418v1sH
windows環境で何年も開発してるけど、本番環境で問題起こったことないよ?
0688デフォルトの名無しさん (ワッチョイ 3338-P4zY)2017/01/31(火) 09:16:31.18ID:HVCS3sQm0
phpの知識がないのですが、一通り学ぶのにオススメの本を教えてください。
おいらはC#でプログラム書いてます。
javascriptとperlの知識もあります。
0689デフォルトの名無しさん (ワッチョイ f742-6a6W)2017/01/31(火) 09:18:56.40ID:I3GVvv+h0



php_manual_ja.chm (18,027,986 bytes)

http://php.net/get/php_manual_ja.chm/from/a/mirror
0690デフォルトの名無しさん (アウアウウー Sa7f-Hx4G)2017/01/31(火) 10:25:42.13ID:AzvNrs+Ya
質問です。投稿フォームからPOSTされた内容AとBを格納し 格納された値Aを
サイトに投稿、Bをメールで自分のアドレスに飛ばす、ということをやりたいです。

<?php
function h($str) {
return htmlspecialchars($str, ENT_QUOTES);
}
$rows = json_decode(file_get_contents('bbs1.json'), true);
if (!empty($_POST['write'])) {
$row = array(
'A' => $_POST['A'],
'B' => $_POST['B'],
);
array_unshift($rows, $row);
file_put_contents('bbs1.json', json_encode($rows));
}
?>
〜htmlによる入力フォーム。省略〜
<?php foreach($rows as $row): ?>
<strong><?php echo h($row['A']) ?></strong>
<?php endforeach ?>
<?php foreach($rows as $row): ?>
<?php
$_POST['B'] = $B;
mb_send_mail("[email protected]", $B)
?>
<?php endforeach ?>

としたのですが動きません。見当違いな箇所は多々あることは自覚していますが
どうすれば良いのか全く分かりません。何かアドバイスをお願いいたします。
0691デフォルトの名無しさん (ワッチョイ e6af-AZYz)2017/01/31(火) 11:02:26.33ID:4WQSXuaN0
$_POST['B'] = $B;

逆じゃないの?
0692デフォルトの名無しさん (ワッチョイ e6af-AZYz)2017/01/31(火) 11:04:20.78ID:4WQSXuaN0
このソース自分で書いたの?
<?php foreach($rows as $row): ?>
<?php endforeach ?>
htmlのこれどっちもいらんでしょ
0693デフォルトの名無しさん (アウアウウー Sa7f-Hx4G)2017/01/31(火) 11:23:13.97ID:AzvNrs+Ya
お返事ありがとうございます

>>691
$B = $_POST['B'];
ということでしょうか?やってみましたが投稿はできてもメール送信ができません・・・

>>692
ttp://ponk.jp/php/file/bbs1
を参考に見よう見まねで打ちました
実際には4つぐらいの項目を入力したいのでこうした方が良いのかなと考えた次第です
0694デフォルトの名無しさん (ワッチョイ e6af-AZYz)2017/01/31(火) 11:54:46.58ID:4WQSXuaN0
>>693
掲示板だったのね。なら下のforeachだけ要らない

mb_language("Japanese");
mb_internal_encoding("UTF-8");

↑を<?phpの下に書いて

メールの部分をこうすれば送信できるんじゃないか
$email = "[email protected]";
$to = '[email protected]'';
$header = "From: $email\nReply-To: $email\n";

mb_send_mail($to '題名', h($row['B']), $header);
0695デフォルトの名無しさん (ワッチョイ 7e7b-316P)2017/01/31(火) 12:07:20.02ID:SZ8YrWi+0
>>688
山田祥寛(よしひろ)、翔泳社
10日でおぼえる PHP 入門教室、第4版、2012

この本では最短で、一通り作れるようになるけど、文法の解説は少ない。
それに、もっと新しい本もあるかも知れない
0696デフォルトの名無しさん (ワッチョイ 1f56-FuHd)2017/01/31(火) 12:45:54.81ID:143GYQRi0
>>688
perlでwebアプリ作成経験あるなら
関数リファレンス1冊あれば十分
それすらPHPマニュアル読めばいいから無くてもいい
あとはperlで作ったのと同じものをPHPで組んでみればいい

PHPは○○の処理する時には××という組み込み関数(あるいはライブラリ)がある
という事をできるだけたくさん知っておく事が大事だと思う
細かい使い方までは覚えて無くていい(使う時になって調べればいいだけ)

楽してなんぼのスクリプト言語で車輪の再発明はするなって事
0697デフォルトの名無しさん (ワッチョイ 1f56-FuHd)2017/01/31(火) 12:48:39.39ID:143GYQRi0
>>676
PHP Storm一択
テキストエディタでシコシコPHP書くとか何の苦行だよって思うw
0698デフォルトの名無しさん (ワッチョイ 1f56-FuHd)2017/01/31(火) 12:55:57.11ID:143GYQRi0
>>675
案件による

俺はCentOS環境を用意してるけど
最近のPHPで実装できるレベル(ハッキリいうとレベルが低い)の案件なら
大半はwindows環境でxamppで開発しても何ら問題ないな
0699デフォルトの名無しさん (アウアウウー Sa7f-Hx4G)2017/01/31(火) 13:00:49.60ID:AzvNrs+Ya
>>694
ありがとうございます!教えていただいたように

<?php foreach($rows as $row): ?>
<strong><?php echo h($row['A']) ?></strong>
<?php endforeach ?>

<?php
mb_language("Japanese");
mb_internal_encoding("UTF-8");

$email = "[email protected]";
$to = "[email protected]";
$header = "From: $email\nReply-To: $email\n";

mb_send_mail($to , h($row[B]), $header);

?>

としたのですが合ってますでしょうか?"題名"の部分があるとエラーになってしまうので
一旦空白にしました

動かしてみたのですがメールは届くのですが内容が

From: [email protected]
Reply-To: [email protected]

だけでBに入力した情報は届きませんでした・・・
もし修正箇所等あればお教えください。質問ばかりですみません
0700デフォルトの名無しさん (JP 0H13-zSxl)2017/01/31(火) 13:03:28.72ID:WN418v1sH
windowsでいいよ
環境による違いって1%以下じゃね?
それなら開発しやすいwindowsのほうが楽
0701デフォルトの名無しさん (ワッチョイ e6af-AZYz)2017/01/31(火) 13:13:47.97ID:4WQSXuaN0
>>699
mb_send_mail($to, '題名', h($row['B']), $header);
, が消えてた

あと [B] じゃなくて['B'] だからな
それとフォームでBにpostしてるんでしょうね?
↑でダメならとりあえず $row['A'] で表示されるか試してみなよ
0702デフォルトの名無しさん (ワッチョイ 1f56-FuHd)2017/01/31(火) 13:14:05.61ID:143GYQRi0
>>699
一連の流れを読んでないのに茶々を入れて申し訳ないが
メール送るのにmb_send_mail()使うとかやめとけ(細かい理由はググって勉強して)

俺は昔ZendFrameWorkのコードを元に自作してしまったが
探せばlocalからでも外部のSMTPサーバー使ってでも送れる
便利なライブラリがいくらでもあるだろう

PHPはメール一通送るのに苦労するような言語じゃないぞ
楽してなんぼの言語だ
0703デフォルトの名無しさん (アウアウウー Sa7f-Hx4G)2017/01/31(火) 13:31:33.78ID:AzvNrs+Ya
>>701
失礼しました
今度は題名は表示できましたが他は空白で$row['A']でもダメでした・・・
すみませんもしかしたら誤解を与えていたかもしれないですが投稿フォームは一つで
サイトへの投稿とメール送信をしたい、という意味でした。>>690で省略したフォームは

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8">
<title>掲示板1</title>
</head>
<body>
<form method="post">
A: <input name="A"><br>
B: <input name="B"><br>
<input type="submit" name="write" value="送信">
</form>
<hr>

です
0704デフォルトの名無しさん (アウアウウー Sa7f-Hx4G)2017/01/31(火) 13:37:03.58ID:AzvNrs+Ya
>>703
またちょっと日本語が変でした
AとBという入力フォームと一つのボタンでAをサイトへ投稿、Bをメール送信したい
という意味です

>>702
そうなのですか?上級者向けだとか脆弱性があるとかでしょうか?
ともかくありがとうございます、調べてみます
0705デフォルトの名無しさん (ワッチョイ e6af-AZYz)2017/01/31(火) 13:46:41.41ID:4WQSXuaN0
>>703
ごめん $rowが書き換えられてたから表示されないんだわ

<?php foreach($rows as $r): ?>
<strong><?php echo h($r['A']) ?></strong>
<?php endforeach ?>

こうしたらできると思うわ
ちゃんと勉強して改造したほうがいいと思うけど
0706デフォルトの名無しさん (ワッチョイ 1f56-FuHd)2017/01/31(火) 13:53:32.88ID:143GYQRi0
>>704
mb_send_mail()はPHPのmb周りの文字エンコーディングの扱いの事をよく理解しておかないと
文字化けを起こしたり予期せぬ動作を起こすから

メールソフトでメールを作るのと同じ感覚で
from,to,subject,cc,bcc,添付ファイルetcを指定するだけで簡単にメールを送ることができるライブラリがあるのに
わざわざメールヘッダを自分で組み立てる必要があるmail()・mb_send_mail()関数は
PHPで使う必要性は全くない
0707デフォルトの名無しさん (ワッチョイ 5b46-FuHd)2017/01/31(火) 14:00:11.16ID:iovKNvqi0
mailでメール送るぐらいならpopenでMTAにコマンド送る方がまだ勉強にはなるわな
mail使ってメール送ったところでこの関数の糞みたいな仕様を覚えるだけで融通が効かないし
0708デフォルトの名無しさん (ワッチョイ 1f56-FuHd)2017/01/31(火) 14:03:28.08ID:143GYQRi0
>>707
そうそう
mb_send_mail()なんてPHPのダメな部分を凝縮したような関数だと思うw
0709デフォルトの名無しさん (アウアウウー Sa7f-Hx4G)2017/01/31(火) 14:09:43.37ID:AzvNrs+Ya
>>705
ありがとうございます!できました!
本当に感謝です。そうですね、ちゃんと噛み砕いて改造できるようにします

>>706
なるほど、そういうことですね
他の送信方法を調べてみますね。ありがとうございます
0710デフォルトの名無しさん (JP 0H36-Ijd2)2017/01/31(火) 15:18:40.23ID:desKHZjFH
>>707
> mailでメール送るぐらいならpopenでMTAにコマンド送る方がまだ勉強にはなるわな
勉強にはなるだろうが、実用度はどうかな
0711デフォルトの名無しさん (ワッチョイ eec9-AZYz)2017/01/31(火) 15:46:06.26ID:khfbkkxs0
>>708
同時にもっとも便利な側面でもあるよな
0712デフォルトの名無しさん (アウアウカー Sa5b-R94c)2017/01/31(火) 16:57:19.69ID:GujF4JLqa
何も考えずswiftmailer使っとけばいいよ
0713デフォルトの名無しさん (ワッチョイ 1f56-FuHd)2017/01/31(火) 17:21:30.16ID:143GYQRi0
>>710
localのMTAから添付ファイル付きのHTMLメールを送るとかだと
mail()関数使うよりpopenで直接MTA叩くほうがまだ簡単かもなw
0714デフォルトの名無しさん (JP 0H36-Ijd2)2017/01/31(火) 17:44:39.09ID:desKHZjFH
>>713
オナニーは一人でやってろ
0715デフォルトの名無しさん (ワッチョイ 5b46-FuHd)2017/01/31(火) 19:14:14.64ID:iovKNvqi0
メールで添付ファイル送る時にpopenを使うのってPHP4の頃は結構普通だったけどなあ
mailで送るのとコードの行数ほとんど変わらんだろ
0716デフォルトの名無しさん (ワッチョイ 1f56-FuHd)2017/01/31(火) 19:32:41.67ID:143GYQRi0
行数っていうかコードの内容自体がほとんど一緒になる(当たり前)
PEAR(笑)を使いたくない時は使ってたっけ

とりあえずオナニーって言葉が使いたかっただけかなとw
0717デフォルトの名無しさん (ワッチョイ a33c-bF0B)2017/01/31(火) 21:06:08.09ID:JTv4YpQ+0
mail($to, $subject, $message, $headers);

$m = popen($mta_path, 'w');
fwrite($m, $headers);
fwrite($m, $message);
になるだけだし
mail関数って何年か前から脆弱性を指摘されてたのに結局根本的な解決はされないまま最近になってやっとphpマニュアルに警告が載せられたでしょ
実用度でも後者の方が上だけど710はライブラリがどう実装されてるかコードなんて読んだ事ないんだろう
まあペチパーらしいよ
0718デフォルトの名無しさん (ワッチョイ a33c-bF0B)2017/01/31(火) 21:18:03.59ID:JTv4YpQ+0
>>715
今でも普通
自前で実装するかライブラリ側で実装してるかの違いだけで
0719デフォルトの名無しさん (ワッチョイ d3f8-AZYz)2017/02/01(水) 04:18:07.09ID:8zVZaxIi0
socketでsmtp実装するとかなんかと勘違いしてんじゃね
0720デフォルトの名無しさん (JP 0H36-Ijd2)2017/02/01(水) 11:20:13.83ID:y1IRJd7eH
>>717
お前こそmail()の中身知らずにいってるだろ
まずはPHPのコード読んでからもの言え
お前のは、単なるオリジナルコードの劣化実装に過ぎない
0721デフォルトの名無しさん (ワッチョイ 1f56-FuHd)2017/02/01(水) 12:05:05.01ID:AQgy4mwi0
PHPのmail関数の実装って
簡単にいえばMTAパイプオープンしてコマンド流してるだけだろ

その過程で余計な事をやってるから使いにくいわけで
だったらmail()なんか使わずにpopenしてしまった方が楽って話
を皆さんがしてると思うわけだが
1人だけトンチンカンなのが居て笑えるw
0722デフォルトの名無しさん (ワッチョイ 1f56-FuHd)2017/02/01(水) 12:14:12.24ID:AQgy4mwi0
ちなみに717が書いてる
>mail関数って何年か前から脆弱性を指摘されてた
ってのもPHPが「余計な事」をやってるせい
まぁそれこそ実装コード読めば分かること

今PHPマニュアル見たらやっとこの件について追記されたんだな
ほんと今更だけどw
0723デフォルトの名無しさん (ワッチョイ 6bc1-y5A3)2017/02/01(水) 12:25:58.75ID:LECYUBIq0
Perlの頃はパイプ開いてやってたなー
0724デフォルトの名無しさん (ワッチョイ 5b46-FuHd)2017/02/01(水) 12:29:39.79ID:2dY+W0qT0
PHPMailerで話題になった脆弱性の件かなあ
PHPのコードレベルでいえば
mailやmb_send_mailの第5引数にphp_escape_shell_cmdを通してるのが原因のやつ
PHPマニュアルに書かれたのは俺も今はじめて知った

>1人だけトンチンカンなのが居て笑えるw
たしかに
mb_send_mailの糞の上に糞を塗り固めたようなPHPのコードとか本当に読んだことあるのかね
0725デフォルトの名無しさん (ワッチョイ 1f56-FuHd)2017/02/01(水) 12:47:28.06ID:AQgy4mwi0
そうそう
PHPの関数で言うとescapeshellcmd()が勝手に適用される(PHPって本当にこういうのが多い)
せいでMTAがsendmailだと任意のコマンドを実行できてしまうって話
postfix使ってれば関係ないし今更sendmailねぇ…って思うけど
sendmailとか苦行過ぎて二度と触りたくないw
0726デフォルトの名無しさん (オイコラミネオ MM76-bF0B)2017/02/01(水) 13:00:46.75ID:IzshbyCZM
今の若いサバ管だとsendmail触れないのも多いんだろうな
いや俺ももう関わりたくはないけどさ
0727デフォルトの名無しさん (ワッチョイ e650-Q0kd)2017/02/01(水) 16:23:09.34ID:C9GybJdQ0
【OS】windows【PHP】5.6【連携ソフト】MySQL
exec()を使い別のPHPファイルを実行し、その別ファイルで主にmysqlで処理したいのですが、サーバー上ではなぜかsqlに接続できません。
条件として、exec()を使うにあたって呼び出し先のPHPは、サーバーで用意されているPHPと別のカスタムインストールしたPHP(同じホスト内)を使います。*利用しているサーバーでexec()を使用するために必要な措置。
exec()を使わなければMySQLは問題なく使えています。
そして、exec()を使って別のPHPファイルを実行するところまでは成功しています。
原因が分かる方いましたらよろしくお願いします。
0728デフォルトの名無しさん (アウアウアー Sa76-R94c)2017/02/01(水) 17:00:19.08ID:dFm0/nQHa
macOSを利用しておりmampを使って環境を準備しようとしてるのですが、数点教えてもらいたい事があります

macOSのターミナルでphp -v のコマンドを入力すると、5.系が出てきます
mampで7.xをインストールした後に、上記のコマンドを入力したのですが、変化がありませんでした
そこで、適当なphpファイルを作りmampのdocルートに配置、phpversion()を使って本当に動かしてるバージョンを出力したところ7.x系が表示されました

これって、mampがOSとは別にphpの実行環境を作って、OSとは無関係に動作させてるのでしょうか


後、mampはインストールして不要になって削除したりした場合にOSに影響出るとかはありますか
基本的にパスとかいじらなければ問題ないのでしょうか

mampのスレがなかったのでこちらに書き込みしましたがご存知でしたらお願いします
0729デフォルトの名無しさん (ワッチョイ 6bc1-ngM0)2017/02/01(水) 17:32:00.71ID:LECYUBIq0
>>727
お前はそれだけ聞いて原因が特定出切ると思うのか?

>>728
どのMAMP使ってるか知らんけどその程度よく分かってないならMAMPなんて使っちゃあかんで
macOSならそもそも標準でPHP入ってるし最新版もHomebrewで簡単にインストール出来る
0730デフォルトの名無しさん (ワッチョイ e650-Q0kd)2017/02/01(水) 17:56:31.57ID:C9GybJdQ0
>>729
もし使ってる人なら特定できないまでもある程度の見当は付くのではないかと思ってかなり省略しましたが、逆に他に何が必要でしょうか?
0731デフォルトの名無しさん (ワッチョイ 1f56-FuHd)2017/02/01(水) 17:59:02.93ID:AQgy4mwi0
>>727
エスパーで答えてみるw

呼び出し元のPHPを「A」とし、Aから呼び出されるPHPを「B」とすると
Aを経由せずにBから直接MySQLに繋げられるか試してみたら?
たぶん繋がらない
0732デフォルトの名無しさん (ワッチョイ 1f56-FuHd)2017/02/01(水) 18:04:44.97ID:AQgy4mwi0
>>728
ターミナルから php -i を実行して

mampのdocルートに置いたPHP
<?php
phpinfo();
でを実行して比較してみ

PHPのバージョン以外に違うところが分かるから
特にインストールパスに関する部分をよくみるといい
0733デフォルトの名無しさん (ワッチョイ e650-Q0kd)2017/02/01(水) 18:25:08.21ID:C9GybJdQ0
>>731
レスありがとう。早速試してみました。
呼び出し元をaaa.php、exec()による呼び出し先をbbb.phpとすると、
ローカル環境だとaaa.php、exec()使用による呼び出しのbbb.php、bbb.php直接ともにsqlに繋がります。
サーバーだと、aaa.phpとそれ以外もexec()不使用であればどれもsqlに繋がります。またbbb.php直接でも繋がります。
サーバーでexec()を使ったbbb.phpによるsqlの接続が出来ない状態です。(今のところSQL以外は問題なく実行できてる)
ホストは同じなのですが別のPHPからbbb.phpを実行しているのが原因でしょうか。サーバーの都合で別PHPを使っていてローカルでは同じPHPからの実行なので。。
0734デフォルトの名無しさん (ワッチョイ 5b46-FuHd)2017/02/01(水) 18:49:36.91ID:2dY+W0qT0
>>733
1.サーバー環境
2.aaa.phpとbbb.phpとmysqlは全て1の同一サーバー上にあるのか
3.aaa.php内で実行されるexec()の内容(具体的にどうやってbbb.phpを呼び出してるか)
4.bbb.phpからmysqlへはどうやって繋いでるか(pdoその他)
あたりを書いてみては?
そもそもexec()を使って実行ってのを本当にする必要があるのかってところから疑問ではある
0735デフォルトの名無しさん (ワッチョイ 6bc1-R94c)2017/02/01(水) 19:00:17.38ID:LECYUBIq0
まずどういうエラーで繋がらねぇのかが問題
つか出せる情報全部出せや何を出し渋っとんじゃ
0736デフォルトの名無しさん (ワッチョイ eec9-AZYz)2017/02/01(水) 19:08:26.13ID:z0RwPWf30
>>735
こういうアホ(に見られがちな初学者)は、
何が「情報全部」になるのかわからないんだよ

だから、全部出せなんていうのじゃなくて
○○と△△と□□を書け と具体的に指示すべき
0737デフォルトの名無しさん (ワッチョイ 1f56-FuHd)2017/02/01(水) 19:08:52.47ID:AQgy4mwi0
こういうレベルの質疑所では少ない情報からエスパーで回答を導き出すのも1つの楽しみ方ではある
いや質問する以上は出せる情報は出すべきなのは確かなんだけどw

>>733
なんかあまり読まずに適当なこと書いてすまなかった
0738デフォルトの名無しさん (アウアウカー Sa5b-R94c)2017/02/01(水) 19:19:51.15ID:O7iUTg1Sa
>>736
ご尤もではあるがテンプレ読まない従わないはNG

>>737
悪くはないが勘違いを生産しないためにもこっちがオススメよー

エスパーが質問に答えるスレ
ttp://echo.2ch.net/test/read.cgi/tech/1187922645/
0739デフォルトの名無しさん (アウアウウー Sa7f-R94c)2017/02/01(水) 19:39:38.68ID:Dgu+KGMra
あんがとさんです

>>729
ホームブロウ?実はこれを使いたくないというのがmamp使う理由で、まあ言って仕舞えばOS汚したくない病なんですよね、、、
今のところ仮想環境にもう1つmacOS入れるかたまに使う仮想Windowsにmampを入れようか検討
けど、リソース無駄だし快適に操作したいからmacOSに直接入れるか悩んでるんですよね
前にPythonとか勉強してたときはLinux仮想で何とでもなったんですが、mampがLinuxないから
めんどくさがらずxammpとか使えば良いのか、、、

>>732
やってみたのですがパスはデフォの/usr/bin/phpでござった、というかよくわからんかったです
0740デフォルトの名無しさん (アウアウカー Sa5b-R94c)2017/02/01(水) 19:47:06.68ID:O7iUTg1Sa
>>739
homebrewなんかよりMAMPの方がよっぽど何やってるか分からんと思うのだが
お前さんの現状がそれを証明してるでしょ

homebrewが嫌なら標準のもの以外何使ったって一緒だし
プログラムより先にその辺勉強したら?
0741デフォルトの名無しさん (ワッチョイ ee5b-FuHd)2017/02/01(水) 21:05:47.39ID:yFAqAUso0
>>739
もし可能であれば、
homebrewを使う
or
vagrantを使う

個人的には後者で、Lamp環境などをCentOSで構築したい派
ただしその場合、Linux環境を整える知識もいるけど、
サーバサイド開発者にとってLinux操作は欠かせないからやろうぜ
0742デフォルトの名無しさん (ワッチョイ bf17-bE/B)2017/02/01(水) 21:16:11.38ID:+ImP5E6S0
>>740
あんまりその辺理解しないでMAMP使おうとしたのがそもそもだめだったのね
別の言語で環境とかでめんどくさい思いしたから楽できるなら楽しようかと思ったのが間違いか

>>741
一応、Linuxのエンジニアだからそっちの知識はそれなりにあるんだけど、
さっとPHPの本とか勉強して簡単なものなら作れるくらいになりたいなーって思って

ま、出直してきます
0743デフォルトの名無しさん (ワッチョイ 6bc1-y5A3)2017/02/01(水) 21:23:04.08ID:LECYUBIq0
>>742
Linuxのエンジニアの癖にwhichも知らんとかうっそだろお前
0744デフォルトの名無しさん (ワッチョイ ee5b-FuHd)2017/02/01(水) 22:44:15.69ID:yFAqAUso0
>>742
Linuxエンジニアなら、尚更mamp使う必要ないし
vagrantなり、VM環境でやったほうがいいよ
0745デフォルトの名無しさん (ワッチョイ bf17-R94c)2017/02/01(水) 23:02:41.06ID:+ImP5E6S0
>>743
ホントでっせ
whichはわかるが、今回のお悩み解決に自力で繋がらなかったからここで聞いたんよ、許して

>>744
アドバイス通りさっきsuseさんでphp7の環境作った!楽しようとしたのがあかんかった
実務で使うわけじゃないがmampで本番環境とか動かしてるところなんてなさそうだし
自分で環境作るってのは大事な勉強と痛感いたしました
0746デフォルトの名無しさん (ワッチョイ 6f42-P4zY)2017/02/01(水) 23:10:31.30ID:OMBPerng0
>>727
よくあるトラブルとしては、環境変数周りかな
localとサーバーで違ったりするから

あとexecだと、パスが違うとか、インクルードがうまくできてないとかも多いけど
エラーログとかに普通は何か出てるからわかると思うが
0747デフォルトの名無しさん (アウアウウー Sa7f-Hx4G)2017/02/01(水) 23:23:53.32ID:sVMiC1ZCa
たびたび質問失礼します。掲示板を作っているのですが10件ごとに表示するには
どのように書けば良いでしょうか。現行では

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>Document</title>
<link rel="stylesheet" href="css/bootstrap.min.css">
</head>
<?php
function h($str) {
return htmlspecialchars($str, ENT_QUOTES);
}
$rows = json_decode(file_get_contents('back.json'), true);
if (!empty($_POST['write'])) {
$row = array(
'A' => $_POST['A']
);
array_unshift($rows, $row);
file_put_contents('back.json', json_encode($rows));
}
?>
<?php foreach($rows as $r): ?>
<p><?php echo h($r['A']) ?></p>
<hr>
<?php endforeach ?>
</body>
</html>

このような形になっております。色々調べてたのですが書き込み内容を一度格納してから
表示する場合でのやり方が分からず悩んでいます。どうか宜しくお願い致します
0748デフォルトの名無しさん (アウアウウー Sa7f-Hx4G)2017/02/01(水) 23:35:28.37ID:sVMiC1ZCa
>>747
追記です
掲示板のhtml等は入りきらないので省略しております
0749デフォルトの名無しさん (ワッチョイ f742-6a6W)2017/02/01(水) 23:36:54.53ID:ciQGnh7G0
すでに存在してるサンプルで勉強したほうがいい
0750デフォルトの名無しさん (ワッチョイ f742-6a6W)2017/02/01(水) 23:40:56.03ID:ciQGnh7G0
いまぐぐってみたところ。


PHP と SQLite を使った掲示板
https://oku.edu.mie-u.ac.jp/~okumura/php/sqbbs.php

PHP+SQLite3で2ちゃんねるっぽい掲示板を作る - Qiita
http://qiita.com/torokko/items/8a07519782f01a68c627

PHPとSQLiteで簡易BBSの作成 | 勉強したことのメモ
http://taitan916.info/blog/?p=1923

八角研究所 : PHPで週末プログラミング(1) - 掲示板を作ってみよう(1)
http://www.hakkaku.net/articles/20080818-260

jQueryとPHPとSqliteを使ったAjaxのシンプルなチャット
http://picxpic.com/?p=104

SQLite 簡易掲示板
http://rrr-kb.grrr.jp/php/sqlite_bbs/index.php

掲示板 UTF-8版PHP掲示板,画像ファイル他アップロード,スマホ対応,PHP7対応,スパム対策
http://www.vector.co.jp/soft/unix/net/se453023.html
.
0751デフォルトの名無しさん (ワッチョイ ee5b-FuHd)2017/02/01(水) 23:57:07.31ID:yFAqAUso0
>>747
デバッグ方法を参考までに教えます。

$rows = json_decode(file_get_contents('back.json'), true);
# $rowsにはデータは格納されているか確認する
var_dump($rows);exit;

問題なければ、
if (!empty($_POST['write'])) {
# ここを通過しているか
# $row配列を作る前に、適当にechoしてみる。
# exitもすること。

問題なければ、
file_put_contentsされているかを確認

中身のデータがどうなっているのか、
順序もって確認してみましょう。

ここまでできれば道は開かれる。
0752デフォルトの名無しさん (ワッチョイ 13d4-xTzd)2017/02/02(木) 00:09:14.77ID:Vu6mO5aQ0
データが配列に入ってるぽいからarray_slice()で10件取り出すとか
0753デフォルトの名無しさん (アウアウウー Sa07-gztn)2017/02/02(木) 00:52:50.08ID:8sL76eTEa
>>750
わざわざありがとうございます。もちろん参考にはさせていただきたいのですが
あくまで一度格納したデータを書き込んだ上で件数ごとに表示させたいのです
その先行事例が見つけられず・・・もちろんそもそも参考にできないのも力不足ゆえですが

>>751
ありがとうございます。すみません、デバックというのもやったことが無いのですが
このコードを書き込んでサイトが表示されれば問題が無いというようなことでしょうか?

>>752
ありがとうございます
調べたのですがどのように使えば良いか検討つきません・・・
この場合、<?php foreach($rows as $r): ?> の部分から変える必要があるという事でしょうか
0754デフォルトの名無しさん (ワッチョイ cf7b-gPBI)2017/02/02(木) 01:31:57.69ID:QtNjUxgZ0
homebrew を使わなかったら、パッケージの依存関係を管理できない。
Linuxでもdeb/rpm を使わなかったら、何もできない

パッケージマネージャーを使わないで、自分でパッケージを入れるなんて、100%無理だろ。
複数のパッケージのインストールの順番が異なるだけで、違ってくる。
ABC, BCA という順番では、結果が違うし、そんなことまでユーザーがわかるわけがない

Chef, vagrant, Docker などのレシピを取ってくればいい

Chefのレシピも結局は、OSの種類を見て、debian系ならdeb、RedHat系ならrpmを使うから、
ユーザーは、個別のパッケージマネージャーを意識しないで済むだけ
0755デフォルトの名無しさん (ワッチョイ 03c1-yene)2017/02/02(木) 04:01:01.54ID:ICaoPi9S0
>>745
何ていうかPHPの初心者ってだけなら分かるけどLinuxのエンジニアがその程度の問題を解決出来ないのは許されねぇと思うわ
0756デフォルトの名無しさん (ワッチョイ c346-1ST5)2017/02/02(木) 12:25:55.17ID:sBmZcLbl0
>>753
で、751が書いてくれてる
var_dump($rows);
exit;
は実行してみた?

752が書いてくれてる
array_sliceのPHPマニュアルを読んで
print_r($rows, 0, 2);
とかは試してみた?

もしそれすら試さずに質問してるなら
ハッキリ言うけどプログラミングには向いてないわ
手遅れにならないうちに違う道に進むことをおすすめする
0757デフォルトの名無しさん (ワッチョイ b3c9-C7TH)2017/02/02(木) 15:08:51.61ID:t2qREDFK0
例外を別のファイル(呼び出し元)で受けたいのですが、どのように例外と判断すればよいのでしょうか?
a.php//呼び出し元
<?php
$hoge = new classB();
$result = $hoge->get();
// この$hoge->get()でエラー発生(PDOでの接続エラーとか)
// エラーをa.phpで処理(エラー内容の取得と、エラーメッセージ表示)したい
?>
b.php//呼び出される側
<?php
class hoge
{
function get(){
try {
//pdoで接続とか
} catch (PDOException $e) {
//サイトとかの例だと、ここでエラーメッセージ等の処理をしてしまいます。
//呼び出し元のa.phpで、エラー時の処理をしたいのです。
 }

}
どなたか教えてください。
0758デフォルトの名無しさん (ワッチョイ c346-1ST5)2017/02/02(木) 15:15:09.65ID:sBmZcLbl0
>>757
例えば
Bで期待された結果が得られた時は”○”と出力
そうでなければ”×:例外内容”を出力
AはBの出力結果(○ or ×)によって処理

○とか×は例で書いただけで実際はHTTPのステータスコードみたいに
200ならOK とか 50Xならエラーとか
きちんと仕様を決めるといい

web APIとか扱ったことないのかな?
あれと同じことだよ
0759デフォルトの名無しさん (ワッチョイ 03c1-4SR0)2017/02/02(木) 16:01:33.97ID:ICaoPi9S0
>>757
例外はレイヤーで設計する
低レベルAPIが投げた例外は高レベルAPI内部でキャッチして集約(元々の例外は$prevでチェーン)
或いはキャッチしたAPIで処理し切る(復旧するなり落とすなり)

いずれにしてもどのレイヤーが何処までの例外に対応するかは決めておかにゃならん
途中でキャッチしてエラー吐く処理して親に例外通知しないならそこで例外処理は完結していなければならない

例外安全とかも考えるべし
0760757 (ワッチョイ b3c9-C7TH)2017/02/02(木) 18:02:37.06ID:t2qREDFK0
>>758
web APIとか扱ったことないです。
>>759
すみません。おっしゃることの半分も理解できません。
a.phpでエラーが起きているのかどうか、エラー内容も知りたいのですが・・・。

もし初心者向けの質問スレがありましたら、ご紹介してもらえませんか?
ちょっと探したのですが見つかりませんでした。

サイト検索すると、例外処理は、例外の発生したファイル(箇所)で
行うのばかりで、他のファイルで処理する方法が見つけられませんでした。
0761デフォルトの名無しさん (ワッチョイ d356-1ST5)2017/02/02(木) 18:06:19.95ID:I2XsCSbD0
758の内容が理解できないならYahoo知恵遅れとかのがいいと思う
0762デフォルトの名無しさん (ワッチョイ 8f5b-1ST5)2017/02/02(木) 18:24:29.29ID:5vn48hDV0
>>757
ちょっと質問の意図がわからんのだが
a.phpでエラーが出ているの?
catchのPDOExceptionをa.phpに表示させたいの?

まずやりたいことを教えてくださいな
0763デフォルトの名無しさん (ワッチョイ 8f5b-1ST5)2017/02/02(木) 18:30:28.72ID:5vn48hDV0
>>757
追記すると、
PDOExceptionで吐かれたエラーを
そのままechoさせないで、変数なり渡す
それをa.phpで$resultが判定

catchでどんな書き方してるかわからんけど
要領としてはこんな感じ

ただ、これをする意味があるのかは不明
0764デフォルトの名無しさん (JP 0H07-4SR0)2017/02/02(木) 18:32:25.93ID:yqvkGsV5H
>>760
親に例外通知したいなら例外をキャッチしないか, キャッチした例外をそのまま投げ直すか, キャッチした例外を高レベルの例外でラップして投げるかの何れか
0765デフォルトの名無しさん (ワッチョイ a3f8-0MWP)2017/02/02(木) 18:49:28.99ID:bt5fyjk60
get()のとこでしないでa.phpで例外処理するだけ
0766デフォルトの名無しさん (ワッチョイ d3a0-TTqS)2017/02/03(金) 01:16:26.70ID:5q5mSgpk0
>>684です。
PEARやHTTP_Request2をなんとか準備して一先ず、ブログに記事をアップロードできるようになりました。
ですが、いくつか問題が残りました。

1本文はすべて「記事を書く」に入ってしまい「続きを書く」に入れることができない。
2画像をアップロードして、ブログ上での画像のURLの取得方法がわからない。
3タグが追加できない。

1と3も問題ですが、2ができないと非常に困ったことになります。
何か良い方法はないでしょうか?
0767デフォルトの名無しさん (ワッチョイ 8f5b-1ST5)2017/02/03(金) 03:58:43.49ID:Ixnwxz7P0
>>766
状況わからないけど
ブログからどういう形式でデータを取得してるの?
APIでやってるの?
0768デフォルトの名無しさん (ワッチョイ d3a0-TTqS)2017/02/03(金) 10:56:49.07ID:5q5mSgpk0
正直、初心者過ぎて何やってるのかほとんどわからない
とりあえず
https://github.com/seiyaan/LiveDoorBlogAtomPub
http://output-ism.info/2014/03/08/1561/
でアップロードは確認できた。
主に下のやつでいろいろ試している状態
0769757 (ワッチョイ b3c9-C7TH)2017/02/03(金) 11:15:01.38ID:eixaQSD90
>>764,>>765
ひょっとしてエラーは呼び出し元へ戻ってくるのでしょうか?
b.phpのクラスhoge->get()で起きたエラーは、呼び出し元のa.phpで、
try { $hoge->get();}
catch (PDOException $e) {
echo $e->getMessage();
}
とすれば、hoge->getでのDB接続エラーを捕捉できるということでしょうか?
0770デフォルトの名無しさん (ワッチョイ 6f50-cqZ0)2017/02/03(金) 12:47:01.16ID:Nsh1g7Ol0
>>746
サーバーの設定やらなんやらいじったらしばらくサイトが表示されなくなってしまって対処してました。。
環境変数やパスは確認済みで、考えられるのはsocket周りかなとは思うんですけど、ini等で変更してみても上手く行かないんですよね
ググってもその例が出てこなくてどうにもならない。。
目的は非同期の別プロセスで重い処理をしたいので、もう少し調べてみてダメだったら諦めてajaxでやろうかと思います
0771デフォルトの名無しさん (ワッチョイ c359-0MWP)2017/02/03(金) 14:18:44.41ID:XND6iDtO0
まだ直せないのかエンジニア
0772デフォルトの名無しさん (ワッチョイ 33ce-0MWP)2017/02/03(金) 15:23:46.05ID:ZDAGU2jx0
インスタンス生成時に複数のメソッドを実行する場合

function __construct()
{
0773772 (ワッチョイ 33ce-0MWP)2017/02/03(金) 15:25:20.61ID:ZDAGU2jx0
書き込み押しちゃいました

function __construct()
{
$this->a;
$this->b;
}

public function a() {}

public function b() {}

といった使い方をしてもいいんでしょうか?
0774デフォルトの名無しさん (ワッチョイ d356-1ST5)2017/02/03(金) 16:32:04.20ID:AZd6IUX40
逆に何でだめだと思ったの?

あと好みの問題かもしれないけど

public function a() {
  return $this;
}

public function b() {
  return $this;
}

みたいにしておくと
$this->a()->b();
みたいにメソッドチェーンできてスマートかな
0775デフォルトの名無しさん (ワッチョイ 33ce-0MWP)2017/02/03(金) 16:42:27.65ID:ZDAGU2jx0
>>774
レスありがとうございます

__construct内でプロパティの初期化以外の実例が見つけられなかったので
一般的には使われていないのかと思いました
0776デフォルトの名無しさん (ワッチョイ 03c1-yene)2017/02/03(金) 20:29:36.44ID:Y5WAIXu10
>>769
例外は「キャッチされない限り」コールスタックを遡り続ける

throw new Exception();

で例外は投げられるから自分で挙動を確かめてみるといい
(勿論実用上はExceptionかその子孫を継承した例外クラスを実装して投げる)
0777デフォルトの名無しさん (ワッチョイ 1342-vqxm)2017/02/03(金) 23:26:01.79ID:nOd+Bj3o0
>>770
あーなるほど、バックグラウンドで動かすってやつですね。
sshで入ってコマンドラインで実行するとOKで
execで動かすとダメ、ということだと、やっぱり環境変数関連が一番怪しいかな

execに限らないけど、バッチとかでphpを動かす時は
まずカレントが違う可能性も高いかな。なるべくフルパスで指定するようにしてたな。
環境変数も最低限しか設定されてないので、環境変数に依存するのはやめた方がいい(MySQLの接続先を環境変数でやるとかよくあるから)
もしくはシェルスクリプト作って、その中で export するとか
まぁ相当Linuxに詳しくないと・・よくハマるよね(自分もこの前ハマったw)
0778デフォルトの名無しさん (ワッチョイ c359-0MWP)2017/02/04(土) 02:11:09.03ID:yz7EyBEj0
>>777
そも、実行しているPHPが意図しているものかの確認をしているかどうかが彼のレスからは読み取れなくないか
0779デフォルトの名無しさん (ワッチョイ 33ce-0MWP)2017/02/04(土) 16:29:21.48ID:n3v1YVLA0
下記の記述で、Aパターンの場合はinclude先のsub.php内にて、
$Foo->method()だけでFoo内のメソッドを呼び出せるんですが、
Bパターンではsub.php内で再びFooインスタンスを生成しないと
method()にnot objectのエラーが出て、呼び出すことができません。
sub.phpから直接Foo内にアクセスする場合は
sub.phpをnew Fooと同一のメソッド内でincludeする必要があるんでしょうか?

Aパターン
<?php //main.php
class Example {
public function sample() {
$Foo = new Foo(); //Foo.php
include 'sub.php';
}
}
$example = new Example;
$example->sample();

Bパターン
<?php //main.php
class Example {
public function sample() {
$Foo = new Foo(); //Foo.php
$this->bar();
}
public function bar {
include 'sub.php';
}
}
$example = new Example;
$example->sample();
0780デフォルトの名無しさん (ワッチョイ 7f17-3Ibi)2017/02/04(土) 23:09:46.50ID:VQZ3VZ/F0
phpでmysqlに’日付’,と'オナぬした回数'をそれぞれ一日ごとに格納しています
mysql_fetch_arrayを使いechoすると
1日目、2日目、3日目、、、に対して
5回抜、2回抜、3回抜、、、と帰ってくるのですが4日目に入力し忘れた場合
1日目、2日目、3日目、5日目、、
5回抜、2回抜、3回抜、9回抜、、となります
入力忘れの日に自動で「日付」と「0回」を補完するにはどうすれば良いのでしょうか?
テーブル作成時のSQL ↓
CREATE TABLE onanimaster(
onani int(11),
nukibi date default '0000-00-00')
0781デフォルトの名無しさん (ワッチョイ a3f8-0MWP)2017/02/05(日) 11:42:59.55ID:pJp2c9va0
・毎日(0回の日にも)ちゃんとinsertをする
・格納前に最後のnukibi_dateを取り出して今日と日付が連続するか比較する
・last_inserted(next)_onani, last_inserted(next)_dateを管理するテーブルを作る

好きなのどうぞ
0782デフォルトの名無しさん (ワッチョイ d3d6-RMO+)2017/02/05(日) 21:48:00.12ID:xV17TEr+0
>>780

ばかじゃね? 1日5回も抜いてるから後々息が切れてきて抜かない日が出来るんじゃん。

最大2回でがまんすればいいんだよ。そうすれば断続的に抜けるから。
0783デフォルトの名無しさん (ワッチョイ cf42-yene)2017/02/05(日) 22:28:23.20ID:z02c26Xt0
後からで良いから、抜けてる日付のデータを入れておくと楽だよ
0784デフォルトの名無しさん (ワッチョイ 33f8-dbIh)2017/02/05(日) 23:05:41.71ID:rvJfY1g90
事前にカレンダーテーブル作ってupdate していくか
後からカレンダーテーブル作って連結してnullはゼロにする
0785デフォルトの名無しさん (ワッチョイ a3f8-0MWP)2017/02/05(日) 23:15:32.54ID:pJp2c9va0
781だけど
ちゃんと読んでなかったスマンコ
0786デフォルトの名無しさん (ワッチョイ 7f17-LFJd)2017/02/06(月) 01:05:03.78ID:/6p41uPl0
>>781
780ですが
・last_inserted(next)_onani, last_inserted(next)_dateを管理するテーブルを作る

こちらの方法が気になりました
ググっても last_insted_id() 関係の記事やページしか見つけられなくて....
参考になるようなマニュアル、リファレンス、記事などありましたら教えていただけないでしょうか?
0787デフォルトの名無しさん (ワッチョイ 1376-yene)2017/02/06(月) 01:07:34.79ID:MbdNwU5U0
cakephp3って最初にアクセスするページのデザイン変わりましたか?
参考サイトだと緑で、
get the ovens ready
と書いてあるところが、

自分のだとヘッダーが赤で
welcome to cakephp 3.3.13 red velvet. build fast grow solid って書いてあるんだけど

composer 経由でのインストールだからバージョンも選べないし、このまま進めていいのか不安です
0788デフォルトの名無しさん (アウアウウー Sa07-J+fW)2017/02/06(月) 01:19:49.57ID:Y3CDv6Uea
>>787
かわったよ
0789デフォルトの名無しさん (ワッチョイ 1376-yene)2017/02/06(月) 01:23:11.63ID:MbdNwU5U0
>>788
ありがとうです。
このまま進めたいと思います。
たいへん助かりました。
0790デフォルトの名無しさん (ワッチョイ a3f8-0MWP)2017/02/06(月) 06:46:03.10ID:BQS7D9EJ0
>>786
それは出てこないだろうね
英語の意味通りで別にそういう関数があるって話じゃないから
早い話が設定値を保存するテーブル(KVS)作れってことだけど
onaniってのは回数じゃなくて日数だと思ってたし
質問読んでなくてほんとすまんかった

最後挿入したnukibiをとるだけなら
SELECT nukibi FROM onanimaster ORDER BY nukibi DESC LIMIT 1
で出来る

挿入する前にこれと昨日の日付比較して日数に空白があれば
その分だけINSERTするようにすればいいんちゃう
0791790 (ワッチョイ a3f8-0MWP)2017/02/06(月) 07:12:47.14ID:BQS7D9EJ0
あ、もう1つ追伸しとくと
これからの方策を示しただけで
現在のぶっ壊れたデータベースを修正するって話じゃないんでそこよろしく
0792デフォルトの名無しさん (ワッチョイ 034a-Sup+)2017/02/06(月) 09:57:07.81ID:LFg06LIZ0
>>790
抜いてばかりの童貞にinsertは無理だろ
0793デフォルトの名無しさん (アウアウウー Sa07-VnDS)2017/02/06(月) 19:16:02.72ID:ozwc9aFfa
>>792
誰がうまいこと言えと
0794デフォルトの名無しさん (ワッチョイ 03d6-yene)2017/02/06(月) 19:50:18.02ID:Qfr8LDq90
データベーススレ死んでるのでここで

自分の「お気に入りの本」を無制限で登録できるシステムがあるとき、
そのお気に入りの本の順序もデータベースへ保存したいと考えています

どのようなテーブル構造にすればよいでしょうか?
0795デフォルトの名無しさん (ワッチョイ 034a-Sup+)2017/02/06(月) 19:53:11.14ID:LFg06LIZ0
>>794
順序って何さ?
0796デフォルトの名無しさん (ワッチョイ 03d6-yene)2017/02/06(月) 19:56:54.25ID:Qfr8LDq90
>>795
1番目、2番目・・・などのユーザーが本を並び替えした順番のことです

これはただの順序であって、ランキング的な意味合いではありません
0797デフォルトの名無しさん (ワッチョイ 034a-Sup+)2017/02/06(月) 20:00:24.61ID:LFg06LIZ0
列1: 本のタイトル
列2: 順番
でいいんじゃないか?
0798デフォルトの名無しさん (ワッチョイ 03d6-yene)2017/02/06(月) 20:17:46.69ID:Qfr8LDq90
いい感じのパッケージありました

https://github.com/spatie/eloquent-sortable
0799デフォルトの名無しさん (ワッチョイ d3d6-RMO+)2017/02/06(月) 21:57:45.78ID:c35vGYE60
>>797
プライマリキーくらいつくれ、能無し
0800デフォルトの名無しさん (ワッチョイ 7f17-pD/q)2017/02/07(火) 00:04:49.40ID:Mn/5HQ4m0
>>780 ですが 一応できました
もっと効率のいい書き方、変数の使い方、抜き方、等ありましたら教えてください

http://pastebin.com/pHhnxtc7
0801デフォルトの名無しさん (ワッチョイ 7f17-pD/q)2017/02/07(火) 00:10:20.64ID:Mn/5HQ4m0
>>800
すいませんミスりました
30行目 39行目 $benkyoukaisibi とありますが
$nukikaisibi のまちがいでした
0802757 (ワッチョイ b3c9-C7TH)2017/02/08(水) 09:18:47.18ID:FV7NOXvo0
お礼が遅くなりました。なんとなく(?)例外処理がわかりそうな気がします。
あと一つ関連で教えていただきたいのですが
A.php で try{ B.php内の関数} catch($error){例外処理}
としているとき、
B.php の関数で、DB処理をしてトランザクション処理をするときは、
B.phpで処理の必要があると思うのですが、そのあと、改めて例外を投げて
A.phpで補足するのが定番なのでしょうか。

例えばB.php 内の慣習(A.phpから呼び出される)で
try{sql処理} catch($error){ロールバック処理;throw $error}
といった形ということです。
0803802 (ワッチョイ b3c9-C7TH)2017/02/08(水) 09:19:56.66ID:FV7NOXvo0
ごめんなさい。関数というのは、B.phpで作られるクラスのメンバ関数のことです。
0804デフォルトの名無しさん (ワッチョイ a3f8-0MWP)2017/02/08(水) 09:23:32.00ID:+f0LmjaI0
PDOのエラーモードを例外にしてんなら、
全部PDO関連の例外はPDOExceptionに集約されるでしょ。
そこでトランザクション中ならロールバックすればいいだけ。
http://php.net/manual/ja/pdo.intransaction.php
0805デフォルトの名無しさん (ワッチョイ a3f8-0MWP)2017/02/08(水) 09:40:39.44ID:+f0LmjaI0
try {
 $pdo = new PDO(〜);
 $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
 〜
 //実行
} catch (PDOException $e) {
 if ($pdo->inTransaction()) {
  $pdo->rollBack();
 }
}

もしくは

try {
 $pdo = new PDO(〜);
 $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
 〜
 try {
  //実行
 } catch (PDOException $e) {
  $pdo->rollBack();
 }
} catch (PDOException $e) {
} 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)
0806デフォルトの名無しさん (JP 0Hff-w8tn)2017/02/08(水) 10:14:53.81ID:WP/XTf2IH
>>802
基本的に、データベースアクセスするメソッド内ではtransactionを開始しないこと(呼び出し側で処理する)。
なので、B内ではtry-catchは不要。
A内でcatchするのがrollbackの為だけなら、それも不要。commitしなければ自動ロールバックされるし。

データベースエラーのときだけログをごにょごにょしたいなら、exception handler内でexceptionのクラスを調べて、
PDOExceptionの場合にそうすればいい。
0807757=802 (ワッチョイ 9bc9-Ev9t)2017/02/09(木) 13:06:47.11ID:90f1Xg3G0
>>804,805,806
説明が下手でごめんなさい。ロールバックの仕方がわからないのではなくて、
呼び出し先(B.php)でロールバックされたことをA.phpで知って「登録されませんでした」と
いったメッセージをA.phpで送りたいんです。
>>806
A.phpでDB接続のロジックを書きたくないんです。接続せずにトランザクション開始ってできないですよね。
B.phpのクラスでDB関連のロジックをまとめて、A.phpでは結果だけ取得したいです。
結果というのは、正しい結果もあれば例外オブジェクトと思っています。
なので、A.phpでtry{b->function}catch($e){例外処理}としたいのですが、考え方が
おかしいでしょうか?A.phpがコントローラ、B.phpがロジックの場合、どのように処理するのが
定番なのでしょうか
0808デフォルトの名無しさん (JP 0H0e-oA82)2017/02/09(木) 13:45:35.85ID:dfCX7ZDmH
>>807
例えば、B.phpの立場と同じUserModel.phpを考えてみましょうか。

まず、class UserModel自身がデータベース接続を確立するのはこのましくありません。

なぜなら、ユーザの登録と同時に何かの登録をしたいとき、
$user = new UserModel();
$foo = new FooModel();
$user->add($user_data);
$foo->add($foo_data);
と書くと思いますが、トランザクションはこのコードの外側で操作する必要があります。

$conn = DBConnection::getConnection();
$conn->begin();
$user = new UserModel($conn);
$foo = new FooModel($conn);
$user->add($user_data);
$foo->add($foo_data);
$conn->commit();

このコードがコントローラに存在するなら、データベース接続はコントローラで行わなければならないということになります。
0809デフォルトの名無しさん (JP 0H0e-oA82)2017/02/09(木) 13:47:44.35ID:dfCX7ZDmH
それから、上でも書きましたが、エラー発生後他の処理をしないなら、exception handlerで全てのexceptionを処理するのが簡単です。
0810デフォルトの名無しさん (ワッチョイ 9342-3OfB)2017/02/09(木) 18:57:33.26ID:jEjnqqv00
>>807
呼び出し先でエラーがあったらメッセージを出したいってこと?
自分だったら、global変数にエラーメッセージを入れて、それを出力するようにするかなぁ
0811デフォルトの名無しさん (オッペケ Srf7-S/g0)2017/02/09(木) 20:01:16.79ID:rM/fQ6YVr
おれ、いろんなサイトでB.phpでDB接続して、A.phpでも接続してるけど、特になんの問題もないよ
動けばいい、多少のロジックの無駄は気にすんな
0812デフォルトの名無しさん (ワッチョイ 26c9-cGUq)2017/02/09(木) 20:24:33.59ID:3FO030YH0
foreachで、途中からループを始めたいときはどうしたらいいの?
最初のn個飛ばすとか
0813デフォルトの名無しさん (ワッチョイ dfd6-CIv3)2017/02/09(木) 20:46:25.53ID:m/rQHIL40
欠陥コードだから構造見直し
0814デフォルトの名無しさん (ワッチョイ 0f59-cGUq)2017/02/09(木) 21:30:00.55ID:PVymcmPW0
>>808
B.phpはモデルじゃなくサービスレイヤみたいに読めるけど。
0815デフォルトの名無しさん (ワッチョイ 126b-T9/6)2017/02/09(木) 22:51:03.38ID:Uf58p31N0
オブジェクト指向プログラミングのお手本になるようなオープンなソースを教えてほしいです。
PHPのオブジェクト指向プログラミングの基礎を学んだのですが、今ひとつクラス設計がわかりません。
神クラスにならないようにするというのはわかったのですが、実体の無いものをクラス化する時、
例えばデータをファイルに書き込むという操作群があるとして、これをどういうクラスに入れればいいのかということです。
今までは適当に関数にまとめて呼び出していたのですが、これをOOPにするならどういう風に書けばいいのかわかりません。

私が読んだことのあるPHPプログラムは古いバージョン用に書かれたOOPとは無関係の掲示板スクリプトなどです。
出来ればPHPの標準関数・機能だけで完結しているものがあればありがたいです。
0816デフォルトの名無しさん (ワッチョイ dfd6-CIv3)2017/02/09(木) 23:01:22.62ID:m/rQHIL40
>>815
フレームワークとか覗いてみるといいかもね
https://github.com/laravel/framework
0817デフォルトの名無しさん (ワッチョイ dfc1-CIv3)2017/02/10(金) 00:11:57.81ID:Vc9wXXK10
>>807
だからBで例外投げてAでcatchすればいいんじゃねーの
0818812 (ワッチョイ 26c9-cGUq)2017/02/10(金) 10:32:44.34ID:6P3lfBfG0
どうしたらいいかな
0819デフォルトの名無しさん (ワッチョイ 27f8-cGUq)2017/02/10(金) 10:38:32.76ID:8U0cA5Uo0
forを使って下さい
0820デフォルトの名無しさん (ワッチョイ 8356-ENO3)2017/02/10(金) 13:22:55.21ID:iqUwwggS0
>>812
$ary = array(1, 2, 3, 4, 5, 6);
print_r($ary);

echo "\n";

foreach ($ary as $k => $v) {
 if ($k < 3) { continue; }
 echo "{$k} => {$v}\n";
}

echo "\n";

$ary = array_slice($ary, 3);
foreach ($ary as $k => $v) {
 echo "{$k} => {$v}\n";
}

とか
forやwhile使ってもいいけど
0821デフォルトの名無しさん (ワッチョイ 8356-ENO3)2017/02/10(金) 13:26:14.20ID:iqUwwggS0
>>815
Zend Frameworkのソースコードはお手本みたいな規約だしオススメ
0822デフォルトの名無しさん (ワッチョイ dfd6-CIv3)2017/02/10(金) 14:32:54.04ID:lMP7OKhp0
array pushの公式に

もし配列にひとつの要素を加えるために array_push() を使用するなら、 関数を呼ぶオーバーヘッドがないので、$array[] = を使用するほうがいいです。

って書いてあるけど、下みたいな書き方でもオーバーヘッド発生するのかな

foreach ($variable as $value) {
array_push($array, $value);
}
0823デフォルトの名無しさん (ワッチョイ dfc1-S0So)2017/02/10(金) 14:43:11.39ID:Vc9wXXK10
>>822
なんで発生しないと思うの?
0824デフォルトの名無しさん (ワッチョイ 9342-3OfB)2017/02/10(金) 15:00:30.89ID:RYh3fTnw0
>>811
自分は気にするけどなぁww

DB関連のコードを全てB.phpでするようにして、A.php側ではDBを意識しないコードにしたいとかよくある。
あとでDBが変更になることもあるし
PDO使ってても、一部KVSに変更とかあると対応できないし(お願いしたことあるw)
DB一つでトランザクション完了してた時は楽でよかったwww
0825デフォルトの名無しさん (ワッチョイ dfd6-CIv3)2017/02/10(金) 16:22:22.39ID:lMP7OKhp0
>>823
関数に閉じ込めてる間はpushが稼働してると思ったから
0826デフォルトの名無しさん (ワッチョイ 9342-3OfB)2017/02/10(金) 16:29:42.22ID:RYh3fTnw0
foreachは関数じゃなく、ループですが・・
オーバーヘッドがあるから、ループの中で使うのはおすすめしないと言うことなんだけどね。
ちなみに、array_mergeという関数があって
こちらを使えば・・ループの代わりに関数を使うことで・・という説明になるね
0827デフォルトの名無しさん (オッペケ Srf7-S/g0)2017/02/10(金) 16:35:15.11ID:8f4rSBP3r
どうせ誰が作ってもクソコードなんだから動いてればよくて、なんかエラーでてたり客に文句言われたら対応すりゃいい
0828デフォルトの名無しさん (ワッチョイ 0f46-ENO3)2017/02/10(金) 16:39:09.45ID:yKHSCA+P0
多少の処理速度の差やオーバーヘッドを気にして見通しの悪いコードにするのは本末転倒
ましてやPHPだし
0829デフォルトの名無しさん (アウアウカー Sa1f-S0So)2017/02/10(金) 20:36:55.90ID:B/44UtXJa
>>825
それループで回る分だけ毎回array_push呼ばれるから
0830デフォルトの名無しさん (ワッチョイ beaf-cGUq)2017/02/11(土) 01:35:29.95ID:sRxxkJoY0
$ary[] =
これの方が美しいし速い

他の言語じゃ無理だからな
0831デフォルトの名無しさん (ワッチョイ 9f4a-1VpQ)2017/02/12(日) 17:20:35.17ID:abtsR4dg0
>>830
どれくらい速いの?
0832デフォルトの名無しさん (ワッチョイ beaf-cGUq)2017/02/12(日) 18:06:30.99ID:wFV2vg550
>>831
二通りにしかないんだからarray_pushより速いで十分でしょ?
0833デフォルトの名無しさん (ワッチョイ dfd6-CIv3)2017/02/12(日) 21:51:06.88ID:QFyd4EUF0
http://kakaku.com/item/K0000820062/

価格.comみたいなK0000820062ってどういう風に作るんだろう
UUIDじゃないよね?
0834デフォルトの名無しさん (ワッチョイ 7230-jWyY)2017/02/12(日) 21:59:19.74ID:xZhsq1SY0
なんかのIDにK付けて0埋めしてるだけちゃうん
0835デフォルトの名無しさん (ワッチョイ 83d6-Frzy)2017/02/12(日) 23:54:04.06ID:GioNsZNN0
>>833
おまえ、頭がやばいよ…
0836デフォルトの名無しさん (ワッチョイ 265b-ENO3)2017/02/13(月) 10:24:20.63ID:7hOSszMQ0
>>833
プログラミングの基礎を勉強するべき
0837デフォルトの名無しさん (ワッチョイ 0f46-ENO3)2017/02/13(月) 12:03:26.71ID:MX/uxF0s0
>>831
そこで自分でコード書いて試そうという発想にならないならプログラミングには向いてないと思う
人間には得手不得手ってあるからね
手遅れになる前に他の道を探そう
0838デフォルトの名無しさん (ワッチョイ dfd6-CIv3)2017/02/13(月) 12:53:46.07ID:dq41sjDl0
protected function getResponseGroup(): array
{
return $this->responseGroup;
}

こんな感じでわざわざ取得メソッド使うのって、型の強制できるぐらいのメリットしかないのかね
0839デフォルトの名無しさん (ワッチョイ 0f46-ENO3)2017/02/13(月) 13:48:40.27ID:MX/uxF0s0
>>838
そこら辺は設計思想にもよるし”これが絶対に正しい”というのは無いかな
”getter setter”とかでググってメリット・デメリットを理解した上で”自分の中での正解”を探せばいいのではと
0840デフォルトの名無しさん (アウアウカー Sa1f-S0So)2017/02/13(月) 16:03:15.51ID:KMmRwMwBa
>>838
子クラスに親クラスのプロパティを絶対に変更させないという強い意志が感じられる(小並
0841デフォルトの名無しさん (ガラプー KK4b-4eBQ)2017/02/13(月) 18:39:07.72ID:qWBqE6jZK
「$this->」
これを何十回も入力させるってバカみたい。
0842デフォルトの名無しさん (ワッチョイ 27f8-cGUq)2017/02/13(月) 18:52:43.00ID:pn1QtbZ90
そう思うなら自分好みのパーサー書けばいいんじゃね
0843sage (JP 0Hfe-JgBl)2017/02/14(火) 12:57:43.87ID:vlYZpaj3H
すみません教えてください。

ドキュメントルートが/home/virtual/id/public_htmlとして、一つ上のパスを取得したいとします。
(上の例なら/home/virtual/id)

perlで

$ENV{'DOCUMENT_ROOT'} =~ /(.+)\/(.+?)/;
my $path = $1;


これと同じことをPHPでやりたいのですが、見当が付きません…
よろしくお願いします。
0844デフォルトの名無しさん (ワッチョイ 27f8-cGUq)2017/02/14(火) 13:38:34.23ID:BZw4l4zq0
dirname($_SERVER['DOCUMENT_ROOT'])
0845デフォルトの名無しさん (ワッチョイ 9342-3OfB)2017/02/14(火) 13:44:44.59ID:AvrQL4xh0
dirnameのマニュアル読むといろいろ簡単にできて便利だよ
http://php.net/manual/ja/function.dirname.php

今確認したら、PHPってファイルシステムの関数めちゃあるね。
0846843 (JP 0Hfe-JgBl)2017/02/14(火) 13:49:26.20ID:vlYZpaj3H
>>844
>>845

ありがとうございます!!
こんなの直接できるんだ。。唖然。。
0847デフォルトの名無しさん (アウアウカー Sa1f-S0So)2017/02/14(火) 16:16:39.35ID:vX4Pr1L+a
Pythonのos.path, Rubyのpathname, PerlにだってFile::Specがあるんだぜ?
ファイルシステム依存なんだし組み込みじゃなくとも標準ライブラリでラップされてて何も不思議じゃない
0848デフォルトの名無しさん (ワッチョイ 8356-ENO3)2017/02/14(火) 17:26:18.09ID:i5SPUrbm0
>>846
つか>>843のperlのソースコードの意味(正規表現)は理解できてるんだろうか?
PHPでも正規表現を使えば似たようなコードで実現できるでしょ
もちろん1つ上のパスを取得する「だけ」なら>>844のがスマートだけど
0849デフォルトの名無しさん (ワッチョイ 1246-3OfB)2017/02/14(火) 17:46:30.89ID:PYBh6Cc20
Xcodeの質問ってここで良い?
view controllerでそれぞれのiPhoneの画面サイズがインプットされてない?
出ないんだが?誰か解決策教えてくださいな
0850843 (JP 0Hfe-JgBl)2017/02/14(火) 18:39:19.55ID:vlYZpaj3H
>>846

PHPの正規表現の後の$1、$2…が理解できんのです。
誰が作ったのかさえわからん、みんな逃げちゃった(=PHPわかる人が誰もいない+私もPHP書いたこと一度もない)ものを触らざるを得なくなって。

置換もさっぱり。少なくともs/before/after/ig;みたいに簡単じゃないことだけは昨日知った…
0851デフォルトの名無しさん (ワッチョイ 0f59-cGUq)2017/02/14(火) 19:45:33.94ID:GvFlLFXU0
>>850
sed分かるなら何の問題もないでしょ
0852デフォルトの名無しさん (ワッチョイ 27f8-cGUq)2017/02/14(火) 21:45:49.32ID:BZw4l4zq0
>PHPの正規表現の後の$1、$2…が理解できんのです。
>>843で後方参照して同じことしてるじゃん?
echo preg_replace('/(.+)\/(.+)?/', '$1', '/home/virtual/id/public_html')

[JS] '/home/virtual/id/public_html'.replace(/(.+)\/(.+)?/, '$1')
[Rb] '/home/virtual/id/public_html'.gsub(/(.+)\/(.+)?/, '\1')
[Py] re.sub(r'(.+)/(.+)?', '\\1', '/home/virtual/id/public_html')

Perlが同じように書けるかは知らないけど
テキスト処理能力を進化させすぎたPerlが多分特殊な方
0853デフォルトの名無しさん (アウアウカー Sa1f-S0So)2017/02/14(火) 22:33:22.74ID:aTcP7cxLa
置換じゃなくてキャプチャしたいんでしょ
マニュアルのpreg_match見れば分かるけどキャプチャ保存用に引数一個追加する必要がある
0854デフォルトの名無しさん (ワッチョイ 9342-3OfB)2017/02/14(火) 23:05:03.22ID:AvrQL4xh0
Perlの書き方は、シェルスクリプトの経験があればなんとかなるけど
何にも知らない人が新しくプログラムを学ぼうとすると
癖が多すぎてwww
まぁプログラムが好きで、プグラムを組むことが目的な人が多い感じするよね。
0855843 (JP 0Hfe-JgBl)2017/02/15(水) 09:52:31.78ID:dsR3IgXDH
>>852
その位置に$1か…
ありがとうございます。

>>853
書き方がわからなくて、最後の/以降の文字列を取得してから空文字列で置換しようとしてもうまくいかず、splitで分割して前方だけを$_[0]のような形で取得しようとしても空文字が返り…
一昨日からいろんなところをググりながら調べているですが、マスターできる気がしません…

>>854
ご想像通り?シェルとPerl以外書いたことがありません(ExcelのマクロとVWD2005のC#はほんの少し触った)。


みなさまありがとうございました。がんばってみます。。
0856デフォルトの名無しさん (ワッチョイ 26c9-cGUq)2017/02/15(水) 10:57:58.02ID:auzGmUVk0
>>855
シェルやperlを書いたことがあるなら大丈夫でしょ
シェル芸とかいまだにマニュアル読みながらじゃないと書けないわ
0857デフォルトの名無しさん (ワッチョイ 8356-ENO3)2017/02/15(水) 14:03:33.63ID:VOjsPlCF0
>>855
DOCUMENT_ROOTが空っぽの事がある可能性も踏まえるなら

if (preg_match('/(.+)\/(.+?)/', getenv('DOCUMENT_ROOT'), $match)) {
$path = $match[1];
}

>>843と同等のPHPコード
print_r($match); の出力結果見てみるといい
細かいことをいえば正規表現は /^(.+)\/.+?$/ のが良いと思うけど

説教臭くて申し訳ないが言語が違えど正規表現の書き方なんて大差ない
基本を理解してないからこういう時に潰しが効かない
0858デフォルトの名無しさん (ワッチョイ 0f46-ENO3)2017/02/15(水) 14:28:38.96ID:JwCJBy8n0
perlの変態文法に比べるとPHPのがまだ大分素直だと思う
↓大昔perlメモから拝借したcsvを扱うコードだけど今読むと目眩がするわw
$tmp =~ s/(?:\x0D\x0A|[\x0D\x0A])?$/,/;
@values = map {/^"(.*)"$/ ? scalar($_ = $1, s/""/"/g, $_) : $_}
($tmp =~ /("[^"]*(?:""[^"]*)*"|[^,]*),/g);
0859デフォルトの名無しさん (ワッチョイ 9b2c-cGUq)2017/02/15(水) 14:32:45.87ID:f1EoCQSH0
それは例としては書き方が悪いだけ
0860デフォルトの名無しさん (ワッチョイ d376-CIv3)2017/02/15(水) 14:37:57.30ID:6fjfCJ8x0
cakephp3の質問はここでしてもいいのかな?
0861デフォルトの名無しさん (ワッチョイ 8356-ENO3)2017/02/15(水) 14:52:38.34ID:VOjsPlCF0
perlメモ懐かしすぎ。まだサイトが存在してて驚いた
EXCEL形式の改行コードを含むcsvを配列にするソースとか大昔PHPに翻訳して使ったな
>>857
$path = (preg_match('/^(.+)\/.+?$/', getenv('DOCUMENT_ROOT'), $match)) ? $match[1] : '';
と三項演算子で書いた方がperlに慣れた人には分かりやすいかな?とも思ったんだけど
0862デフォルトの名無しさん (ワッチョイ 4fc9-eq+O)2017/02/17(金) 17:35:16.66ID:9e/vHQb30
PHPDOCで質問なんだけど、クラスのメソッドのコメントで
戻り値は無しで代わりにメンバ変数を書き換えるとき
どうやってそれを明示すればいいか教えて
0863デフォルトの名無しさん (ワッチョイ cba0-/qTs)2017/02/19(日) 16:27:17.00ID:vBQrYNmd0
画像を保存してると消えているファイルが有るのだが、
普通に404ならまだいいのだが下記のようなやつの対処方法がわからない
どうすると良いのだろうか?

1.画像がエラー画像に置き換わっているパターン
http://i.imgur.com/IEqhtkG.jpg

2.画像ではなくエラーページに移動するパターン
http://www.dotup.org/uploda/www.dotup.org534402.jpg
0864片山博文MZ ◆T6xkBnTXz7B0 (ガラプー KK1f-2nU5)2017/02/19(日) 16:41:33.64ID:258Rl1AZK
事前にエラー画像とエラーページのURLを記録しておき、比較する
0865デフォルトの名無しさん (ワッチョイ 7b38-yXFx)2017/02/20(月) 07:05:28.09ID:uW8j6qNc0
perlの文法を知っていて、c#でデータベースプログラムが書けるレベルだけど、phpは全く知らない
phpのおすすめの教科書ある?
0866デフォルトの名無しさん (ワッチョイ fbf8-eq+O)2017/02/20(月) 07:29:48.71ID:siKT4Z4H0
昔はテンプレに市販の書籍は嘘が多いだの、最良の教科書はPHPマニュアルだの書いてたけど今書いてないのか。
とりあえず>>1の入門と簡易チュートリアルの章でも読んでみたら?
0867デフォルトの名無しさん (ワッチョイ 4fc9-eq+O)2017/02/20(月) 10:27:48.14ID:gVDOpmLx0
>>863
ステータスで見りゃいいんじゃね?
302が返ってきたら、ビクッとして注意すればいい
0868デフォルトの名無しさん (ワッチョイ cb56-Z7AI)2017/02/20(月) 11:54:58.17ID:KgKWtHg50
>>863
HTTPリクエストをどんな手段でやってるのか分からないけど
レスポンスヘッダすら確認できてないならそのリクエスト方法から見直した方がいいと思う
一部省略したけど一目瞭然でしょ

// http://i.imgur.com/IEqhtkG.jpg
Array
(
[0] => HTTP/1.1 200 OK
[last-modified] => Wed, 14 May 2014 05:44:36 GMT
[content-type] => image/png
[content-length] => 503
[age] => 10135875
[server] => cat factory 1.0
)


// http://www.dotup.org/uploda/www.dotup.org534402.jpg
Array
(
[0] => HTTP/1.1 200 OK
[content-type] => text/html
[server] => cloudflare-nginx
)
0869デフォルトの名無しさん (ワッチョイ cb56-Z7AI)2017/02/20(月) 11:58:16.76ID:KgKWtHg50
>>865
大昔からweb系やってたperl上がりのたくさんの人にPHPを教えてきたけど
最良の手段は自分がperlで組んだソースをPHPで書き直させる事だった

もし過去に自力でperlで組んだサービスが何もないなら
まずは自分が何を作るのか(掲示板でもwikiでもブログでも何でもいい)はっきりさせる
本とか考えるのはその後でOK
目的がはっきりしないのに概念だけ覚えようとするのは時間の無駄
0870デフォルトの名無しさん (ワッチョイ 7b38-fFgi)2017/02/20(月) 14:33:23.87ID:uW8j6qNc0
>>869
なるほどなと思った。どうもありがとう。
0871デフォルトの名無しさん (アウアウカー Sa9f-DJtQ)2017/02/20(月) 19:12:52.64ID:176Yfxbca
MVCというか、インスタンスについて質問させてください
今の職場だとモデルクラスのメソッドを全部staticにしてインスタンス化なしでコントローラーから
直接呼んでるんですけど、そっちの方が一旦インスタンス化するより効率的なものなんですか?
0872デフォルトの名無しさん (ワッチョイ 4fc9-eq+O)2017/02/20(月) 19:30:51.57ID:gVDOpmLx0
>>871
徹底しているなら、いいアイデアかも
割り切っているならテストもしやすそう
0873デフォルトの名無しさん (ワッチョイ cba0-/qTs)2017/02/21(火) 21:07:02.12ID:GYKIdTkl0
>>867
>>868

返信遅くなってすみません。
すごくうまくいきました。
ありがとうございます。
0874デフォルトの名無しさん (ワッチョイ 5f30-XdR7)2017/02/21(火) 22:11:34.97ID:r+HgLB6m0
>>871
staticおじさん?
0875デフォルトの名無しさん (ワッチョイ fbf8-eq+O)2017/02/21(火) 23:12:20.06ID:9alYtg+g0
効率非効率の問題じゃなくて
そんな書き方するぐらいならオブジェクトいらんのじゃ
0876デフォルトの名無しさん (ワッチョイ 9bc1-P9CU)2017/02/21(火) 23:31:24.27ID:KlPaDOdy0
内部にstatic変数で状態持ってるならただの巨大なグローバル変数だからなぁ
0877デフォルトの名無しさん (ワッチョイ 4fc9-eq+O)2017/02/22(水) 14:55:33.04ID:7bpb3LbA0
>>876
状態はすべてセッション変数に持たせてたとかじゃない?
0878デフォルトの名無しさん (アウアウカー Sa9f-yXFx)2017/02/22(水) 16:57:51.58ID:4F/fS8NSa
>>877
いやそんなもん尚更キモいでしょ・・・
0879デフォルトの名無しさん (ワッチョイ db59-eq+O)2017/02/22(水) 17:09:38.25ID:BtmqmRAg0
別に巨大なグローバル変数でもいいんじゃないの
0880デフォルトの名無しさん (ブーイモ MM7f-9g8o)2017/02/22(水) 21:36:50.61ID:zYmlfQOdM
>>877
絶望しかねえな
0881デフォルトの名無しさん (ワッチョイ 8b42-fFgi)2017/02/22(水) 21:37:25.75ID:CIb5Sb890
namespaceの代わりのstatic変数ってかww
0882デフォルトの名無しさん (ワッチョイ 8ec9-8lb6)2017/02/23(木) 10:05:12.54ID:lHjqIPrz0
>>880
状態を持たせてそれをページ間でまたがって維持するのって
ストレスたまるから、なんもかんもセッションに全部持たせるのは
一周回っていいアイデアな気がしてんだけど、気の迷いかね
0883デフォルトの名無しさん (ワッチョイ 7f42-JtgB)2017/02/23(木) 12:29:18.22ID:abknmwyr0
セッション使うのが普通かと思うけど・・

昔セッションがまだ一般的でなかった頃
自分でクッキー設定してやってるときに
なんでもかんでもクッキーに入れてたという笑い話はあったけどww
PHPがあまりにも簡単にセッション使えるからピンとこない話だろうけど
0884デフォルトの名無しさん (アウアウウー Sacf-gc5m)2017/02/23(木) 12:32:50.71ID:sHiWuKpYa
つまり状態変数なんてものが諸悪の根元なわけだな!
そしてモナドの海に沈み孤立していくのだ
0885デフォルトの名無しさん (ワッチョイ 8e5b-HyQo)2017/02/23(木) 20:22:33.45ID:chlnLhRq0
大量のnamespaceをまとめたり、bootさせたときに読み込ませて
staticで取得する方法は一般的にあるのに、
なぜstaticをバカ扱いする奴いるのか謎だな
0886デフォルトの名無しさん (ワッチョイ ca30-weqm)2017/02/23(木) 23:17:49.97ID:Svl7KGJP0
作るものによるんだろうけどセッションってログイン済みのtrue/falseにしか使わんなー
EC(OSSじゃない)とか某業界向けのニッチなもんしか作ってないけど
でもredis使ってなんでもかんでもセッションぶっ込んでるのは見たことあるな
0887デフォルトの名無しさん (ワッチョイ 2f56-HyQo)2017/02/24(金) 11:52:02.24ID:a8MKJYdX0
エラーメッセージを全部セッションにぶち込んでるのは見たことあるな
PHPしかできない人の書くコードを読むと脳味噌がとろけそうになる事があってある意味新鮮
0888デフォルトの名無しさん (ワッチョイ 8ec9-8lb6)2017/02/24(金) 15:18:00.37ID:jIC6X1VU0
>>886
それ以外の情報はどうしているの?
毎回DBから取得するようにしてセッションには一切持たない感じ?

入力確認実行直前の画面とかで前画面での入力情報はどこに持ってる?
どうせ顧客の入力データだしクッキーに全持ち?
0889デフォルトの名無しさん (JP 0H56-WLWd)2017/02/24(金) 15:33:07.09ID:L3urbmMZH
全然関係ないけど、「入力確認実行直前の画面」が世界からなくなればいいのにと思ってる
0890デフォルトの名無しさん (アウアウウー Sacf-gc5m)2017/02/24(金) 15:36:25.55ID:EbrJ09Pka
PHPに未来はありますか?
0891デフォルトの名無しさん (ワッチョイ 06af-8lb6)2017/02/24(金) 15:46:57.56ID:FuJuA/X30
php7一択だよ
python ruby perは遅すぎる
0892デフォルトの名無しさん (ワッチョイ 8e5b-HyQo)2017/02/24(金) 15:53:29.91ID:Ote1SB7a0
>>888
localstorage使えば?
0893デフォルトの名無しさん (ワッチョイ ca30-weqm)2017/02/24(金) 20:23:23.92ID:3gAzX8Bk0
>>888
886だけど常に値を持っていなきゃいけないって設計がおかしくね?
> 入力確認実行直前の画面とかで前画面での入力情報はどこに持ってる?
個人的に好きじゃないけどeccubeとかの実装を見てみては
あとアプリケーションコンフィグやデザインやステートなんかにDB使うの大っ嫌い
0894デフォルトの名無しさん (ワッチョイ ab59-8lb6)2017/02/24(金) 20:35:33.31ID:p7wo3OXQ0
>>888
そのセッション情報ってどうやって破棄するの?
0895デフォルトの名無しさん (ワッチョイ 2fa0-6M2V)2017/02/25(土) 00:28:19.24ID:jjrnhN5Q0
画面上で+と-のボタンを置いて
初期状態は0で
+ボタンを押すと1増えて
-ボタンを押すと1減る
PHPだとどうやってつくればいいですか?
0896デフォルトの名無しさん (ワッチョイ a342-d4M5)2017/02/25(土) 00:33:17.09ID:TbUcHQ5J0
そういうのはPHPではなくJavascriptで作る方が楽だよ
0897デフォルトの名無しさん (ワッチョイ a3f8-8lb6)2017/02/25(土) 04:38:58.21ID:3E7NpsF+0
あまりフォーム周りはお勧めできない
http://ideone.com/F4uuvB
0898デフォルトの名無しさん (ワッチョイ 7b4a-b58f)2017/02/25(土) 08:03:55.70ID:fA+zhTaO0
>>895
なぜphpでやりたい?
0899デフォルトの名無しさん (ワッチョイ 2fa0-6M2V)2017/02/25(土) 09:40:06.34ID:jjrnhN5Q0
>>898
確認するデータがDBにあって
先にidだけ配列に取得して
ボタンやセレクトでidに該当するデータを呼び出そうと思ってた
他のやり方考えるわ
0900デフォルトの名無しさん (ワッチョイ bbc1-d4M5)2017/02/25(土) 11:18:11.99ID:KxydDILI0
>>899
JavaScript案件, セレクトボックスならHTMLだけで行けるやろ
0901デフォルトの名無しさん (ワッチョイ 2fd6-Pl42)2017/02/25(土) 22:29:44.68ID:F9CRtHuR0
>>890
あまりにアホな奴が多すぎるので、そういう意味で無い気はしてきている
0902デフォルトの名無しさん (ワッチョイ 2fd6-Pl42)2017/02/25(土) 22:32:19.20ID:F9CRtHuR0
staticな関数の方は楽しいぞー
0903デフォルトの名無しさん (ワッチョイ 2fd6-Pl42)2017/02/25(土) 22:34:26.92ID:F9CRtHuR0
> 875 : デフォルトの名無しさん (ワッチョイ fbf8-eq+O)2017/02/21(火) 23:12:20.06 ID:9alYtg+g0
> 効率非効率の問題じゃなくて
> そんな書き方するぐらいならオブジェクトいらんのじゃ

適材適所だが、>>871 の内容だといらんな。MVC採用する意味もない。
0904デフォルトの名無しさん (ワッチョイ 8e5b-d4M5)2017/02/26(日) 12:42:41.85ID:Tt94x5QQ0
>>903
Mがユーティリティクラスのみで済むなら
それはそのほうが楽だと思う
0905デフォルトの名無しさん (ワッチョイ 2fd6-Pl42)2017/02/26(日) 23:47:35.33ID:WXoQ+MY30
>>904
>Mがユーティリティクラスのみで済むなら

それをMと呼んじゃいけねーよ
0906デフォルトの名無しさん (ワッチョイ 8ec9-8lb6)2017/02/27(月) 15:04:47.79ID:v76+Cgkq0
呼んでもよくね?
0907デフォルトの名無しさん (ワッチョイ 2fa0-6M2V)2017/02/27(月) 22:00:25.16ID:xpX5gY9C0
http://webpaprika.com/498.html
このサイトの上のやつ使ってlivedoor Blogに記事アップロードできるようになった
その時にブログのURLを取得したいのだけど
どうやればいいのだろうか?
0908デフォルトの名無しさん (ワッチョイ 06af-8lb6)2017/02/27(月) 23:50:19.91ID:j7MWq5RR0
普通 $response->getBody() に入ってる
0909デフォルトの名無しさん (ワッチョイ 2fa0-6M2V)2017/02/28(火) 01:30:57.43ID:/JbFiKkE0
なんとかできました。
ありがとうございます。
0910デフォルトの名無しさん (ワッチョイ 733c-LqKA)2017/03/01(水) 02:33:48.18ID:wZJk3GPb0
おせっかいかもしれないがpearみたいなオワコンはさっさと卒業した方がいいぞ
0911デフォルトの名無しさん (ワッチョイ ab59-8lb6)2017/03/01(水) 16:51:29.62ID:zQezymV/0
罵倒するための布石を打ったのかな。
おせっかいといいながらどう見ても普通じゃないレスだよね
0912デフォルトの名無しさん (ワッチョイ 2f56-HyQo)2017/03/01(水) 17:29:49.47ID:Hd+zannu0
PEARは乗り換えた方が良いってまっとうな意見だと思うけど
なぜそんなひねくれたものの見方しかできないのだろうか
0913デフォルトの名無しさん (JP 0H56-WLWd)2017/03/01(水) 18:07:58.16ID:NYMcPNs0H
MDB2からPDOに移行するとき、半ば死んだ
0914デフォルトの名無しさん (ワッチョイ ab59-8lb6)2017/03/01(水) 18:41:44.33ID:zQezymV/0
そうじゃなくて、composer使えって書くのが普通だろうと
なのにそれを書かずにPEARはオワコンとだけ書くのが不自然
0915デフォルトの名無しさん (JP 0H56-WLWd)2017/03/01(水) 18:47:37.38ID:NYMcPNs0H
>>914
考えすぎだろ
つか、喧嘩売って荒らしたいのか?
0916デフォルトの名無しさん (ワッチョイ ab59-8lb6)2017/03/01(水) 18:50:42.28ID:zQezymV/0
そういう手法で荒らしてるのがいつもいるでしょうに。
pearの代わりに何使えばいいんですか → 調べろカス
ましてpeclなんて言おうもんなら数日にわたって罵倒するような人が
0917デフォルトの名無しさん (ワッチョイ bbc1-d4M5)2017/03/01(水) 19:49:23.61ID:dOgTnmNw0
その人は「おせっかいかもしれないが」なんて前置きはしないから・・・・
0918デフォルトの名無しさん (ワッチョイ 6b3c-LqKA)2017/03/01(水) 22:38:35.85ID:lnqhaASX0
ワードプレスがインストールできなくて調べてみたらpostfixのパーミッションの問題っぽかったのでとりあえず全部可にしたら、
すんなりインストールできたのですが、これってこのままだとまずいですか?
0919デフォルトの名無しさん (アウアウカー Sa6f-prdN)2017/03/02(木) 12:56:07.07ID:XkL8LvgVa
>>918
ここPHPスレですけど, ヤバいかどうか分からないのに権限広くするのはヤバいと思うの
0920デフォルトの名無しさん (ワッチョイ eb46-2BvX)2017/03/02(木) 14:53:54.41ID:yMt9oKmu0
ab59-8lb6
誰がどう見てもこのカスの方がスレを荒らしてるという
0921デフォルトの名無しさん (JP 0H7f-m4jB)2017/03/02(木) 17:26:49.16ID:bS87lpc8H
>>916
peclにあるならそれでいいじゃん

うちではこれインストールしてる
php71-php-pecl-apcu.x86_64
php71-php-pecl-apcu-bc.x86_64
php71-php-pecl-crypto.x86_64
php71-php-pecl-igbinary.x86_64
php71-php-pecl-imagick.x86_64
php71-php-pecl-json-post.x86_64
php71-php-pecl-memcache.x86_64
php71-php-pecl-msgpack.x86_64
php71-php-pecl-xdebug.x86_64
php71-php-pecl-yaml.x86_64
php71-php-pecl-zip.x86_64
0922デフォルトの名無しさん (ワッチョイ 1bd6-fLnF)2017/03/02(木) 17:58:00.68ID:i+xx4AjU0
>>916 : デフォルトの名無しさん (ワッチョイ ab59-8lb6)2017/03/01(水) 18:50:42.28 ID:zQezymV/0
> そういう手法で荒らしてるのがいつもいるでしょうに。

>>920 が言っているとおり、どう見ても自己紹介
0923デフォルトの名無しさん (ワッチョイ 1bd6-fLnF)2017/03/02(木) 18:00:13.73ID:i+xx4AjU0
つか、PEARとPECLを同列に語ってる
>>916 : デフォルトの名無しさん (ワッチョイ ab59-8lb6)
こいつ、マジ脳無し
0924デフォルトの名無しさん (ワッチョイ 1b56-2BvX)2017/03/02(木) 19:01:19.09ID:HxPD+qqR0
元の質問は>>907だけどこの程度の用途であれば
composerだのpeclだのを持ち出さなくても
cURLで済ませるとか、サクッと1ファイルrequireしてすぐに使えるHTTPリクエスト系のライブラリを使うというのもアリかなと思うな

あとab59-8lb6の言動が軽くキチガイ入っててちょっと怖い 病んでそう
0925デフォルトの名無しさん (スップ Sd3f-3Y4X)2017/03/02(木) 21:46:26.13ID:Q9+IGiHqd
配列をDBみたいに検索で使えないですかね?
array_searchだとキーしか返せないし、
多次元配列から
0926デフォルトの名無しさん (ワッチョイ 8b42-NqFr)2017/03/02(木) 22:36:48.43ID:X9ktzrEa0
>>925
SQLite 使って見たら
0927デフォルトの名無しさん (ワッチョイ eb59-BJNc)2017/03/02(木) 22:54:48.41ID:smxCZ5w00
使うなら Ginq かなぁ
https://www.codeproject.com/Articles/997238/LINQ-for-PHP-comparison-YaLinqo-Ginq-Pinq
0928デフォルトの名無しさん (ワッチョイ 1f7b-Guy/)2017/03/04(土) 16:51:13.67ID:p8pBPpDt0
すまん、配列のソートって一般的には何が使われてるん?
連想配列データ140個、これが5個くらいあるんだけどこれくらいならバブルソートでいいのかな
0929デフォルトの名無しさん (ワッチョイ 1f7b-Guy/)2017/03/04(土) 17:04:59.02ID:p8pBPpDt0
[45] => 2017-03-19 02:30:00
[46] => 2017-03-19 02:30:00
[47] => 2017-03-19 21:00:00
[48] => 2017-03-19 23:15:00
[49] => 2017-03-19 23:30:00
[50] => 2017-03-19 00:00:00
[51] => 2017-03-19 00:00:00
[52] => 2017-03-19 00:00:00
[53] => 2017-03-19 00:00:00
[54] => 2017-03-19 00:00:00

日付でバブルソートやってみたら午前0時がその日の最後にソートされてしまう(´;ω;`)ブワッ
0930デフォルトの名無しさん (ワッチョイ ab42-e336)2017/03/04(土) 17:16:35.65ID:ItpynKpz0
<?

$A=
preg_split("/[\r\n]+/",
<<<'EOD'
2017-03-19 02:30:00
2017-03-19 02:30:00
2017-03-19 21:00:00
2017-03-19 23:15:00
2017-03-19 23:30:00
2017-03-19 00:00:00
2017-03-19 00:00:00
EOD
);

sort($A);
print_r($A);
0931デフォルトの名無しさん (ワッチョイ 8bf8-BJNc)2017/03/04(土) 17:27:21.36ID:j/YssWzp0
覚えたてのアルゴリズムでも使いたいの?
バブルソートなんて教材以外じゃ使わないし
各種言語のソート関数もクイックかマージ(から派生したもの含めて)の2択でしょう
おとなしくそっち使えよ
0932デフォルトの名無しさん (アウアウカー Sa6f-prdN)2017/03/04(土) 17:44:38.18ID:G8SfkdVGa
バブルソートはほんまもんのゴミ
0933デフォルトの名無しさん (ワッチョイ 7bf9-xEld)2017/03/04(土) 17:47:01.49ID:dvfUCgeC0
オバマでもそれくらいは知ってる
0934デフォルトの名無しさん (ワッチョイ 1f7b-Guy/)2017/03/04(土) 17:58:38.64ID:p8pBPpDt0
ありがとうございます、クイックソート使ってみます
0935デフォルトの名無しさん (ワッチョイ abc1-NqFr)2017/03/04(土) 18:32:51.87ID:WUB5FqMd0
つーか>>930の通りそのままsort使えばクイックソートだよ

どうでもいいけど何らかの安定ソートが標準で実装されてないのは今更なんだけどアレだよね
0936デフォルトの名無しさん (ワッチョイ eff1-NqFr)2017/03/04(土) 21:00:56.86ID:yrfHSrc50
'get*Attribute'
(*は任意の文字列です)

この*の部分を取り出したいのですが、どうすればよいでしょう?
0937デフォルトの名無しさん (ワッチョイ 8b42-NqFr)2017/03/04(土) 21:13:47.71ID:BXXAQhND0
>>936
<?PHP
$src = array(
"getabcAttribute",
"getgetAttribute",
"getAttributeAttribute",
"getAttribute",
"getXYZAttribute"
);
print_r($src);
$dst = preg_replace('/^get(.*)Attribute$/', '$1', $src);
print_r($dst);
0938デフォルトの名無しさん (ワッチョイ eff1-NqFr)2017/03/04(土) 21:23:00.57ID:yrfHSrc50
>>937
神ですか?
ありがとうございます
0939デフォルトの名無しさん (ワッチョイ ab85-BSpm)2017/03/04(土) 21:23:17.15ID:X2My6T7M0
<?php
var_dump(0 == " ");
var_dump(0 == "");
var_dump(" " == "");

もう、PHPなんてやめませんか
0940デフォルトの名無しさん (ワッチョイ efaf-BJNc)2017/03/04(土) 21:37:30.81ID:5qiLAD8F0
php7より速いスクリプト言語もないし === 使えばいいじゃん
0941デフォルトの名無しさん (ワッチョイ ef03-BQ+s)2017/03/04(土) 21:51:51.36ID:y+A67JPN0
==なんて使うときあるか?
0942デフォルトの名無しさん (ワッチョイ cb3c-NqFr)2017/03/04(土) 23:55:02.62ID:XEtb1T9+0
==使うくらいなら普通にキャストしちゃうな
0943デフォルトの名無しさん (ワッチョイ abc1-NqFr)2017/03/05(日) 00:03:11.92ID:AjjTYZYi0
==使っていいのはオブジェクトだけだというのは常識
0944デフォルトの名無しさん (ワッチョイ ab85-BSpm)2017/03/05(日) 00:54:45.52ID:YjhEGGhg0
現実は==だらけという
0945デフォルトの名無しさん (ワッチョイ 1bd6-fLnF)2017/03/05(日) 12:45:33.51ID:mP3S1jh50
それが、アホが書いた既存コードを活かしつつ改修するとなると、
== 使うのが最良の妥協策って時がけっこうあんのよ。

おんなじメソッドなんだが引数としてどの型がわたされてくるのかわかんねーとか
結構あるからなぁ
0946デフォルトの名無しさん (ワッチョイ 1bd6-fLnF)2017/03/05(日) 12:46:52.27ID:mP3S1jh50
>>942
安易にキャストしちゃいけないケースがあることくらいは、わかってるよな?
0947デフォルトの名無しさん (ワッチョイ 4fc9-BJNc)2017/03/05(日) 15:08:45.21ID:kA3xMDgu0
>>945
わかる
FALSEと0を等価に使ってるプログラムとかな

タイムマシンがあるなら殴りに行きたくなるわ
0948デフォルトの名無しさん (ワッチョイ 1bd6-fLnF)2017/03/05(日) 16:35:11.25ID:mP3S1jh50
引き継いだ時は「しかたねぇ、オレが全部直してやんよ」とか思ってるんだが
読めば読むほど菌糸が蔓延りまくっている事に気づいて影響範囲に絶望し、
しばらく時間がたった後には「もう、いいや…」って挫折してこっちから契約打ち切るんだよ…
そんなの、何度あったことか…
0949デフォルトの名無しさん (アウアウカー Sa6f-prdN)2017/03/05(日) 17:27:54.51ID:OgFOpV6da
テストやスペックが書けるところはマシだけどそれすら書けないやつはもうどうにもならん
0950デフォルトの名無しさん (ワッチョイ 1b84-pomU)2017/03/05(日) 20:50:46.79ID:SMp0F4mM0
「こっちから契約打ち切るんだよ…」


久しぶりにペチパースレに降臨した瞬間にこんなに香ばしいレスに遭遇するとはwwww
もってるわオレwwww
0951デフォルトの名無しさん (ワッチョイ cb3c-NqFr)2017/03/05(日) 21:57:03.52ID:pZffxBVA0
>>946
分かってないやつはそもそも明示的な型変換なんかしないんじゃないかね
0952デフォルトの名無しさん (ワッチョイ 1b56-2BvX)2017/03/06(月) 19:27:49.93ID:bl9QmO+H0
作るもののレベルによって使い分けてるな
自分しか使わない業務自動化用のプログラムとかでは
if (!$hoge) { }
なんて普通に使ってしまってるが、くっそ適当に書くからコードを書くのはめちゃくちゃ早い

なぜそれが駄目か理解した上で自己責任で書く分には問題ないと思ってる
しょせんPHPだしw
0953デフォルトの名無しさん (ワッチョイ eb59-CIMi)2017/03/06(月) 20:04:35.14ID:1Fs4X0cy0
なぜそれが駄目かではなくて、それで十分だということを理解したうえで書くなら問題ないというスタンスであるべきではないのか
0954デフォルトの名無しさん (スップ Sd3f-3Y4X)2017/03/08(水) 07:18:41.32ID:lD7PG6Njd
vcのが速いんでないの
0955デフォルトの名無しさん (ワッチョイ db7b-BTGK)2017/03/08(水) 15:13:36.00ID:z9npna5X0
ポリモーフィズムって、無理にinterfaceでメソッドを定義して
実装を行わなくても、
クラスの中のメソッド名を
いざ他のクラスを作った時に同じようなメソッドを同じ名前にするよう気をつければ
ポリモーフィズムとよべるんですか?
0956デフォルトの名無しさん (ワッチョイ 1f3c-dv7B)2017/03/08(水) 15:23:42.74ID:Uljnsbub0
ダックタイピングをポリモーフィズムの一種と考えるかどうかは人によって意見が違うが
俺はポリモーフィズムの一種だと思うよ
明示的にインターフェースを定義してるか暗黙のインターフェースを使ってるかの違い
0957デフォルトの名無しさん (ワッチョイ 337b-9RK0)2017/03/09(木) 14:51:15.69ID:B4NOdQEm0
回答ありがとうございます。
すると、ポリモーフィズムはプログラミング技術というより
コーディングルールテクニックみたいな感じですかね。
0958デフォルトの名無しさん (ワッチョイ 0bf9-ATAZ)2017/03/09(木) 14:55:51.52ID:EWO17/eW0
まあ関数名が短かくなるということですよね
0959デフォルトの名無しさん (ワッチョイ 323c-ZZsN)2017/03/09(木) 16:14:29.69ID:x6aOWZGA0
>>957
ポリモーフィズムは概念とか考え方
実現する方法は一つじゃない
プログラミング技術かコーディングルールかでいうとプログラミング技術のほうが近い
0960デフォルトの名無しさん (ワッチョイ af7b-j8zu)2017/03/09(木) 19:31:52.00ID:oP+XYW1+0
すまんが質問させて頂くでござる

借りてるレンタル鯖がPHP Version 5.2.17だったんだがもしかしてDatetimeって動作しないん?
ログ見るとPHP Fatal errorが出てるがローカル環境ではPHP Version 5.5.38でエラー無く正常動作しています
0961デフォルトの名無しさん (ワッチョイ 323c-ZZsN)2017/03/09(木) 21:59:57.83ID:x6aOWZGA0
マニュアル見て
http://php.net/manual/en/class.datetime.php
0962デフォルトの名無しさん (ワッチョイ b230-JiRs)2017/03/09(木) 22:35:33.53ID:Q01U24Fq0
無関係だがもうそんな古いバージョンのPHPとか見たくないよね
って5.xも見たくない
全ての古きphpが朝起きたら7.0.xに(コードも都合よく)変わってないかなあ
0963デフォルトの名無しさん (ワッチョイ e3d6-1sZU)2017/03/09(木) 23:42:25.43ID:PWMSgsoI0
>>962
>全ての古きphpが朝起きたら7.0.xに(コードも都合よく)変わってないかなあ

あめぇなぁ。

「全ての古きphp環境が全部7.0.x環境に変わっていて、ゴミクズコードをそのまま動かしていたマヌケ共が全部瀕死にならねぇかなぁ…」

くらい、考えろよ
0964デフォルトの名無しさん (ワッチョイ bfc1-vsbp)2017/03/10(金) 20:27:51.56ID:nXK4riNi0
ちょいとお尋ね。

~~~~~~
class Super {
public function override() {
echo __METHOD__.PHP_EOL;
$this->another();
}
public function another() { echo __METHOD__.PHP_EOL; }
}
class Sub extends Super {
public function override() {
echo __METHOD__.PHP_EOL;
parent::override();
}
public function another() { echo __METHOD__.PHP_EOL; }
}
$sub = new Sub();
$sub->override();
~~~~

このコードの実行結果が
Sub::override
Super::override
Sub::another
になるんだけど, 期待されるのは最後はSuper::anotherじゃない?
何か書き方がマズいからこうなってるのか?
0965デフォルトの名無しさん (ワッチョイ bfc1-vsbp)2017/03/10(金) 20:36:29.28ID:nXK4riNi0
あ, 忘れてちょ
0966デフォルトの名無しさん (ワッチョイ 337b-9RK0)2017/03/11(土) 15:09:50.84ID:ag50xhgS0
レコードによって、実行するプログラムが変わるため 
データベースに php_program(仮名)というカラムを作り
そこのプログラムを直接書きレコードを呼び出した際 eval関数を実行するという、
プログラム作成しようとしています。

基本 php_program カラムは phpmyadmin 以外からはいじれませんが
念のため、インジェクション攻撃を防ぐためにどういった対策が考えられるでしょうか?
指定の関数しか使えないとかできるのでしょうか?
0967デフォルトの名無しさん (ワッチョイ 323c-ZZsN)2017/03/11(土) 15:26:30.91ID:sUFiWX+J0
外部に公開するシステムでその設計は無いわ
インジェクションの前に設計を見直すアドバイスを募ったほうがいい
0968デフォルトの名無しさん (ワッチョイ e3d6-1sZU)2017/03/11(土) 20:34:55.67ID:n0RAiOjQ0
>>966
発想が斬新過ぎて、もはや異世界の住人的強烈な違和感を覚える
0969デフォルトの名無しさん (ワッチョイ f342-aox5)2017/03/11(土) 20:56:27.68ID:M9c6EBxE0
>>966
プログラムを別テーブルにして、プログラムIDを指定するようにするとか
まぁ管理するのが面倒かもしれないけど

使う人が信頼できる前提で、その人にしか公開しない前提ならないとは言えないかな
0970デフォルトの名無しさん (ワッチョイ 323c-ZZsN)2017/03/11(土) 21:04:54.25ID:sUFiWX+J0
もしオンラインのコードエディタ的なものを想定してるんだとしたら
Sandbox化する方法を調べたほうがいいかな
そういうの作る人がここで質問するとは思えないけど
0971デフォルトの名無しさん (ワッチョイ 624a-ZfXI)2017/03/12(日) 16:41:25.84ID:9ahiNoY00
>>966
俺も967や968と同じ。
どんな要求仕様なのか逆に聞きたいくらいだ。

それと、970は真面目に回答していて偉いと思う。
0972デフォルトの名無しさん (ワッチョイ ef59-ZfXI)2017/03/12(日) 17:52:33.32ID:hOorJCR80
> レコードによって、実行するプログラムが変わるため
から
> プログラムを別テーブルにして、プログラムIDを指定するようにするとか
となるのは自然だと思うが
> もしオンラインのコードエディタ的なものを想定してるんだとしたら
は飛躍しすぎじゃないだろうか。

ユーザがコードを入力する流れに変わってしまっている。
0973デフォルトの名無しさん (ワッチョイ 323c-ZZsN)2017/03/12(日) 21:47:03.45ID:T4N3k6YJ0
>>972
そこはエディタじゃなく実行できるPHPチュートリアルとかPHP問題集とかでもいいのよ
飛躍はしてると思うけど

あとプログラムを別テーブルにして云々は全く自然じゃないぞ
実行するコード片をDBのレコードに保存してevalするのは変わらないんだから
0974966 (ワッチョイ 337b-9RK0)2017/03/13(月) 11:29:38.10ID:v0LCVDYp0
回答してくださった方々ありがとうございます。

仕様状況としては
DBレコードには、会員情報に対応する付加情報がはいっていて
会員(ユーザー)ごとにある部分だけ個別にまったく異なるプログラムを動かさなければならない感じです。
100人いたら100通りプログラムがあり、
会員が増える度にクラスを足していったりSwitch文を増やしていく方法を取ろうかとも思いましたが
直接 個別のプログラムを 会員レコードに内包すると管理しやすいかなとも思ったので質問しました。

セキュリティー的にはよくないのはわかってるのですが、そのレコードをいじるのは
私か内部関係者のみだけがいじれるようにする予定です。

これは、たとえDBレコードにphpを直接書き込む方法をとらずに phpファイルのクラス等を増やしていく方法をとったとしても
FTPやSSH上から内部関係者はいじれるようにする可能性があります。
(ただ、そうしたくないのでレコードにphpを書く方法を取りたいというのもあります)

system exec file系 など 危険な関数は実行出来ないようにしてます。
また、レコード内に必ず ある文字列(十数桁の不規則な英数字)が入ってないと実行できません。

ただ、ぶっ飛んだ方法だったみたいなので もうちょっと安全かつ汎用的なやり方がないか考えてみます。
0975デフォルトの名無しさん (ワッチョイ 3642-nt29)2017/03/13(月) 11:47:28.29ID:bicztMj/0
PHPってクラスのデストラクタの動作おかしくないですか?
これって二行目いれないとデストラクタが起動しないんですか?
変数が上書きされれば前回の情報は消えてデストラクタが動くはず。回避できないですか?

$hd = new classXXX("000");
// $hd = null;
$hd = new classXXX("000");
0976デフォルトの名無しさん (ワッチョイ e3d6-1sZU)2017/03/13(月) 11:59:39.89ID:rgen9sgM0
>>974

・こうするじゃろ?

Table::User
-------------------
id | name | prog
1 | taro  | UserProg1
2 | hanako | UserProg2
3 | ziro  | UserProg3
-------------------
0977デフォルトの名無しさん (ワッチョイ e3d6-1sZU)2017/03/13(月) 12:00:17.32ID:rgen9sgM0
・こうするじゃろ?

app ┬ core
  ├ prog
  │ ├ UserProg1.php
  │ ├ UserProg2.php
  │ ├ UserProg3.php
  │    :
  │
  └ webroot
    ├ folder
    :
0978デフォルトの名無しさん (ワッチョイ e3d6-1sZU)2017/03/13(月) 12:00:44.04ID:rgen9sgM0
・app/prog/ ディレクトリーをautoloadの対象にするじゃろ?
0979デフォルトの名無しさん (ワッチョイ e3d6-1sZU)2017/03/13(月) 12:01:10.64ID:rgen9sgM0
・セレクトするじゃろ?

$result = "SELECT * FROM User WHERE WHERE id = '2'";
0980デフォルトの名無しさん (ワッチョイ e3d6-1sZU)2017/03/13(月) 12:02:59.41ID:rgen9sgM0
・こうじゃ!

$prog = new $result->id();
$prog->execute();
0981デフォルトの名無しさん (ワッチョイ e3d6-1sZU)2017/03/13(月) 12:08:29.70ID:rgen9sgM0
・間違いじゃ!

$prog = new $result->prog();
$prog->execute();
0982デフォルトの名無しさん (ワッチョイ e3d6-1sZU)2017/03/13(月) 12:14:48.64ID:rgen9sgM0
>これは、たとえDBレコードにphpを直接書き込む方法をとらずに phpファイルのクラス等を増やしていく方法をとったとしても
> FTPやSSH上から内部関係者はいじれるようにする可能性があります。

恐らく、
おまえさんの書いたDBレコードを関係者がいじれるWEBアプリよりも、鍵方式のSSHの方が遥かに安全じゃ。
FTPは論外じゃ。
0983975 (ワッチョイ 3642-nt29)2017/03/13(月) 12:24:28.85ID:bicztMj/0
自己解決しました
静的メンバ変数を用意、維持してやったら出来ました
0984デフォルトの名無しさん (ワッチョイ e356-aizu)2017/03/13(月) 13:41:54.67ID:AvyIY0iY0
>>974
とりあえずautoloadって知ってる?


それにしても発想が斬新過ぎる
まあ固定観念に縛られるのはよくないし
こういう刺激?を求めてこのスレを定期的に見てるんだけど
0985デフォルトの名無しさん (ワッチョイ f342-aox5)2017/03/13(月) 14:08:04.12ID:f3raQE2X0
>>974
つまり、プログラム自体はプログラマが作って
どのプログラムを実行するかは、データ入力者が決めるようにするということ?

プログラムも信頼できない人が作っておける環境だとまずいけど
そうでなければ、DBにどんなプログラムを実行するかの情報を入れること自体は問題ないと思いますよ。
まぁ直接文字コードを入れさせると、入力間違いで変なプログラムが実行される危険があるので
そこはプログラムリストから選ぶような仕組みにした方が良いと思うよ。
973 みたいにDBにプログラムリストを入れるのを最初から否定するのは発想が貧困すぎww
0986デフォルトの名無しさん (ササクッテロル Sp57-xX7A)2017/03/13(月) 14:17:41.62ID:ba0kSSARp
>DBにプログラムリストを入れるのを最初から否定するのは発想が貧困すぎww

evalする事になんの抵抗も感じない土人がなんかほざいています。
0987デフォルトの名無しさん (ワッチョイ 624a-ZfXI)2017/03/13(月) 16:11:36.68ID:kanqNMIn0
DBは値を入れるもので、
プログラムコードはファイルに保存するもの。

おじさんそんなことも知らないの〜?

って近所の小学生が言ってた。
0988デフォルトの名無しさん (ワッチョイ 323c-ZZsN)2017/03/13(月) 16:38:55.99ID:h57/U2+30
>>974
>100人いたら100通りプログラムがあり、

抽象化が不十分な気がする
必要なのはHTMLのテンプレートエンジンだったりしない?
0989デフォルトの名無しさん (スッップ Sd92-1frF)2017/03/13(月) 19:01:38.92ID:7S0lCjx+d
phper的にはそんなもんじゃないの
定年PGだし
0990デフォルトの名無しさん (アウアウウー Sa93-TeMv)2017/03/14(火) 01:57:08.43ID:08imKbv+a
wpがにたようなもんか
0991デフォルトの名無しさん (ワッチョイ f342-aox5)2017/03/14(火) 08:57:38.80ID:N5p5l+OE0
>>986
抵抗はあるけど、Webしか知らない人って感じで発想が貧困すぎでしょww
もっとシステム全体を見て判断できるようになった方がいいと思うよ。
0992デフォルトの名無しさん (ワッチョイ e6c9-2hGO)2017/03/14(火) 14:20:16.25ID:vOSyRZGG0
>>986
そこをいかに安全にするか考えるのが楽しいんじゃん

ideoneみたいにめぼしいシステムコール潰しておくとか
手はあるよきっと
0993デフォルトの名無しさん (ワッチョイ 3642-nt29)2017/03/14(火) 14:22:58.56ID:s4GXkib80
データベースのソースコードをいれること自体は問題なしだろ?
データベースと関係なく、読み込んだしたコードを実行する時点が問題なんだろ?
データベースは関係ない。
0994デフォルトの名無しさん (ワッチョイ ef59-ZfXI)2017/03/14(火) 19:41:44.29ID:OXYXI7ST0
自分がコード片を書くのにそんな制限かけてどうすんのって思う
テーブル分割してロール制御でいいんじゃないのか
0995デフォルトの名無しさん (ワッチョイ bf6c-1frF)2017/03/14(火) 22:10:29.49ID:4mHil5V80
そもそも最前線のフロントエンドに配備する必要なかろう
0996デフォルトの名無しさん (ワッチョイ e3d6-1sZU)2017/03/15(水) 00:09:16.65ID:HiQDR7mt0
>>991 : デフォルトの名無しさん (ワッチョイ f342-aox5)2017/03/14(火) 08:57:38.80 ID:N5p5l+OE0
> 抵抗はあるけど、Webしか知らない人って感じで発想が貧困すぎでしょww

WEB以外を知ってたら、なんでDBにコードぶっこむことになるんだよ土人
何より、DBに入れるメリットが何処にあるんだ、アホなのか?

>>992 : デフォルトの名無しさん (ワッチョイ e6c9-2hGO)2017/03/14(火) 14:20:16.25 ID:vOSyRZGG0
> そこをいかに安全にするか考えるのが楽しいんじゃん

オメー個人が楽しいかどうかを仕事に持ち込むなよ
「いかに安全にするか」ってことは危険だとわかってるのに、
なんであえてそんなアホな手段を模索すんだよ、マゾか?


こいつら、同一人物だろ
0997デフォルトの名無しさん (ワッチョイ bfb2-csvI)2017/03/15(水) 00:30:23.86ID:ko4BTSP20
>>974
とりあえずぱっと見たところで業務案件としては可変コード部分がテスト出来ないのは設計上まずいと思う
可変部分の具体的な(端的な)例を幾つか挙げてもらわにゃ分からんけど, >>988の言う通り抽象化するのが下手なだけな可能性は高い

可変コードにするなら実装案としては,
・コードは顧客毎にgitリポジトリを作成して管理
・アプリケーション側で顧客毎のコードリポジトリを更新するAPI
・ベアリポジトリ(のmaster)へのpush時に上記APIを叩くフック
な感じを提案しておく。
リポジトリ管理はGitLabとか使えばGUIでかなり複雑なことまで出来るしコード編集(masterへのpush)権限も制御出来る。
テストも自動で走らせられる。
0998デフォルトの名無しさん (ワッチョイ bfb2-csvI)2017/03/15(水) 00:39:24.05ID:ko4BTSP20
次スレ立てるよ!
0999デフォルトの名無しさん (ワッチョイ bfb2-csvI)2017/03/15(水) 00:43:22.66ID:ko4BTSP20
ほい

【PHP】下らねぇ質問はここに書き込みやがれ 8 [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1489506082/
1000デフォルトの名無しさん (ワッチョイ ef59-ZfXI)2017/03/15(水) 02:46:08.52ID:6L0FngKc0
>>997
また要件すり替えてワーワーと。git言いたいだけなんちゃうんかと
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 125日 15時間 42分 42秒
10021002Over 1000Thread
2ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 2ちゃんねる専用ブラウザからの広告除去
★ 2ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
http://premium.2ch.net/

▼ 浪人ログインはこちら ▼
https://login.2ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。