Laravel
ウェブ職人のためのPHPフレームワーク
本家
https://laravel.com/
git
https://github.com/laravel
動画チュートリアル(英語)
https://laracasts.com/
※前スレ
【PHP】Laravel【フレームワーク】 Part.9
https://medaka.5ch.net/test/read.cgi/php/1636499781/
【PHP】Laravel【フレームワーク】 Part.10
https://medaka.5ch.net/test/read.cgi/php/1647325775/
【PHP】Laravel【フレームワーク】 Part.11
https://medaka.5ch.net/test/read.cgi/php/1658553311/
【PHP】Laravel【フレームワーク】 Part.12
■ このスレッドは過去ログ倉庫に格納されています
2022/08/31(水) 18:53:51.77ID:???
655nobodyさん
2023/05/17(水) 13:14:30.48ID:??? 相場間違いなく落ちると思う
656nobodyさん
2023/05/17(水) 13:21:06.59ID:??? 個人事業の中小プロダクト専門だけど、実際工数が半減するから請負金額は下げてもいいかなぁって思ってる
657nobodyさん
2023/05/17(水) 13:33:00.63ID:???659nobodyさん
2023/05/17(水) 14:19:37.82ID:bnlQXyjO コントローラが肥大化して困っています。
たとえば以下のような掲示板投稿のメソッドがあるとして、
どのようにして簡略化すれば良いのでしょうか?
※波線の部分は他にも記述があるという意味
モデルが異なるので、1つのモデルにロジックを書くの難しいです。
public function create(Reuqest $request){
// ユーザーを取得
$user = User::find(Auth::id());
~~
// 掲示板に投稿
$board = Board::find($reuqest->board_id);
$board->create($request->all());
~~
// 登録をメールで知らせる
Mail::send(new BoardMail($user->name, $user->email));
~~
// 投稿した掲示板に戻る
return redirect('/board/show/' . $reuqest->board_id);
}
たとえば以下のような掲示板投稿のメソッドがあるとして、
どのようにして簡略化すれば良いのでしょうか?
※波線の部分は他にも記述があるという意味
モデルが異なるので、1つのモデルにロジックを書くの難しいです。
public function create(Reuqest $request){
// ユーザーを取得
$user = User::find(Auth::id());
~~
// 掲示板に投稿
$board = Board::find($reuqest->board_id);
$board->create($request->all());
~~
// 登録をメールで知らせる
Mail::send(new BoardMail($user->name, $user->email));
~~
// 投稿した掲示板に戻る
return redirect('/board/show/' . $reuqest->board_id);
}
660nobodyさん
2023/05/17(水) 14:38:45.61ID:??? ぶっちゃけ、その間の「~~」の処理を外だしするのが大事なんだけどね
Laravelについて、
ServiceクラスやらResourceやらRepositoryやらUseCaseやらクリーンアーキテクチャでググればいいかもね
結局は落しどころの話になるから、最適は自分やチームでみつけるしかない
(ビジネス?)ロジックをどこに書くのかも含めてね
以下はイケメンChatGPTの回答。(コードは省いた)
コントローラの肥大化を緩和するためには、いくつかのアプローチがあります。以下にいくつかの改善点を提案します。
1. モデルの責務を増やす:
モデルにロジックを追加して、コントローラから責務を移すことで、コントローラをシンプルに保つことができます。
具体的には、以下のようなメソッドをモデルに追加することが考えられます。
2. サービスクラスの導入:
コントローラの肥大化を避けるために、サービスクラスを導入することができます。
サービスクラスは特定のビジネスロジックをカプセル化し、コントローラに代わって処理を行います。
3. リダイレクトの処理を共通化:
リダイレクトの処理を共通のメソッドに切り出すことで、コントローラの冗長な部分を削減できます。
これらの改善点を組み合わせることで、コントローラの肥大化を軽減し、コードの再利用性と保守性を向上させることができます。
Laravelについて、
ServiceクラスやらResourceやらRepositoryやらUseCaseやらクリーンアーキテクチャでググればいいかもね
結局は落しどころの話になるから、最適は自分やチームでみつけるしかない
(ビジネス?)ロジックをどこに書くのかも含めてね
以下はイケメンChatGPTの回答。(コードは省いた)
コントローラの肥大化を緩和するためには、いくつかのアプローチがあります。以下にいくつかの改善点を提案します。
1. モデルの責務を増やす:
モデルにロジックを追加して、コントローラから責務を移すことで、コントローラをシンプルに保つことができます。
具体的には、以下のようなメソッドをモデルに追加することが考えられます。
2. サービスクラスの導入:
コントローラの肥大化を避けるために、サービスクラスを導入することができます。
サービスクラスは特定のビジネスロジックをカプセル化し、コントローラに代わって処理を行います。
3. リダイレクトの処理を共通化:
リダイレクトの処理を共通のメソッドに切り出すことで、コントローラの冗長な部分を削減できます。
これらの改善点を組み合わせることで、コントローラの肥大化を軽減し、コードの再利用性と保守性を向上させることができます。
661nobodyさん
2023/05/17(水) 15:40:07.20ID:??? >>660
チームじゃなくて自分一人で学習用にやっています。
~~は数行の関連処理があるという意味です。
モデルはすでに肥大化しています。
サービスクラスとユースケースの用途がイマイチわかりません。
AIさんに聞いても似たような回答です。
Classのパッケージだと考えれば良いのでしょうか?
チームじゃなくて自分一人で学習用にやっています。
~~は数行の関連処理があるという意味です。
モデルはすでに肥大化しています。
サービスクラスとユースケースの用途がイマイチわかりません。
AIさんに聞いても似たような回答です。
Classのパッケージだと考えれば良いのでしょうか?
662nobodyさん
2023/05/17(水) 18:46:24.65ID:??? ChatGPTに頼り過ぎ
664nobodyさん
2023/05/18(木) 02:34:53.01ID:??? 調べ事する時はググるんじゃなくて、ChatGPTに質問した方が早い。
665nobodyさん
2023/05/18(木) 02:54:06.61ID:??? 正規表現系はChatGPTに質問すれば一発じゃんwww
668nobodyさん
2023/05/18(木) 11:42:05.50ID:??? そんなレベルで正規表現とか使うなよ
ReDosの回避とか判断できないんだろ?
ReDosの回避とか判断できないんだろ?
669nobodyさん
2023/05/18(木) 13:56:29.62ID:??? >>668
ReDoS(Regular Expression Denial of Service)は、正規表現を悪用した攻撃手法の一つです。正規表現は、文字列のパターンマッチングに使用される強力なツールですが、誤った正規表現パターンを用いることで、攻撃者は悪意のある入力に対して非常に効率の悪い処理を引き起こすことができます。
この攻撃手法では、攻撃者はターゲットのシステムに対して、特定の正規表現パターンを含む大きな文字列を送信します。そして、その正規表現パターンが指数的な時間を要するような場合に、システムのパフォーマンスを低下させることができます。攻撃者は、これを繰り返し行うことで、システムを過負荷に陥らせることができます。
ReDoS攻撃は、セキュリティの脆弱性を悪用するものではなく、正規表現自体の特性を利用した攻撃です。正規表現は複雑なパターンマッチングを可能にするため、注意深い実装と入力の検証が必要です。システム開発者は、正規表現を使用する際には、適切な対策を講じる必要があります。
ReDoS(Regular Expression Denial of Service)は、正規表現を悪用した攻撃手法の一つです。正規表現は、文字列のパターンマッチングに使用される強力なツールですが、誤った正規表現パターンを用いることで、攻撃者は悪意のある入力に対して非常に効率の悪い処理を引き起こすことができます。
この攻撃手法では、攻撃者はターゲットのシステムに対して、特定の正規表現パターンを含む大きな文字列を送信します。そして、その正規表現パターンが指数的な時間を要するような場合に、システムのパフォーマンスを低下させることができます。攻撃者は、これを繰り返し行うことで、システムを過負荷に陥らせることができます。
ReDoS攻撃は、セキュリティの脆弱性を悪用するものではなく、正規表現自体の特性を利用した攻撃です。正規表現は複雑なパターンマッチングを可能にするため、注意深い実装と入力の検証が必要です。システム開発者は、正規表現を使用する際には、適切な対策を講じる必要があります。
670nobodyさん
2023/05/18(木) 13:58:55.30ID:??? >>668
簡単
ReDoS攻撃を回避するためには、以下の対策を実施することが重要です:
正規表現の最適化: 正規表現パターンを最適化し、無駄な複雑さや冗長性を排除します。具体的には、正規表現の量指定子(quantifier)を最小限に抑え、正確なマッチングに必要な要素に絞ります。
入力の検証と制限: ユーザーからの入力を厳密に検証し、制限を設けることで、異常な大きさや複雑さの入力を防ぎます。入力の長さやパターンに上限を設け、必要な制約に合致しない場合は処理を中断するなどの対策を取ります。
タイムアウトの実装: 正規表現の処理に時間制限を設け、長時間の処理を回避します。適切なタイムアウトを設定し、処理が指定時間を超える場合は中断するようにします。
サーバーサイドのリソース制限: サーバーサイドでの正規表現処理に対してリソース制限を設けることで、攻撃の影響を軽減できます。CPU時間、メモリ使用量、スレッド数などのリソース制限を設定し、不正な負荷がかかることを防ぎます。
ホワイトリストの採用: 正規表現を使用する際に、想定される有効な入力のパターンをホワイトリストとして作成し、それ以外の入力は拒否する方法を採用します。正規表現のパターンに基づくフィルタリングを行うことで、攻撃に対する保護を強化できます。
これらの対策は組み合わせて適用することが効果的です。正規表現を使用する際には、十分なテストと監視を行い、セキュリティの脆弱性を最小限に抑えるようにしましょう。
簡単
ReDoS攻撃を回避するためには、以下の対策を実施することが重要です:
正規表現の最適化: 正規表現パターンを最適化し、無駄な複雑さや冗長性を排除します。具体的には、正規表現の量指定子(quantifier)を最小限に抑え、正確なマッチングに必要な要素に絞ります。
入力の検証と制限: ユーザーからの入力を厳密に検証し、制限を設けることで、異常な大きさや複雑さの入力を防ぎます。入力の長さやパターンに上限を設け、必要な制約に合致しない場合は処理を中断するなどの対策を取ります。
タイムアウトの実装: 正規表現の処理に時間制限を設け、長時間の処理を回避します。適切なタイムアウトを設定し、処理が指定時間を超える場合は中断するようにします。
サーバーサイドのリソース制限: サーバーサイドでの正規表現処理に対してリソース制限を設けることで、攻撃の影響を軽減できます。CPU時間、メモリ使用量、スレッド数などのリソース制限を設定し、不正な負荷がかかることを防ぎます。
ホワイトリストの採用: 正規表現を使用する際に、想定される有効な入力のパターンをホワイトリストとして作成し、それ以外の入力は拒否する方法を採用します。正規表現のパターンに基づくフィルタリングを行うことで、攻撃に対する保護を強化できます。
これらの対策は組み合わせて適用することが効果的です。正規表現を使用する際には、十分なテストと監視を行い、セキュリティの脆弱性を最小限に抑えるようにしましょう。
671nobodyさん
2023/05/18(木) 14:43:24.21ID:??? >>670
お前すごいな!
ChatGPTにRFC準拠のメールアドレスの正規表現聞いたら
^(?i)[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}$
って返ってきた
これってReDoS回避できてるの?
お前すごいな!
ChatGPTにRFC準拠のメールアドレスの正規表現聞いたら
^(?i)[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,}$
って返ってきた
これってReDoS回避できてるの?
672nobodyさん
2023/05/18(木) 14:54:17.23ID:Y+Vtxt0x そんな短くなくね?
673nobodyさん
2023/05/18(木) 16:50:25.06ID:??? ChatGPTにしてもタダで使えるからラッキーみたいに使いまくっている奴いるけど
これ個人情報の収集となんら変わりないからな
googleの検索も似たようなものだし
これ個人情報の収集となんら変わりないからな
googleの検索も似たようなものだし
674nobodyさん
2023/05/18(木) 16:56:30.96ID:??? だから正規表現とか当たり障りのないところを聞くのに最適だよね
Google検索がクオリティ低くなってるから尚更
Google検索がクオリティ低くなってるから尚更
675nobodyさん
2023/05/18(木) 17:13:32.09ID:??? >>671
ReDOS攻撃を完全に防御するためには、正規表現のパターンを慎重に構築する必要があります。以下にいくつかの一般的な対策を示します。
正規表現の最大実行時間を制限する: 正規表現エンジンには、パターンの実行時間を制限する機能がある場合があります。この制限を設定することで、長時間の実行を防止できます。エンジンのドキュメントを確認し、適切な制限を設定してください。
繰り返し量指定子の最大回数を制限する: 特定の繰り返し量指定子(例: *, +, {n,m})の最大回数を制限することで、無駄な長さのマッチングを防ぐことができます。たとえば、{0,100}のように回数の上限を設定することができます。
バックトラッキングの最大制限を設定する: バックトラッキングは正規表現エンジンの動作の一部であり、無限ループを引き起こす可能性があります。エンジンのバックトラッキングの最大制限を設定することで、深いネストや複雑なパターンでの攻撃を防止できます。
より効率的なパターンを使用する: パフォーマンスの改善を図るために、より効率的な正規表現パターンを構築することが重要です。無駄なキャプチャや不要なグループ化を避け、必要な場合には具体的な文字クラスを使用することが推奨されます。
ReDOS攻撃を完全に防御するためには、正規表現のパターンを慎重に構築する必要があります。以下にいくつかの一般的な対策を示します。
正規表現の最大実行時間を制限する: 正規表現エンジンには、パターンの実行時間を制限する機能がある場合があります。この制限を設定することで、長時間の実行を防止できます。エンジンのドキュメントを確認し、適切な制限を設定してください。
繰り返し量指定子の最大回数を制限する: 特定の繰り返し量指定子(例: *, +, {n,m})の最大回数を制限することで、無駄な長さのマッチングを防ぐことができます。たとえば、{0,100}のように回数の上限を設定することができます。
バックトラッキングの最大制限を設定する: バックトラッキングは正規表現エンジンの動作の一部であり、無限ループを引き起こす可能性があります。エンジンのバックトラッキングの最大制限を設定することで、深いネストや複雑なパターンでの攻撃を防止できます。
より効率的なパターンを使用する: パフォーマンスの改善を図るために、より効率的な正規表現パターンを構築することが重要です。無駄なキャプチャや不要なグループ化を避け、必要な場合には具体的な文字クラスを使用することが推奨されます。
676nobodyさん
2023/05/18(木) 17:23:32.11ID:???677nobodyさん
2023/05/18(木) 17:37:24.34ID:???678nobodyさん
2023/05/18(木) 17:54:44.77ID:??? ChatGPTの回答の責任をお前は取れるのか?って詰められてChatGPTに謝らせるの草
679nobodyさん
2023/05/18(木) 18:28:01.30ID:??? こんなやつだらけになるんだろうな
こわ
こわ
682nobodyさん
2023/05/18(木) 19:07:02.77ID:??? >>681
私はAIであり、一般的な情報や指摘に対してもできるだけ正確な情報を提供するように設計されています。ただし、私の応答は事前に学習したデータに基づいて生成されるため、情報の正確性や最新性については保証できません。したがって、重要な情報や意思決定に関わる場合は、信頼性の高いソースや専門家の意見を参考にすることをお勧めします。AIはツールとして利用されるべきであり、人間の判断や確認が重要です。
私はAIであり、一般的な情報や指摘に対してもできるだけ正確な情報を提供するように設計されています。ただし、私の応答は事前に学習したデータに基づいて生成されるため、情報の正確性や最新性については保証できません。したがって、重要な情報や意思決定に関わる場合は、信頼性の高いソースや専門家の意見を参考にすることをお勧めします。AIはツールとして利用されるべきであり、人間の判断や確認が重要です。
683nobodyさん
2023/05/19(金) 00:14:44.14ID:??? $str_message = "aaa<br>bbb";
$str_message = str_replace("<", "<", $str_message);
$str_message = str_replace(">", ">", $str_message);
このコードを実行すると
aaa<br>bbb
これにならず
aaa<br>bbb
のままです。どこがおかしいでしょうか?
画面で入力された内容をHTMLメールで送信するにあたり
文章中にHTMLタグが手動で意図的に入力されていた場合
その文字列をそのままメールに載せたいです。
$str_message = str_replace("<", "<", $str_message);
$str_message = str_replace(">", ">", $str_message);
このコードを実行すると
aaa<br>bbb
これにならず
aaa<br>bbb
のままです。どこがおかしいでしょうか?
画面で入力された内容をHTMLメールで送信するにあたり
文章中にHTMLタグが手動で意図的に入力されていた場合
その文字列をそのままメールに載せたいです。
684nobodyさん
2023/05/19(金) 01:05:31.64ID:??? 酔ってんのか?
685nobodyさん
2023/05/19(金) 01:21:11.17ID:??? 申し訳ありません。もし誤解を招くような回答がありましたら、お詫び申し上げます。どのような具体的な質問やお悩みがありますか?お手伝いできることがあればお教えください。
686nobodyさん
2023/05/19(金) 13:55:17.60ID:zUv7Yk7o687nobodyさん
2023/05/19(金) 16:06:38.17ID:??? リアルに酔ってた
688nobodyさん
2023/05/19(金) 17:44:13.24ID:??? 何が違うのかよくわからない
全角半角?
全角半角?
689nobodyさん
2023/05/19(金) 17:48:01.11ID:???690nobodyさん
2023/05/19(金) 18:09:14.64ID:??? お酒を飲んでプログラミングははかどりますか?
ChatGPT
お酒を飲んでプログラミングをすることは、個人の好みや体験によって異なる結果が出る可能性があります。しかし、一般的にはお酒を飲んでプログラミングをすることはお勧めできません。
以下に理由を挙げます:
集中力の低下:お酒を飲むと、集中力や判断力が低下することがあります。プログラミングは論理的思考と注意力が必要な作業であり、集中力が低下するとエラーやミスが生じる可能性が高まります。
判断力の低下:プログラミングでは、問題を解決するために適切な判断を下す必要があります。お酒を飲むと、判断力が鈍る可能性があります。プログラミングにおいては、効果的なコードやアルゴリズムを設計するための正確な判断が求められます。
バグの増加:お酒を飲んでいると、ミスやバグが増える可能性があります。プログラムのバグは見つけにくく修正も難しくなります。お酒によって、バグの発見や修正にかかる時間が増える可能性があります。
コード品質の低下:酩酊状態でコーディングすると、品質の低いコードが書かれる可能性があります。読みにくいコードや悪い設計のコードは、他の開発者が理解しにくくなり、保守性や拡張性の問題を引き起こす可能性があります。
プログラミングにおいては、クリアな思考と集中力が求められます。そのため、お酒を飲んでプログラミングをすることは推奨されません。プログラミング作業を行う際は、適度な休憩やリラックス方法を取り入れることが重要です。
ChatGPT
お酒を飲んでプログラミングをすることは、個人の好みや体験によって異なる結果が出る可能性があります。しかし、一般的にはお酒を飲んでプログラミングをすることはお勧めできません。
以下に理由を挙げます:
集中力の低下:お酒を飲むと、集中力や判断力が低下することがあります。プログラミングは論理的思考と注意力が必要な作業であり、集中力が低下するとエラーやミスが生じる可能性が高まります。
判断力の低下:プログラミングでは、問題を解決するために適切な判断を下す必要があります。お酒を飲むと、判断力が鈍る可能性があります。プログラミングにおいては、効果的なコードやアルゴリズムを設計するための正確な判断が求められます。
バグの増加:お酒を飲んでいると、ミスやバグが増える可能性があります。プログラムのバグは見つけにくく修正も難しくなります。お酒によって、バグの発見や修正にかかる時間が増える可能性があります。
コード品質の低下:酩酊状態でコーディングすると、品質の低いコードが書かれる可能性があります。読みにくいコードや悪い設計のコードは、他の開発者が理解しにくくなり、保守性や拡張性の問題を引き起こす可能性があります。
プログラミングにおいては、クリアな思考と集中力が求められます。そのため、お酒を飲んでプログラミングをすることは推奨されません。プログラミング作業を行う際は、適度な休憩やリラックス方法を取り入れることが重要です。
691nobodyさん
2023/05/19(金) 18:56:21.13ID:??? せめてLaravelに多少は絡めろw
692nobodyさん
2023/05/19(金) 19:57:35.32ID:??? 申し訳ありませんが、WinSCPとLaravelは異なるツールやフレームワークですので、直接的な絡み合いはありません。WinSCPはSFTP/FTP/SCPクライアントであり、LaravelはPHPベースのウェブアプリケーションフレームワークです。
ただし、Laravelを使用してウェブアプリケーションを構築している場合に、ファイルの所有者情報を表示する必要がある場合は、サーバ側のコマンドやPHP関数を利用することになります。
例えば、Laravelのコントローラやビューでファイルの所有者情報を表示したい場合、PHPの fileowner() 関数や stat() 関数を使用することができます。これらの関数を使ってファイルの詳細情報を取得し、所有者情報を抽出して表示することができます。
ただし、Laravelを使用してウェブアプリケーションを構築している場合に、ファイルの所有者情報を表示する必要がある場合は、サーバ側のコマンドやPHP関数を利用することになります。
例えば、Laravelのコントローラやビューでファイルの所有者情報を表示したい場合、PHPの fileowner() 関数や stat() 関数を使用することができます。これらの関数を使ってファイルの詳細情報を取得し、所有者情報を抽出して表示することができます。
693nobodyさん
2023/05/19(金) 21:44:55.66ID:??? 単純な質問なら正解導くけど、
「○○のサイト教えて」とか聞いても嘘ばかりだぞ
「○○のサイト教えて」とか聞いても嘘ばかりだぞ
695nobodyさん
2023/05/21(日) 22:17:47.20ID:??? 素朴な疑問だけど、なんでLaravelのcreated_atとupdated_atってtimestampなの?
datetimeじゃない理由はあるの?
datetimeじゃない理由はあるの?
696nobodyさん
2023/05/22(月) 01:07:43.34ID:i+WvJfLa 大半の人がtimestampで困ることがないからでは?
697nobodyさん
2023/05/22(月) 13:28:31.57ID:??? datetimeなら困るの?
698nobodyさん
2023/05/22(月) 13:56:56.69ID:??? timestamp「が」、MySQLの2038年問題で困る
699nobodyさん
2023/05/22(月) 16:03:34.69ID:??? そいやそんなことあったな
基本datetimeで統一してるわ
timestampだとDB側でタイムゾーンとか決め打ちできるのがいいんだっけ(内部的には数値だったかなんだかで)
Laravelの意味的にはtimestampだからな、timestamps
そこらへん意味とかに厳しい人が決めてるんやろ
ゆうてMySQLが仕様変更しない限り、そのうちLaravelが変更するかもな
基本datetimeで統一してるわ
timestampだとDB側でタイムゾーンとか決め打ちできるのがいいんだっけ(内部的には数値だったかなんだかで)
Laravelの意味的にはtimestampだからな、timestamps
そこらへん意味とかに厳しい人が決めてるんやろ
ゆうてMySQLが仕様変更しない限り、そのうちLaravelが変更するかもな
700nobodyさん
2023/05/22(月) 19:19:51.08ID:??? そう、タイムゾーンの問題があるから地球上のある時刻を保存したいときはtimestampを使うべき
datetimeだとそれがどのタイムゾーンの日時なのか気を付けなきゃならないからな
datetimeだとそれがどのタイムゾーンの日時なのか気を付けなきゃならないからな
701nobodyさん
2023/05/22(月) 19:50:49.45ID:??? じゃ、有効期限のように年月日しか入れない場合もtimestampを使うべき?
702nobodyさん
2023/05/22(月) 20:38:33.25ID:??? 年月日しか入れないならdate
703nobodyさん
2023/05/22(月) 20:44:57.04ID:??? 冷静に考えれば設計って難しいよな
データ型ひとつとってもこれだけ意見が出るんだから
データ型ひとつとってもこれだけ意見が出るんだから
704nobodyさん
2023/05/22(月) 20:57:58.09ID:??? そんなあなたにChatGPT
706nobodyさん
2023/05/22(月) 22:06:40.50ID:i+WvJfLa 2038年でも別に困らんしな、timestamp
707nobodyさん
2023/05/22(月) 22:54:55.88ID:??? Laravelの中間テーブルって、リレーション先のID以外を含めないもん?
たとえば、usersテーブルとpostsテーブルがあって、
post_userという中間テーブルを用意する場合、
id、post_id、user_idというカラムを持ち、
created_atとかnameとか他のカラムは追加しないと
たとえば、usersテーブルとpostsテーブルがあって、
post_userという中間テーブルを用意する場合、
id、post_id、user_idというカラムを持ち、
created_atとかnameとか他のカラムは追加しないと
708nobodyさん
2023/05/23(火) 12:21:38.45ID:??? >>707
post_idとuser_idの組み合わせで一意になるならpost_idとuser_idで複合主キーにしたほうがよくないか?
post_idとuser_idの組み合わせで一意になるならpost_idとuser_idで複合主キーにしたほうがよくないか?
709nobodyさん
2023/05/23(火) 13:43:01.65ID:???710nobodyさん
2023/05/23(火) 14:02:39.05ID:3WNiYMo0 タイムゾーンとかサマータイムとか考えるとタイムスタンプみたいな絶対値の方が扱いやすいだろ
日本でもサマータイム導入されないとも限らない
datetimeで困るのはMySQLの2038年問題くらいしか思いつかんし、
それもおそらくどうにでもなるし
日本でもサマータイム導入されないとも限らない
datetimeで困るのはMySQLの2038年問題くらいしか思いつかんし、
それもおそらくどうにでもなるし
713nobodyさん
2023/05/23(火) 16:03:50.74ID:??? なんつーか、ロジカル思考って頭が良くないとできないんだなぁ
俺みたいな文系だと、柔軟な考え方ができない
俺みたいな文系だと、柔軟な考え方ができない
714nobodyさん
2023/05/23(火) 21:04:51.94ID:??? タイムゾーンやサマータイムのことを考えると
逆にdatetimeに丸投げしたくなる
逆にdatetimeに丸投げしたくなる
715nobodyさん
2023/05/23(火) 21:59:47.67ID:??? どっちがいいというよりも、ちゃんとどっちかに統一してればいいよ
716nobodyさん
2023/05/23(火) 22:48:59.42ID:??? cakeしか使った事が無いけど、Laravelってどうなの?
使い易い?
使い易い?
717nobodyさん
2023/05/23(火) 23:54:06.73ID:??? >>716
俺もCake2を使い続けてて、正直Laravelに懐疑心あったが
使い出すとこれほど自由度が高いFWもないと感じた
逆に自由度が高すぎるこそ、設計がちゃんとできないと
破滅的なコードになってしまうわけだが
俺もCake2を使い続けてて、正直Laravelに懐疑心あったが
使い出すとこれほど自由度が高いFWもないと感じた
逆に自由度が高すぎるこそ、設計がちゃんとできないと
破滅的なコードになってしまうわけだが
718nobodyさん
2023/05/23(火) 23:58:25.74ID:??? >>717
最近Laravel使ってるところが増えてきているみたいで
良いFWなのかな~と気になってます。
昔、kohanaとかいう糞マイナーなFWを使った事がありますが
マイナー過ぎてはまった時になかなか解決策が見つからず大変だったw
だからマイナーなFW案件は受けない様にしてます。
最近Laravel使ってるところが増えてきているみたいで
良いFWなのかな~と気になってます。
昔、kohanaとかいう糞マイナーなFWを使った事がありますが
マイナー過ぎてはまった時になかなか解決策が見つからず大変だったw
だからマイナーなFW案件は受けない様にしてます。
719nobodyさん
2023/05/24(水) 00:10:11.59ID:??? ただ1つ問題がある。過去レスを読んでほしいが、
デプロイ(インストールや設置)がCakeと比べて難しい点だ
難しいというのは技術的な点という意味ではなく、
クライアントの環境構築や運営管理という意味でだ
フリーに頼むようなクライアントは金も知識もないから、
Laravelに見合う環境を用意できない可能性がある
デプロイ(インストールや設置)がCakeと比べて難しい点だ
難しいというのは技術的な点という意味ではなく、
クライアントの環境構築や運営管理という意味でだ
フリーに頼むようなクライアントは金も知識もないから、
Laravelに見合う環境を用意できない可能性がある
722nobodyさん
2023/05/24(水) 10:10:13.67ID:??? FWを一本化して欲しい。
みんながそれ使えば、ハマった時にその解決策をすぐ調べられて便利なのに。
なんで次々FWを開発するのかな。
言語も同じ。オープン系はも統一して欲しいわ。
みんながそれ使えば、ハマった時にその解決策をすぐ調べられて便利なのに。
なんで次々FWを開発するのかな。
言語も同じ。オープン系はも統一して欲しいわ。
723nobodyさん
2023/05/24(水) 10:56:23.25ID:hQOJ1eem んなもん無理に決まってるだろうに
開発者それぞれの利害関係もあるし
開発者それぞれの利害関係もあるし
724nobodyさん
2023/05/24(水) 11:10:43.50ID:??? Laravelが停滞してないからそれで飯を食えていける
リスク分散するなら色んなことをすべきやなあ
完全に無駄なことなんてそうそうない
リスク分散するなら色んなことをすべきやなあ
完全に無駄なことなんてそうそうない
725nobodyさん
2023/05/24(水) 11:33:51.04ID:??? WEBはPHP+Cake、WindowsはC#
これで一本化すればOK
これで一本化すればOK
726nobodyさん
2023/05/24(水) 11:47:42.50ID:hQOJ1eem 少なくともPHP+Cakeで一本化はない
727nobodyさん
2023/05/24(水) 12:12:23.21ID:??? うむ。もうこうなってるよ
安く仕上げたい→WordPress
フルスクラッチ→Laravel
これ以外はRubyとかPythonになるだろうな
安く仕上げたい→WordPress
フルスクラッチ→Laravel
これ以外はRubyとかPythonになるだろうな
728nobodyさん
2023/05/24(水) 13:33:29.12ID:??? Python は文法がマジで気持ち悪い
730nobodyさん
2023/05/24(水) 16:06:33.91ID:??? むしろフロントエンドの技術が多すぎる
ReactにVueにNodeに他に色々あったはず
ReactにVueにNodeに他に色々あったはず
731nobodyさん
2023/05/24(水) 16:38:40.66ID:??? 言語は統一しろ
732nobodyさん
2023/05/24(水) 20:41:49.43ID:??? AWSにFirebaseにHomesteadとか、サーバ関係も色々ありすぎる
733nobodyさん
2023/05/24(水) 20:52:41.77ID:??? 全部統一すれば効率化できるのに。
734nobodyさん
2023/05/24(水) 21:57:55.19ID:??? dockerもymlを作るのが面倒すぎる
735nobodyさん
2023/05/24(水) 22:43:44.05ID:??? お前らフリーランスエンジニア?それとも社畜?
736nobodyさん
2023/05/24(水) 23:03:24.06ID:??? phperがエンジニアのわけがない
コーダーだよ
コーダーだよ
737nobodyさん
2023/05/25(木) 00:06:21.46ID:??? このサイトからBTC価格をスクレイピングしたいです。
https://jp.tradingview.com/symbols/BTCUSD/
require "simple_html_dom.php";
$url = "https://jp.tradingview.com/symbols/BTCUSD/";
$html = file_get_html($url);
$rateElement = $html->find(".lastContainer-JWoJqCpY",0);
$str_text = $rateElement->plaintext;
var_dump($str_text);
このコードを実行するとこの様になります。
なぜ取得できないのでしょうか?
string(4) " "
https://jp.tradingview.com/symbols/BTCUSD/
require "simple_html_dom.php";
$url = "https://jp.tradingview.com/symbols/BTCUSD/";
$html = file_get_html($url);
$rateElement = $html->find(".lastContainer-JWoJqCpY",0);
$str_text = $rateElement->plaintext;
var_dump($str_text);
このコードを実行するとこの様になります。
なぜ取得できないのでしょうか?
string(4) " "
738nobodyさん
2023/05/25(木) 01:45:30.56ID:??? サイト側がスクレイピングさせない嫌がらせしてた。
739nobodyさん
2023/05/25(木) 06:04:40.80ID:??? 赤信号の横断歩道に飛び出しといて「老害が車で突っ込んできた」とか言ってそうw
740nobodyさん
2023/05/25(木) 13:38:45.83ID:jkWh+mt3 スクレイピングなんてやめなよ
素直にAPI提供してるところ使え
素直にAPI提供してるところ使え
741nobodyさん
2023/05/25(木) 14:17:49.23ID:??? スクレイピングは犯罪です
743nobodyさん
2023/05/25(木) 14:29:07.40ID:??? スクレイピングの妨害をするサイトがあるなんて初めてだわ。
744nobodyさん
2023/05/25(木) 14:40:52.37ID:??? 初めてって知らないだけだろ。普通は外部から直アクセス出来ないように対策するもんだ
745nobodyさん
2023/05/25(木) 15:22:51.20ID:??? 特にそういうリアルタイムデータとかを表示するサイトは、常にスクレイピングの対象になるから
対策されてもおかしくないよね
広告収入減ったりアクセスカウントおかしくなったりするわけだし
対策されてもおかしくないよね
広告収入減ったりアクセスカウントおかしくなったりするわけだし
746nobodyさん
2023/05/25(木) 16:23:59.73ID:jkWh+mt3 むしろ妨害するのが普通だろ
スクレイピングなんてサイト運営者からすればただの害虫でしかない
スクレイピングなんてサイト運営者からすればただの害虫でしかない
747nobodyさん
2023/05/25(木) 16:25:58.48ID:???748nobodyさん
2023/05/25(木) 17:12:46.80ID:??? Yahoo!の経済指標カレンダー週一でスクレイピングしてたら
大幅仕様変更されて使い物にならなくなったの地味に恨んでる。
大幅仕様変更されて使い物にならなくなったの地味に恨んでる。
749nobodyさん
2023/05/25(木) 17:26:38.94ID:??? そんなやつにいちいち配慮してたらでサイン変更もサイトリニューアルもできない
APIの仕様をいきなり変えられたら恨むのも分からんでもないが、
スクレイピングの方してて恨むのはさすがにない
盗っ人猛々しいって感じ
APIの仕様をいきなり変えられたら恨むのも分からんでもないが、
スクレイピングの方してて恨むのはさすがにない
盗っ人猛々しいって感じ
750nobodyさん
2023/05/25(木) 17:40:18.83ID:???751nobodyさん
2023/05/25(木) 18:26:25.90ID:??? いや、少しは相手のことも考えろやw
まがりなりにもここはLaravelスレだろ
ほんと自分勝手なやつだな
まがりなりにもここはLaravelスレだろ
ほんと自分勝手なやつだな
752nobodyさん
2023/05/25(木) 18:35:37.61ID:??? お里が知れる書き込みですことw
753nobodyさん
2023/05/25(木) 18:56:39.65ID:??? Laravelでスクレイピングしちゃだめなの?
754nobodyさん
2023/05/25(木) 20:37:16.69ID:??? スクレイピングされる方の身にもなれ
ボランティアでもないんだ。広告とかも見ずデータだけ抜くやつは弾きたいやろ
負荷がまだ少ないサイトならまだしも、でかいサイトはコストもあるからそこそこ綱渡りしてるからな
有料ユーザーがいるならそれらの敵でもある
ボランティアでもないんだ。広告とかも見ずデータだけ抜くやつは弾きたいやろ
負荷がまだ少ないサイトならまだしも、でかいサイトはコストもあるからそこそこ綱渡りしてるからな
有料ユーザーがいるならそれらの敵でもある
755nobodyさん
2023/05/25(木) 20:57:44.46ID:??? てか、スクレイピングは逮捕案件だぞ、マジで。
図書館のデータをスクレイピングした人が捕まってたろ
図書館のデータをスクレイピングした人が捕まってたろ
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 文春報道否定のMatt 告発者について「みなさんびっくりしますよ。この人たち全員私よりも体の大きい男性です」医師2人、ホスト1人と主張 [Ailuropoda melanoleuca★]
- 第三次世界大戦?AI攻撃で社会麻痺?11/2に政府が全国民に最低3日分の備蓄を緊急要請★2 [♪♪♪★]
- 【ジュンク堂】「時給1280円・週5勤務」のアルバイト求人「奴隷並み待遇・やりがい搾取」 手取り約16万円では書店員なのに本を買えない [ぐれ★]
- 新給付、年収119万円以下は年5千円案 ★2 [首都圏の虎★]
- スズキ、ホンダ・日産抜き2番手に 26年度上半期の自動車世界販売 [首都圏の虎★]
- 【野球】バウアーが忖度なしの本音「日本野球は面白くない」 味気なさも…驚いた能力「卓越している」 [冬月記者★]
- ダブパン周年祭まであと3日👊😅👊🏡
- 日本人「たった2000億円で米国が味方についてくれるなんて安すぎる」 [834922174]
- 【高市速報】グッドスマイルカンパニーの流出、過去一ダントツでヤバい [527893826]
- 高市「電気・ガス代支援を再開するわよ!!」 灯油代わ!? [273194536]
- 高市総理、ガソリンなど毎月5円ずつ値上げすると表明 [256556981]
- 【高市悲報】専門家「GMOのハッカーのサイトを分析したら“罠”が仕掛けられていた。アクセスした人の情報も漏れたかも」 [931948549]