1 名前:デフォルトの名無しさん (ワッチョイ 1342-Xqtn) mailto:sage [2016/11/09(水) 11:03:26.15 ID:eAjeihOa0.net] PHPに関する下らない質問用避難スレです。 まず読むこと【PHPマニュアル】 www.php.net/manual/ja/ 前スレ 【PHP】下らねぇ質問はここに書き込みやがれ 5(実質6) 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
554 名前:デフォルトの名無しさん (ワッチョイ ff42-O/vA) mailto:sage [2016/12/29(木) 13:50:55.27 ID:4JfnTdGo0.net] PHP 7で性能上がったから 今後は少しは使われるようになるかもね。 便利なライブラリでも出てくるようになればだが(Pythonが上位の理由だね)
555 名前:デフォルトの名無しさん (ワッチョイ eb8c-Kqee) mailto:sage [2016/12/29(木) 22:41:34.06 ID:3fA0wham0.net] phpのソースって読んだことありますか?
556 名前:デフォルトの名無しさん (ワッチョイ 07ce-Sa8B) mailto:sage [2016/12/30(金) 03:36:42.79 ID:2Pbjmvkx0.net] 下記のコードで結果を テキスト1テキスト4 と出力させたいんですが、 どうしても◆(の中に"?")マークに文字化けしてしまいます ----------------- $items = array( "テキスト1,テキスト2,テキスト3", "テキスト4,テキスト5,テキスト6" ); $values = explode(",", $items); foreach ($values as $val) { $out .= $val[0]; } echo $out; ----------------- [0]を外すと文字化けしないんですが……、これは何が原因でしょうか?
557 名前:デフォルトの名無しさん (ワッチョイ 3bb2-4Ie9) mailto:sage [2016/12/30(金) 03:55:23.70 ID:pdP4pqmB0.net] >>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
558 名前:デフォルトの名無しさん (ワッチョイ 07ce-Sa8B) mailto:sage [2016/12/30(金) 04:00:02.30 ID:2Pbjmvkx0.net] >>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; ----------------- すいません、こうでした
559 名前:デフォルトの名無しさん (ワッチョイ 3bb2-4Ie9) mailto:sage [2016/12/30(金) 04:04:21.33 ID:pdP4pqmB0.net] >>552 その$val[0]の[0]は何のつもりで付けてんの?
560 名前:デフォルトの名無しさん (ワッチョイ 07ce-Sa8B) mailto:sage [2016/12/30(金) 04:09:49.91 ID:2Pbjmvkx0.net] >>553 テキスト1と4を指定してるつもりです
561 名前:デフォルトの名無しさん (ワッチョイ 3bb2-4Ie9) mailto:sage [2016/12/30(金) 04:10:27.52 ID:pdP4pqmB0.net] >>554 $valの中身何だと思ってる?
562 名前:デフォルトの名無しさん (ワッチョイ 07ce-Sa8B) mailto:sage [2016/12/30(金) 04:12:48.02 ID:2Pbjmvkx0.net] >>555 テキスト1,テキスト2,テキスト3を配列にしたものだと思ったんですが違うんですか?
563 名前:デフォルトの名無しさん (ワッチョイ 3bb2-4Ie9) mailto:sage [2016/12/30(金) 04:13:42.87 ID:pdP4pqmB0.net] >>556 そんなら$valuesと$valはどう違うの? ってかvar_dumpしてみなよ
564 名前:デフォルトの名無しさん (ワッチョイ 07ce-Sa8B) mailto:sage [2016/12/30(金) 04:15:36.84 ID:2Pbjmvkx0.net] >>557 根本的に間違ってました スレ汚しすいません
565 名前:デフォルトの名無しさん (ワッチョイ 3bb2-4Ie9) mailto:sage [2016/12/30(金) 04:18:17.38 ID:pdP4pqmB0.net] >>558 くだ質だからそりゃ別に構わんけど, var_dumpとかで自分がやりたいことが起こってるか確認する癖をつけた方がいい
566 名前:デフォルトの名無しさん (ワッチョイ 07ce-Sa8B) mailto:sage [2016/12/30(金) 04:42:50.88 ID:2Pbjmvkx0.net] 色々やってとりあえず解決できました お騒がせしました……
567 名前:デフォルトの名無しさん (ワッチョイ 065b-QzL3) [2016/12/30(金) 22:55:39.09 ID:E0G0h/wT0.net] >>560 せっかくだから、最終的なコードも書いておけよw
568 名前:デフォルトの名無しさん (ワイモマー MM4f-Sa8B) mailto:sage [2017/01/01(日) 22:17:22.13 ID:LmJm3S6qM.net] evernote web clipperやpocketのように ウェブサイトを読みやすく整形してくれるPHPのライブラリがあれば教えて下さい
569 名前:デフォルトの名無しさん (ワッチョイ bb85-wEaH) mailto:sage [2017/01/06(金) 15:30:19.88 ID:A0+jLhsU0.net] PHPerがドメイン駆動設計と関数型プログラミングを学んで得たもの(前編) - Qiita ttp://qiita.com/nunulk/items/53290a9d995f8a67fbda PHPで必死こいて型を何とか導入しようって、バカとしか思えないんだけど、どうなん?
570 名前:デフォルトの名無しさん (ワッチョイ 6faf-HvS5) [2017/01/07(土) 00:36:31.32 ID:5WVocSaL0.net] 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
571 名前:デフォルトの名無しさん (ワッチョイ 1bf8-HvS5) mailto:sage [2017/01/07(土) 01:53:51.96 ID:lUvWVNVj0.net] >PHPで必死こいて型を何とか導入しよう PHPNG見てても、もはやPHPの意味がねーよって感じで、 その辺導入したいやつとは意見割れてたからな。 それでもgotoのように書ける選択肢が増えるだけならいいだろう、 他言語使いに配慮してなんでも取り入れておこうみたいな、適当な空気があるから。
572 名前:デフォルトの名無しさん (ワッチョイ 0f0f-HvS5) mailto:sage [2017/01/07(土) 11:16:17.81 ID:Xwn+BVv30.net] 正規表現の質問です A9999、I9999、U9999、E9999、O9999にマッチさせたくて/A9999|I9999|U9999|E9999|O9999/と書いたのですが もうちょっと短縮できるかなと思い/[AIUEO]9{3}/と書いても別の部分とマッチしたりしてしまいました 解決策知ってる方いましたらお願いします
573 名前:デフォルトの名無しさん (ワッチョイ fb42-pn3f) mailto:sage [2017/01/07(土) 11:34:45.30 ID:yxOI3uq10.net] >>566 何で3だと思った?
574 名前:デフォルトの名無しさん (ワッチョイ 0f0f-HvS5) mailto:sage [2017/01/07(土) 14:45:06.11 ID:Xwn+BVv30.net] >>567 ありがとうございます 9+9×3かと思ったら9×4だったとは
575 名前:デフォルトの名無しさん (ワッチョイ 6ba0-4j6q) mailto:sage [2017/01/07(土) 15:22:24.83 ID:4bQMi0Ir0.net] RSSからデータ引っ張ってきてDBに保存するとこまで出来たんだけど 何もしなくても15分毎に自動でこれ動作させるにはどうしたらいいんでしょうか?
576 名前:デフォルトの名無しさん (ワッチョイ fb42-pn3f) mailto:sage [2017/01/07(土) 15:30:59.21 ID:yxOI3uq10.net] cronつかう
577 名前:デフォルトの名無しさん (ワッチョイ 6ba0-4j6q) mailto:sage [2017/01/07(土) 16:44:07.77 ID:4bQMi0Ir0.net] cronはサーバー側の機能のようですが PHPで何かやっておくことはないでしょうか?
578 名前:デフォルトの名無しさん (ワッチョイ fb42-pn3f) mailto:sage [2017/01/07(土) 16:51:34.56 ID:yxOI3uq10.net] PHPで実行したいプログラムソースを書いておき cronで実行したい時刻か時間間隔を指定して動かせばいい
579 名前:デフォルトの名無しさん (ワッチョイ 1bf8-HvS5) mailto:sage [2017/01/07(土) 17:12:11.51 ID:lUvWVNVj0.net] cron使わなくてもバックグラウンドでphp実行させときゃ出来るけどcronが何かわからん人には無理だろうな while(true){ //RDBからデータ引っ張ってきてDBに保存 sleep(15*60); } 長いスリープ挟んでるとはいえ見ての通り無限ループなんで 共用レン鯖においてhttpでアクセスしたりしないように
580 名前:デフォルトの名無しさん (ワッチョイ 6ba0-4j6q) mailto:sage [2017/01/07(土) 17:15:34.35 ID:4bQMi0Ir0.net] ありがとうございます。 cronうまく動きました。
581 名前:デフォルトの名無しさん (アウアウウー Sa3f-/7mX) [2017/01/07(土) 19:11:11.91 ID:LVq6VClfa.net] mysqliでプリペアドステートメントを使って、MYSQLの中にバイナリで保存した画像を SELECT img FROM table LIMIT ?,1; という感じでechoで出力したいのですが、検索してでてくるサンプルが文字列でのサンプルばかりで 応用ができな
582 名前:「のでヒントか答えを教えてください [] [ここ壊れてます]
583 名前:デフォルトの名無しさん (ワッチョイ df30-51vH) mailto:sage [2017/01/07(土) 20:38:28.10 ID:SB9sxYsP0.net] ttp://d.hatena.ne.jp/steel-plate/20070910/1201454906
584 名前:デフォルトの名無しさん (アウアウウー Sa3f-/7mX) [2017/01/08(日) 18:02:17.13 ID:iAaSxX6Ea.net] >>576 ありがとうございます。見てみます。
585 名前:デフォルトの名無しさん (ワッチョイ 7bd4-pyla) [2017/01/08(日) 18:24:14.97 ID:w+xbQ2n10.net] 天才プログラマーはどこにいますか? プログラマーの人にこういうの作って欲しいってスレはどこに立てると沢山の人に見てもらえますか? こんなの立ててみたんだけど(´・_・`) 拝啓 天才プログラマー様 [無断転載禁止]©2ch.net tamae.2ch.net/test/read.cgi/prog/1483865523/
586 名前:デフォルトの名無しさん (ワッチョイ 6ba0-4j6q) mailto:sage [2017/01/09(月) 14:30:53.86 ID:ZbwmiDdE0.net] DBに画像やファイルを保存することはできるのだろうか? それとも画像はWeb上に保存しておいてDBにURLを保存し、そこからリンクするものだろうか? 画像やファイルをDBで扱う場合どちらが一般的なのだろうか?
587 名前:デフォルトの名無しさん (ワッチョイ 1bf8-HvS5) mailto:sage [2017/01/09(月) 15:03:03.56 ID:LIDZc6mW0.net] >DBに画像やファイルを保存することはできるのだろうか? 画像をエディタで開くと変な文字列出るだろ ざっくりいうとあれを保存するイメージ 出力はヘッダにファイル情報を付加して(mimeタイプを指定して) ブラウザに普通のテキストではないとわからせてやる >それとも画像はWeb上に保存しておいてDBにURLを保存し、そこからリンクするものだろうか? 別にweb上である必要はない DBがアクセス出来る位置であればいい >画像やファイルをDBで扱う場合どちらが一般的なのだろうか? 静的イメージを作成してDBにはリンク情報をもたせるのが早いし一般的
588 名前:デフォルトの名無しさん (ワッチョイ 1bf8-HvS5) mailto:sage [2017/01/09(月) 15:06:16.16 ID:LIDZc6mW0.net] >それとも画像はWeb上に保存しておいてDBにURLを保存し、そこからリンクするものだろうか? 後半読み飛ばしてたわw まぁそういうことや
589 名前:デフォルトの名無しさん (ワッチョイ bb85-wEaH) mailto:sage [2017/01/09(月) 15:11:48.30 ID:Dm7q6S9e0.net] dbにバイナリ保存とかバカじゃねw
590 名前:デフォルトの名無しさん (ワッチョイ fb42-pn3f) mailto:sage [2017/01/09(月) 15:16:18.36 ID:lAQ0GX8y0.net] DBに格納した場合は、URLリンクを使わないので、 直アドでアクセスすることができないと言うことくらいかな
591 名前:デフォルトの名無しさん (ワッチョイ 6ba0-4j6q) mailto:sage [2017/01/09(月) 16:36:21.44 ID:ZbwmiDdE0.net] >>580 丁寧な説明をありがとうございます。 了解しました。 保存は一応可能だが一般的でないのですね 勉強になりました。
592 名前:デフォルトの名無しさん (ワッチョイ df30-51vH) mailto:sage [2017/01/09(月) 17:34:01.84 ID:Y2LAQHW00.net] dbにバイナリ保存ってアレだと言われていて俺もアレだと思うんだけど SQLアンチパターンの一つなんだよな EAVとかは誰が見てもゴミだと思うがファントムファイルについてだけは難しいな
593 名前:デフォルトの名無しさん (ワッチョイ bbc7-pn3f) mailto:sage [2017/01/09(月) 21:52:38.00 ID:8LyXWJaJ0.net] DBにバイナリを保存することを最初から除外して検討しないことがアンチパターンだからなぁ 必ずしもバイナリもDBに保存せよということではない
594 名前:デフォルトの名無しさん (ワッチョイ df30-51vH) mailto:sage [2017/01/09(月) 22:03:43.64 ID:Y2LAQHW00.net] >>586 ですよねー なのでパターンによる最適解ってのが知りたいんだけど無いんだろうなって ファントムファイルだけはそういう意見がネットに転がってないのよね英語含めても
595 名前:デフォルトの名無しさん (ワッチョイ fb42-pn3f) mailto:sage [2017/01/09(月) 22:24:44.21 ID:lAQ0GX8y0.net] 画像、イメージはファイルとして格納しないといけないと言うことはないと思う それならば、テキストもテキストファイルとして格納しろってことになるし
596 名前:デフォルトの名無しさん (ワッチョイ 2b42-yz8t) mailto:sage [2017/01/09(月) 23:03:00.28 ID:yvmBF9eo0.net] 画像が大量にあってアクセスが多いとか、いろいろ考慮して お金がたっぷりあってサーバーに余裕がある時は考慮しても良いかも 昔ファイルシステムがボトルネックになったことあるからね。 もちろん管理しやすさ重視だったけど
597 名前:デフォルトの名無しさん (ワッチョイ 6ba0-4j6q) mailto:sage [2017/01/10(火) 00:15:48.11 ID:Zz1rnY0L0.net] 正規表現を使って preg_match_all('/<a.*href\s*=\"?([\-_\.\!\~\*\'\(\)a-z0-9\;\/\?\:@&=\+\$\,\%\#]+(jpg|jpeg|gif|png|bmp))/i', file_get_contents($file), $img_path_list); こんな感じに作って画像リンクを抽出するようにしたんだけど たまに改行がなく一文にソースコードがずらーと書いてあるやつがあってうまく取り出せない 何か良い方法はないでしょうか? こうしたい <a href="img01.jpg" target="_blank">img01</a> <a href="img02.jpg" target="_blank">img02</a> ↓ Array ( [0] => img01.jpg [1] => img02.jpg )
598 名前:デフォルトの名無しさん (ワッチョイ 1bf8-HvS5) mailto:sage [2017/01/10(火) 01:11:41.52 ID:91nFXcAZ0.net] href="([^"]+\.jpg|jpeg|gif|png|bmp)
599 名前:デフォルトの名無しさん (ワッチョイ 1bf8-HvS5) mailto:sage [2017/01/10(火) 01:16:54.93 ID:91nFXcAZ0.net] href="([^"]+\.(jpg|jpeg|gif|png|bmp))" スマン色々抜けてた 相対リンクは含めないとかでない限り ごちゃごちゃしたの書くより"が現れるまでをとったほうがいいんじゃない
600 名前:デフォルトの名無しさん (ワッチョイ bbc7-pn3f) mailto:sage [2017/01/10(火) 01:39:10.15 ID:fP39RQYT0.net] >>590 その処理は正規表現じゃなきゃ駄目か? phpQueryとかのライブラリ使ってやる方が素直だし読みやすいと思うが 一応その正規表現の問題点を挙げておくと, <a.* の段階で貪欲にマッチして後続の, href\s*=\"?([\-_\.\!\~\*\'\(\)a-z0-9\;\/\?\:@&=\+\$\,\%\#]+(jpg|jpeg|gif|png|bmp)) にマッチする最後の部分までの間にある全ての文字を食い尽くす よって <a.* の部分がとてもマズい HTMLタグにきちっとマッチさせる正規表現は書けるけど面倒
601 名前:デフォルトの名無しさん (ワッチョイ 6b56-IbiL) mailto:sage [2017/01/10(火) 17:34:14.17 ID:eoRQxw730.net] >>590 なるべく元のコードに手を加えない方向でいけば a.* ⇒ a.*? にするだけでいいと思うが 最短マッチと最長マッチの違い どのみちタグの中にダブルコーテーションが無いとかシングルコーテーション使ってたり =の後に空白文字があったら駄目だけど 正規表現って最初は試行錯誤しながら学ぶもんだから 初心者のうちはあんまり他人が書いたものをコピペするのはおすすめしない
602 名前:デフォルトの名無しさん (ワッチョイ 6ba0-4j6q) mailto:sage [2017/01/10(火) 17:37:36.65 ID:Zz1rnY0L0.net] >>592 綺麗にできました。 正規表現は使えるとホント便利ですね いつかしっかり勉強したいです。 その他の方もありがとうございました。
603 名前:575 (アウアウウー Saf3-OYug) [2017/01/12(木) 11:50:13.88 ID:P6PzELH5a.net] おかげさまでできました。ありがとうございます。 >>585 DBに保存したほうがセキュリティ上好ましいとどこかで見た気がしたので そうしているのですが、呼び出しがやや面倒です。 書き込みを拝見させていただくとDBに保存したほうが 動作も重くなるみたいなのですが、DBに保存するメリットってありますか? なければやめようかと思うのですが・・・
604 名前:デフォルトの名無しさん (ワッチョイ c356-YL17) mailto:sage [2017/01/12(木) 12:58:17.42 ID:JoWqZZGk0.net] DBに画像をバイナリ保存するのは 類似画像検索するとかバイナリデータ内に含まれる情報を元にソートや抽出をするといった「明確な目的」があるからであって 特に目的もないのにそうする事はリソースの無駄以外の何者でもない 偉そうな事をいって申し訳ないが セキュリティ上好ましいってその理由を理解もせずに鵜呑みにしたら駄目だと思う
605 名前:デフォルトの名無しさん (ワッチョイ 67f8-dHfL) mailto:sage [2017/01/12(木) 15:40:42.15 ID:hdlSpXcO0.net] セキュリティ上好ましいっていうのは上のほうでも誰か書いてたけど たぶん直リンで簡単にアクセス出来ないからとかそんな理由なんじゃない? 特定の人しかアクセス出来ない非公開画像なんかの場合はちょっとした工夫が必要だけど 別にDBである必要はないね
606 名前:デフォルトの名無しさん (JP 0H8e-vSov) mailto:sage [2017/01/12(木) 17:13:18.12 ID:zvW9UYRyH.net] >>596 詳しくは、書籍『SQLアンチパターン』のファントムファイルを参照するとして、データベースに保存するメリットを列挙すると、 ・ファントムファイル(幻のファイル:データベースのレコードはあるがファイルが存在しない)が起こらない ・画像の保存・変更・削除がデータベースのトランザクションと一致する ・ロールバックしたときに不要なファイルが残るということがない ・一般ファイルとして保存すると、File I/Oエラーのときにトランザクションをロールバックするなどのコードが必要になる ・データベースをバックアップすれば、画像も一緒にバックアップされる(一貫した完全なデータセットでバックアップできる) 「SQLアンチパターン ファントムファイル」でググれば、書籍を買わなくてもいろいろと記事が見つかる。
607 名前:デフォルトの名無しさん (JP 0H8e-vSov) mailto:sage [2017/01/12(木) 17:21:55.51 ID:zvW9UYRyH.net] あ、念のため書いておくと、『SQLアンチパターン』でアンチパターンとされているのは、 データベースに画像をバイナリで保存することではなくて、 「物理ファイルの使用(データベースにはパスのみ格納)を必須と思い込む」ことで、 たいした考慮もなしにそう実装してしまうというものです。
608 名前:デフォルトの名無しさん (ワッチョイ b222-GBI4) [2017/01/12(木) 18:12:29.36 ID:LTmK9cNB0.net] サイト間の文字コードについて質問させてください。 今仕事でブログパーツを作成しているのですが、 文字コードが異なるサイトでは <script src=
609 名前:デフォルトの名無しさん (ワッチョイ b222-GBI4) [2017/01/12(木) 18:15:23.38 ID:LTmK9cNB0.net] 規制が掛ってしまったのでプロトコル名は全角の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> どの文字コードのページに埋め込んでも正しく表示されます。 どなたかご教示いただけないでしょうか?
610 名前:デフォルトの名無しさん (ワッチョイ db2c-dHfL) mailto:sage [2017/01/12(木) 19:13:19.50 ID:taUnzxu50.net] レスポンスのContent-Typeヘッダのcharsetでブラウザに文字コード教えるだけなのでは リクエスト時にこの文字コードをくれではなくレスポンスでこの文字コード使ってるからクライアントで勝手に解釈しろという流れ
611 名前:デフォルトの名無しさん (ワッチョイ 3eaf-dHfL) [2017/01/12(木) 23:35:18.23 ID:yNVhW+sq0.net] sjisのページにこれ貼り付けても文字化けしないけど 判定とかしてないでしょ
612 名前:デフォルトの名無しさん (ワッチョイ d3d5-oERZ) [2017/01/12(木) 23:56:56.78 ID:tDwhqFa10.net] 自作ゲーム即売会「ゲームマーケット」に1万人超 www.nikkansports.com/general/nikkan/news/1750500.html ボードゲームのオリジナルオーダー制作 www.logygames.com/logy/ordermade.html カードゲームを自作する1 【自宅でカード印刷】 tanishi.org/?p=801 100円ショップでボードゲームを自作しよう https://sites.google.com/site/jun1sboardgames/blog/makeyourbg ノーアイデアでボードゲームを作ろう第1回「100円ショップで物を買う」 boardgamelove.com/archives/boardgame-make-1/ ボードゲーム市場がクラウドファンディングの出現で急成長を遂げ市場規模を拡大中 gigazine.net/news/20150820-board-game-crowdfunding/ 実際のところ、自作ボードゲームってどれぐらい売れるもんなの? roy.hatenablog.com/entry/2016/12/20/220102 オリジナル アナログゲーム・絵カード印刷 www.shobundo.org/index.html ゲームマーケット2016春にて初参加サークルさんに作成数アンケートをとってきました hidarigray.blog35.fc2.com/blog-entry-614.html
613 名前:デフォルトの名無しさん (ワッチョイ f67b-S3/X) mailto:sage [2017/01/13(金) 00:39:02.36 ID:84sZuYo80.net] >>601-602 2chのバグだろう 書き込み確認画面が出る際、" を使うと、そこで文字列の終了とみなされる。 " の代わりに、\" とエスケープすれば、どうだろう? それか、書き込み確認画面が出たら、1度キャンセルすれば、確認画面は出ないようになった
614 名前:575 (アウアウウー Saf3-OYug) [2017/01/13(金) 09:18:20.76 ID:zdP6lRcka.net] >>597-600 ありがとうございます、検索してきました。とても勉強になりました。 用途ごとで考えていかないといけないんですね
615 名前:デフォルトの名無しさん (ワッチョイ b222-GBI4) mailto:sage [2017/01/13(金) 17:40:23.42 ID:pW3G4Um70.net] >>603 ありがとうございます! header("Content-type: application/x-javascript; charset=utf-8"); で行けました。 こんなに簡単だったなんて・・・
616 名前:デフォルトの名無しさん (ワッチョイ f230-sWU2) mailto:sage [2017/01/15(日) 10:07:50.48 ID:96oN4X0D0.net] ファントムファイルの話おもしろいな 久しぶりに有意義なレス読めて嬉しいわ
617 名前:デフォルトの名無しさん (ワッチョイ c3a0-kZbI) mailto:sage [2017/01/17(火) 00:12:19.85 ID:rCvGxOoa0.net] 文字列がだいたいあってればtrueって返すのってどうにかできないか? 「あいうえおかきくけこ」≒「あ■うえお■きくけこ」 =>true 「あいうえおかきくけこ」≒「さしすせそたちつてと」 =>false
618 名前:デフォルトの名無しさん (ワッチョイ 4f42-q48i) mailto:sage [2017/01/17(火) 00:43:41.02 ID:ch2PxU+N0.net] 「だいたい」と言う言葉を厳密にまず定義してみて 人によっては、先頭の一文字さえ合えば合っているって言うかもしれない
619 名前:デフォルトの名無しさん (ワッチョイ 1fc7-q48i) mailto:sage [2017/01/17(火) 00:45:23.61 ID:vaY8CLG20.net] >>610 文字列の集合上の距離関数(Levenshtein距離など)とtrueを返す距離の閾値を引数にとる関数を考えればよい
620 名前:デフォルトの名無しさん (ワッチョイ 4f46-YL17) mailto:sage [2017/01/17(火) 12:40:52.39 ID:34x6WvLV0.net] >>610 611の言うとおり とてもプログラミングする人間の質問とは思えない
621 名前:デフォルトの名無しさん (ワッチョイ c356-YL17) mailto:sage [2017/01/17(火) 12:43:30.29 ID:AoWcBh8D0.net] あいうえお と AいうeO とが「だいたい」同じとみなすなら >>612 の方法ではダメだしね ある程度定義がないと答えようがない
622 名前:デフォルトの名無しさん (ワッチョイ c3a0-kZbI) mailto:sage [2017/01/17(火) 17:30:26.50 ID:rCvGxOoa0.net] すまない 定義も言わずに無茶な質問したなと思っている 定義としていいのかどうかわからないが ベースとなる文字列に対して対象となる文字列との合致率が80%以上あればいい 最初はベースとなる文字列を2文字ずつ分解して類似を消し、 対象となる文字列内にその文字か含まれるか調査して それが80%を超えればtrueにしようと考えていたんだけど これでいいのか、もっといい方法があるんじゃないか?で不安になって質問した
623 名前:デフォルトの名無しさん (アウアウカー Sa5f-kkJw) mailto:sage [2017/01/17(火) 18:04:45.68 ID:0If6Z2WBa.net] >>614 距離関数の定義と設定する閾値次第 文字列の近さの評価は距離関数に丸投げするわけだ 用途や目的, 想定に合わせて距離関数を実装してコールバックとして渡す
624 名前:デフォルトの名無しさん (アウアウカー Sa5f-kkJw) mailto:sage [2017/01/17(火) 18:17:37.68 ID:0If6Z2WBa.net] >>615 その「一致率」ってのが, 文字列の比較でどこに着目して何を重視するかによって変わる指標でしかないんだけども とりあえずよく使われる例として上でも挙げたLevenshtein距離とその実装アルゴリズムのBitapを調べてみてはどうか 尚マルチバイト文字列でなければ組み込みのlevenshtein関数がある
625 名前:デフォルトの名無しさん (アウアウカー Sa5f-kkJw) mailto:sage [2017/01/17(火) 18:54:34.88 ID:0If6Z2WBa.net] Bitapは実装アルゴリズムじゃないわ失礼
626 名前:デフォルトの名無しさん (ワッチョイ c356-YL17) mailto:sage [2017/01/17(火) 19:48:09.06 ID:AoWcBh8D0.net] >>616 日本語って漢字もカタカナもひらがなもアルファベットもあるからさ Googleみたいな天才集団ならまだしも俺みたいな凡人レベルだと 一度ローマ字読みに統一(それすらYahooAPIに丸投げ)してから Levenshteinにほとんど丸投げみたいな感じで 似たようなことならやった事があるが参考になるかね もう5年ぐらい前の話だから今はもっといい方法あるかもな
627 名前:デフォルトの名無しさん (ワッチョイ c356-YL17) mailto:sage [2017/01/17(火) 19:49:45.70 ID:AoWcBh8D0.net] 619は616ではなく>>615 へのレスの間違いだ 失礼
628 名前:デフォルトの名無しさん (ワッチョイ c3a0-kZbI) mailto:sage [2017/01/17(火) 20:26:24.43 ID:rCvGxOoa0.net] いろいろありがとうございます。 Levenshteinというのがうまく使えそうなので これでやってみたいと思います。
629 名前:デフォルトの名無しさん (ワッチョイ b3a0-07nx) mailto:sage [2017/01/19(木) 01:02:50.61 ID:Iza9bQoq0.net] 質問よろしいでしょうか 文字と6〜11桁の数値の混ざった文字列があり、 この数値以降の文字列を削除したいのですが何か良い方法はないでしょうか? abcd1234567app-00 → abcd1234567 xyz1234567890xx/0123 → xyz1234567890
630 名前:デフォルトの名無しさん (ワッチョイ 2342-SmTw) mailto:sage [2017/01/19(木) 02:17:05.14 ID:TMXa1TOT0.net] <?PHP $src = array("abcd1234567app-00", "xyz1234567890xx/0123"); print_r($src); $dst = preg_replace('/^([a-z]+[0-9]+)[^0-9].*$/', '$1', $src); print_r($dst);
631 名前:デフォルトの名無しさん (ワッチョイ b3a0-07nx) mailto:sage [2017/01/19(木) 11:38:32.06 ID:Iza9bQoq0.net] ありがとうございます。 もう一つ同じような質問になってしまい恐縮なのですが、 aa.bb5.com/topics/0123456789/58- ll.bb1.com/topics/1234567890/s12 cc.bb8.com/topics/2345678901 こういったURLを一律に aa.bb5.com/topics/0123456789/ ll.bb1.com/topics/1234567890/ cc.bb8.com/topics/2345678901/ このような形に整える場合、どうすると良いのでしょうか?
632 名前:デフォルトの名無しさん (ワッチョイ b356-JQ1R) mailto:sage [2017/01/19(木) 13:26:19.40 ID:Y9xRubnq0.net] 「topics+数字10桁」が固定なら $url = array( 'aa.bb5.com/topics/0123456789/58- ', 'll.bb1.com/topics/1234567890/s12 ', 'cc.bb8.com/topics/2345678901 ' ); print_r(preg_replace('/(topics\/\d{10}).*$/', '$1/', $url)); とかさ とりあえず正規表現勉強しよう こんなの初歩中の初歩だし
633 名前:デフォルトの名無しさん (ワッチョイ 637b-jh1Y) mailto:sage [2017/01/19(木) 15:41:48.95 ID:+8JGp/PH0.net] 別々のサイトを同じ正規表現で処理するのってどうなのかな? できたとしても、普通しないんじゃあないかな?
634 名前:デフォルトの名無しさん (ワッチョイ 8fc9-3qL8) mailto:sage [2017/01/19(木) 16:09:49.05 ID:+apAMdxY0.net] >>626 対象が普通じゃないときにはよくやる。
635 名前:デフォルトの名無しさん (ワッチョイ b356-JQ1R) mailto:sage [2017/01/19(木) 17:33:26.13 ID:Y9xRubnq0.net] >>626 そんなもん場合によるとしか言いようがない ドメインが違っても同じシステム上で動いてるならhost以下のURLは同じパターンになる事だってある parse_url()あたり使ってドメイン別に処理を分岐させるてもいいし 条件が複雑になってもpreg_replace_callback()使ってコールバック関数に投げれば大抵の事は正規表現でできる(正規表現にこだわる必要性はないが)
636 名前:デフォルトの名無しさん (ワッチョイ 2346-JQ1R) mailto:sage [2017/01/19(木) 17:36:45.27 ID:DEEPX58W0.net] 2chミラー系のサイトとかパスの部分は本家と同じルールの事が多いよな
637 名前:デフォルトの名無しさん (ワッチョイ 03f8-3qL8) mailto:sage [2017/01/19(木) 17:49:38.07 ID:Yy/ywFZD0.net] 相手方が仕様変更したら、都度変更するってのは当たり前のことだしね。
638 名前:デフォルトの名無しさん (ワッチョイ b3a0-07nx) mailto:sage [2017/01/19(木) 17:56:49.57 ID:Iza9bQoq0.net] >>625 うまくいきました。 「preg_replace」こういった便利なものをもっと活用できる様努力したいです。 正規表現はまだ勉強していませんでした。 皆さんはどのように勉強されましたか?
639 名前:デフォルトの名無しさん (ワッチョイ b356-JQ1R) mailto:sage [2017/01/19(木) 18:05:43.35 ID:Y9xRubnq0.net] 俺はwebでどうしても作りたいサービスがあって それを実現するために必要なものを都度、本を見たり他人のソース読んで独学で覚えていったなー 正規表現もその内の1つ 当時はPHPなんてまだ実用レベルではなかったけど、プログラミングなんてそんなもんじゃね? ※ちなみに作ったサービスが大ヒットして20代で起業できた 正規表現は言語や環境を超えて色んな場面で使えるから早いとこ覚えた方がいいよ
640 名前:デフォルトの名無しさん (アウアウカー Sac7-Taza) mailto:sage [2017/01/19(木) 19:26:50.82 ID:IJcB5l5+a.net] Perlで覚えたっておっさんは多そう
641 名前:デフォルトの名無しさん (ワッチョイ 2342-SmTw) mailto:sage [2017/01/19(木) 20:10:06.40 ID:TMXa1TOT0.net] sed使って覚えたw
642 名前:デフォルトの名無しさん (ワッチョイ b3a0-07nx) mailto:sage [2017/01/19(木) 23:55:33.82 ID:Iza9bQoq0.net] ありがとうございました。 正規表現に関する書籍などもあるようなので始めのうちはそちらで勉強しようと思います。
643 名前:デフォルトの名無しさん (JP 0H27-Up5i) mailto:sage [2017/01/20(金) 08:28:28.07 ID:Nvso2zBqH.net] 気の利いたテキストエディタなら 検索条件に正規表現が使えるよ そんなに身構えるほどのものでもない でも直感的にすぐできそうなことが できなかったり遠回りさせられたりするケースは多い
644 名前:デフォルトの名無しさん (JP 0H7f-Taza) mailto:sage [2017/01/20(金) 15:15:26.51 ID:ytgAV8a7H.net] 所詮有限オートマトンでしかないからなぁ 文脈自由言語を表現したいことはそこそこあるし
645 名前:デフォルトの名無しさん (ワッチョイ 6f5b-WaXM) mailto:sage [2017/01/21(土) 11:23:45.42 ID:W/zpHkC+0.net] あああああああああああああ
646 名前:デフォルトの名無しさん (ワッチョイ 634a-OQjX) mailto:sage [2017/01/22(日) 11:25:23.82 ID:yhCK3ont0.net] echo "あああああ"; で出力している行が沢山あるのだが、C言語のマクロみたいに #define echo などとして、一時的にechoをしないように出来ますか? #define echo echo で元に戻すとか。
647 名前:デフォルトの名無しさん (ワッチョイ f342-WaXM) mailto:sage [2017/01/22(日) 12:29:06.17 ID:Bs668zcL0.net] ob_startでダミー関数へ出力を流して捨てるとか まぁecho以外のものも全部影響するけど
648 名前:デフォルトの名無しさん (ワッチョイ 634a-OQjX) mailto:sage [2017/01/22(日) 16:56:50.88 ID:yhCK3ont0.net] >>640 サンキュウ。 PHP初心者の俺には難しそうなのであきらめるわ。
649 名前:デフォルトの名無しさん (ワッチョイ f342-WaXM) mailto:sage [2017/01/22(日) 17:44:31.99 ID:Bs668zcL0.net] 自分も初心者で、この前試してみたら動いたよ。 echoで出力したやつを mongodb へ出力するようにしてみた callback関数に慣れてないので、結局 ob_get_contents で文字列として取り出してやることになったけどww(一応callback関数も動いたんだけどねw)
650 名前:デフォルトの名無しさん (ワッチョイ 634a-OQjX) mailto:sage [2017/01/24(火) 07:22:42.90 ID:GW7wBcmJ0.net] echo '文字列'; echo('文字列'); どちらも行けるのはなぜ?
651 名前:デフォルトの名無しさん (ワッチョイ 03f8-3qL8) mailto:sage [2017/01/24(火) 10:15:59.16 ID:9JkkYn/G0.net] なぜって言われても仕様だからとしか echoは言語構造で関数ではないが関数風の記述も出来る
652 名前:デフォルトの名無しさん (シャチーク 0C67-x36u) mailto:sage [2017/01/24(火) 13:11:54.10 ID:qMNsZ9tKC.net] <?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)
653 名前:デフォルトの名無しさん (ワッチョイ 634a-OQjX) mailto:sage [2017/01/24(火) 13:28:04.90 ID:GW7wBcmJ0.net] >>644 サンキュウ。 勉強になったわ。 ちなみにそういう特徴があるのは echo だけなの?
654 名前:デフォルトの名無しさん (ワッチョイ 63c7-SmTw) mailto:sage [2017/01/24(火) 18:11:00.05 ID:eJZROb7k0.net] >>646 引数をとる言語構造は概ね require_onceとか