!extend::vvvvv:1000:512
!extend::vvvvv:1000:512
★スレ立て時 ↑ が3行以上になるようコピペ
PHPに関する質問スレです
前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 13
https://mevius.5ch.net/test/read.cgi/tech/1631147923/
次スレは>>980以降
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
【PHP】下らねぇ質問はここに書き込みやがれ 14
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 0f97-W3aP)
2022/09/20(火) 16:46:23.39ID:Sb2Kpzh+0444デフォルトの名無しさん (ワッチョイ 4f61-BvVY)
2023/02/07(火) 18:51:13.17ID:SlNXBAXu0 サポ切れバージョンがいつまで提供されるかなんて鯖屋さん次第だし
今から古いのをわざわざ使うのはあまりお勧めしない
今から古いのをわざわざ使うのはあまりお勧めしない
445デフォルトの名無しさん (ワッチョイ 3fad-ISlp)
2023/02/07(火) 20:54:28.61ID:QImcmWPd0 PHPMyAdminにアクセスすると画像のようにフォルダが表示されるだけになってしまうのですが、
何が考えられますでしょうか。
localhost/phpinfo.phpは表示されるので、PHPの設定はできているのではないかと思うのですが・・・。
https://i.imgur.com/0X3XoLU.png
よろしくお願いいたします。
何が考えられますでしょうか。
localhost/phpinfo.phpは表示されるので、PHPの設定はできているのではないかと思うのですが・・・。
https://i.imgur.com/0X3XoLU.png
よろしくお願いいたします。
446デフォルトの名無しさん (ワッチョイ 7f63-4osW)
2023/02/07(火) 21:01:51.10ID:oBLl+Yrl0 DirectoryIndex
447デフォルトの名無しさん (ワッチョイ 4f5f-d2tl)
2023/02/08(水) 00:33:01.13ID:SpIBc7Av0448デフォルトの名無しさん (オッペケ Sr63-BbrQ)
2023/02/08(水) 05:27:41.07ID:IePtKEIOr 20年くらい前にみたことある
449デフォルトの名無しさん (ワッチョイ 3f8b-4osW)
2023/02/09(木) 13:29:04.27ID:Ij8K/FB60 $str = "https://www.youtube.com/watch?v=fNapOJYpz18";
preg_match('/v=(\w+)', $str, $match);
var_dump($match);
Youtubeの「fNapOJYpz18」を抽出したいのですが
正規表現の書き方どこが間違っているのでしょうか?
preg_match('/v=(\w+)', $str, $match);
var_dump($match);
Youtubeの「fNapOJYpz18」を抽出したいのですが
正規表現の書き方どこが間違っているのでしょうか?
450デフォルトの名無しさん (ワッチョイ 4f61-BvVY)
2023/02/09(木) 13:32:17.64ID:8spDrzND0 >>449
'/v=(\w+)/'
'/v=(\w+)/'
451デフォルトの名無しさん (ワッチョイ 7fbb-p19T)
2023/02/09(木) 13:38:54.85ID:aelylg1C0 正規表現なんて使わないのが正解
452デフォルトの名無しさん (ワッチョイ 3f8b-4osW)
2023/02/09(木) 14:02:08.03ID:Ij8K/FB60453デフォルトの名無しさん (ワッチョイ 3f8b-4osW)
2023/02/09(木) 14:06:15.26ID:Ij8K/FB60 / / で囲むのはルールみたいですね^^
454デフォルトの名無しさん (ワッチョイ 3fa7-S9vL)
2023/02/09(木) 23:44:53.39ID:n57XqqLF0455デフォルトの名無しさん (ワッチョイ 3f8b-4osW)
2023/02/10(金) 01:18:19.20ID:FzQIxJJi0456デフォルトの名無しさん (ワッチョイ 3f8b-4osW)
2023/02/10(金) 10:25:38.51ID:FzQIxJJi0 正規表現面白いな。
これマスターしたらゴリ押しのコーディングで文字列処理する必要なくなるじゃん
これマスターしたらゴリ押しのコーディングで文字列処理する必要なくなるじゃん
457デフォルトの名無しさん (ワッチョイ 3f7c-4osW)
2023/02/10(金) 14:34:17.06ID:ZVb4m7DN0 だからと言ってなんでもかんでも使うのは良くないけどな
10,20,30みたいな数字とカンマ区切りが確定しているようなものには使わんし
10,20,30みたいな数字とカンマ区切りが確定しているようなものには使わんし
458デフォルトの名無しさん (ワッチョイ 7f63-4osW)
2023/02/10(金) 15:05:12.91ID:ECKlR5jZ0 好きなやり方でやれば良いよ
望む通りになれば良いんだし
望む通りになれば良いんだし
459デフォルトの名無しさん (ワッチョイ ffe7-4osW)
2023/02/10(金) 15:50:26.87ID:ue64guLk0 第一候補にしなければ良いよ
「この方法がうまくいかなくても まー正規表現でなんとかなんだろ」
的なプランBとして考えとくと良いね
「この方法がうまくいかなくても まー正規表現でなんとかなんだろ」
的なプランBとして考えとくと良いね
460デフォルトの名無しさん (ワッチョイ 8a02-AGaU)
2023/02/11(土) 17:48:19.67ID:uHiybqGX0 ふと疑問におもったのですが、
PHPがWEBページを生成する過程で生まれた、普通の変数や配列もろもろのオブジェクトは
生成が完了したら自動的に削除されるものですか?
たとえば、ブラウザがそのPHPが生成したページから遷移したとしても、
それらのオブジェクトが残っていても役に経たないですよね。
一方で、セッション管理のためのセッション変数っていうものは、サーバーの中で消えてなくならないオブジェクト
という理解であってますでしょうか?
PHPがWEBページを生成する過程で生まれた、普通の変数や配列もろもろのオブジェクトは
生成が完了したら自動的に削除されるものですか?
たとえば、ブラウザがそのPHPが生成したページから遷移したとしても、
それらのオブジェクトが残っていても役に経たないですよね。
一方で、セッション管理のためのセッション変数っていうものは、サーバーの中で消えてなくならないオブジェクト
という理解であってますでしょうか?
461デフォルトの名無しさん (ワッチョイ 9ebb-sQVB)
2023/02/11(土) 18:05:39.49ID:hVG8U9QK0 全部消えます
セッションは外部に(標準ではファイル)に吐き出されています
セッションは外部に(標準ではファイル)に吐き出されています
462デフォルトの名無しさん (ワッチョイ 8a02-AGaU)
2023/02/11(土) 19:00:55.67ID:uHiybqGX0 ありがとうございます。
セッション変数、$_SESSION[]も実体が削除されファイルに吐き出されるということは、
session_start()の実行ごとに、ファイルの情報をもとに消えた$_SESSION[]がインスタンス化?
されるということでしょうか?
セッション変数、$_SESSION[]も実体が削除されファイルに吐き出されるということは、
session_start()の実行ごとに、ファイルの情報をもとに消えた$_SESSION[]がインスタンス化?
されるということでしょうか?
463デフォルトの名無しさん (ワッチョイ 9ebb-sQVB)
2023/02/11(土) 19:08:46.97ID:hVG8U9QK0 マニュアルのセッション関連の項を読んだ上で実際のファイルを覗いてみるといい
https://www.php.net/manual/ja/refs.basic.session.php
/tmp配下に吐き出されるはずだけど、session.save_path で変更して観察しやすくするのが良いかも
フレームワークを使用しだすと状況はまた変わるので注意が必要
https://www.php.net/manual/ja/refs.basic.session.php
/tmp配下に吐き出されるはずだけど、session.save_path で変更して観察しやすくするのが良いかも
フレームワークを使用しだすと状況はまた変わるので注意が必要
464デフォルトの名無しさん (ワッチョイ 8a02-AGaU)
2023/02/11(土) 19:23:05.41ID:uHiybqGX0 ありがとうございます。参考になります。
465デフォルトの名無しさん (ワッチョイ 9ebb-sQVB)
2023/02/11(土) 19:25:48.80ID:hVG8U9QK0 シリアライズ方法が通常のインスタンスと違うからちょっと注意
https://www.php.net/manual/ja/function.session-encode.php
https://www.php.net/manual/ja/function.session-encode.php
466デフォルトの名無しさん (ワッチョイ 8a02-AGaU)
2023/02/11(土) 20:06:17.69ID:uHiybqGX0 む。
お話変わりますが。
実行後に全て消えるということは、
$pdo = new PDO($dsn, $username, $password, $driver_options);
のハンドラ$pdoも削除されますね。
$pdo = null;
も不要ですか?
お話変わりますが。
実行後に全て消えるということは、
$pdo = new PDO($dsn, $username, $password, $driver_options);
のハンドラ$pdoも削除されますね。
$pdo = null;
も不要ですか?
467デフォルトの名無しさん (ワッチョイ 465f-8lmq)
2023/02/11(土) 22:26:33.03ID:v8sAV+Uv0468デフォルトの名無しさん (ワッチョイ 9f5c-D0vN)
2023/02/11(土) 22:59:28.99ID:VU40DDuL0469デフォルトの名無しさん (ワッチョイ 2bf0-D0vN)
2023/02/12(日) 00:20:56.68ID:kdLrjrT/0 >>467
知ったかぶりする悪癖は治そうなw
知ったかぶりする悪癖は治そうなw
470デフォルトの名無しさん (ワッチョイ 835f-zGNv)
2023/02/12(日) 01:29:41.79ID:Jy8zTObO0 たまにClose cursorしないといけない時があるよね
471デフォルトの名無しさん (ワッチョイ 1e95-8lmq)
2023/02/12(日) 10:52:00.85ID:d/88ECv40 HTTPはステートレス
472デフォルトの名無しさん (アウアウウー Sa4f-vQqS)
2023/02/12(日) 13:40:33.70ID:2oU17ty6a >>449
Ruby では、URL を扱うモジュールがあるので、正規表現などは使わない
require 'uri'
url = "そのyoutube のURL"
p ary = URI.split( url )
#=> ["https", nil, "www.youtube.com", nil, nil, "/watch", nil, "v=fNapOJYpz18", nil]
uri = URI( url )
p uri.query #=> "v=fNapOJYpz18"
含む項目
scheme
userinfo
host
port
registry
path
opaque
query
fragment
Ruby では、URL を扱うモジュールがあるので、正規表現などは使わない
require 'uri'
url = "そのyoutube のURL"
p ary = URI.split( url )
#=> ["https", nil, "www.youtube.com", nil, nil, "/watch", nil, "v=fNapOJYpz18", nil]
uri = URI( url )
p uri.query #=> "v=fNapOJYpz18"
含む項目
scheme
userinfo
host
port
registry
path
opaque
query
fragment
474デフォルトの名無しさん (ワッチョイ ea8b-D0vN)
2023/02/12(日) 17:51:22.67ID:disuH4ke0 aタグのクリックで指定フォームのpostをしようとしています。
以下コードを記述したところどうやら文字列の「-」がJavaScriptにて
認識されていない様です。
「-」はJSで認識されないのでしょうか?
もしくは私の書き方がどこか間違っていますか?
<コード>
<a href="javascript:name_form_delete_kNjQxl-K7.submit()">Remove</a>
<form class="" name="name_form_delete_kNjQxl-K7" method="post" action="addhoge.php">
<input type="hidden" name="name_t1" value="1">
<input type="hidden" name="name_t2" value="2">
</form>
<エラー>
Uncaught ReferenceError: name_form_delete_kNjQxl is not defined
以下コードを記述したところどうやら文字列の「-」がJavaScriptにて
認識されていない様です。
「-」はJSで認識されないのでしょうか?
もしくは私の書き方がどこか間違っていますか?
<コード>
<a href="javascript:name_form_delete_kNjQxl-K7.submit()">Remove</a>
<form class="" name="name_form_delete_kNjQxl-K7" method="post" action="addhoge.php">
<input type="hidden" name="name_t1" value="1">
<input type="hidden" name="name_t2" value="2">
</form>
<エラー>
Uncaught ReferenceError: name_form_delete_kNjQxl is not defined
475デフォルトの名無しさん (ワッチョイ 835f-zGNv)
2023/02/12(日) 18:08:34.40ID:Jy8zTObO0 kNjQxl-K7がなんかで生成してる文字列なら変数に入れてテンプレートリテラル使うとか
476デフォルトの名無しさん (ワッチョイ d301-sPc2)
2023/02/12(日) 18:23:53.22ID:19IYgGC60477デフォルトの名無しさん (ワッチョイ 2361-mcE4)
2023/02/12(日) 18:29:58.02ID:n7060JSN0 >>474
document.forms['name_form_delete_kNjQxl-K7'].submit()
idやnameがwindowインターフェイスに自動生成されるショートハンドは元からある名前と被った時に困るから使わない方がいいよ
document.forms['name_form_delete_kNjQxl-K7'].submit()
idやnameがwindowインターフェイスに自動生成されるショートハンドは元からある名前と被った時に困るから使わない方がいいよ
478デフォルトの名無しさん (ワッチョイ ca7c-D0vN)
2023/02/12(日) 20:31:31.32ID:bFc1YPr30 aタグでもonclickで書けば良くね?
Vueで書くときはhrefすら書いてないわ
Vueで書くときはhrefすら書いてないわ
479デフォルトの名無しさん (ワッチョイ 8a02-AGaU)
2023/02/12(日) 21:35:07.83ID:fJXtAG7P0 これはフロントエンドの話ですか。。
<a>タグのhref属性は、リンク先を記述するのであって
イベントのターゲットを記述するのではないです。
javaScriptでイベント駆動を記述するのであれば、
addEventListener()で、イベントオブジェクトを利用するのが
一般です。
JavaScriptスレに訊いた方が良い回答があると思います。
<a>タグのhref属性は、リンク先を記述するのであって
イベントのターゲットを記述するのではないです。
javaScriptでイベント駆動を記述するのであれば、
addEventListener()で、イベントオブジェクトを利用するのが
一般です。
JavaScriptスレに訊いた方が良い回答があると思います。
480デフォルトの名無しさん (ワッチョイ ea8b-D0vN)
2023/02/12(日) 22:36:32.24ID:disuH4ke0481デフォルトの名無しさん (ワッチョイ 465f-D0vN)
2023/02/13(月) 15:51:52.79ID:PTUH+xs80 unko() or die("chinko");
という書き方はよくあると思いますが、die()の代わりにreturnを使いたいです。
でもreturnは使えません!
そこで、returnの代わりになる関数ってなんかないですか?
という書き方はよくあると思いますが、die()の代わりにreturnを使いたいです。
でもreturnは使えません!
そこで、returnの代わりになる関数ってなんかないですか?
482デフォルトの名無しさん (ワッチョイ eaa7-lJcr)
2023/02/13(月) 16:14:41.21ID:SJQ1XhAi0 ない
483デフォルトの名無しさん (スッップ Sdaa-gsgJ)
2023/02/13(月) 16:36:48.27ID:3Y+V2LMTd throwでも使っとけ
というかいまどきor dieなんて使ってるソースはクソゴミだから脱出を検討しろ
というかいまどきor dieなんて使ってるソースはクソゴミだから脱出を検討しろ
484デフォルトの名無しさん (ワッチョイ ea8b-D0vN)
2023/02/13(月) 23:44:40.57ID:UX0KmCtq0 Eclipse⇒VS Codeに乗り換え中
使い辛いなー
使い辛いなー
485デフォルトの名無しさん (ワッチョイ ca7c-D0vN)
2023/02/13(月) 23:48:06.11ID:v/vixYv70 それならnetbeansにしてみたら?
俺はPHPはnetbeansでやってる
俺はPHPはnetbeansでやってる
486デフォルトの名無しさん (ワッチョイ ea8b-D0vN)
2023/02/14(火) 00:22:03.18ID:F+rfJu9X0487デフォルトの名無しさん (ワッチョイ 465f-D0vN)
2023/02/14(火) 01:56:02.60ID:DAv1op2d0 PhpStormが一番良いと思います
488デフォルトの名無しさん (ワッチョイ ea8b-D0vN)
2023/02/14(火) 03:06:09.76ID:F+rfJu9X0 VS codeでサーバに接続しようとしています。
すると「リモートを開いています」のまま
フリーズします。
VS Codeに設定したユーザ名、パスワードは正しいです。
WinSCPからだと同じ情報で接続できます。
何の設定が間違っているのでしょうか?
すると「リモートを開いています」のまま
フリーズします。
VS Codeに設定したユーザ名、パスワードは正しいです。
WinSCPからだと同じ情報で接続できます。
何の設定が間違っているのでしょうか?
489デフォルトの名無しさん (ワッチョイ 9ebb-sQVB)
2023/02/14(火) 04:09:47.12ID:+hscb0Qf0 そうでしょうね
490デフォルトの名無しさん (ワッチョイ ea8b-D0vN)
2023/02/14(火) 12:02:50.23ID:F+rfJu9X0 VS CodeでRmote Developmentをインストールし
接続情報を設定しました。
そして、パスワードを入力しEnterを押したところ
「リモートを開いています...」と画面左下に表示されています。
しかし、
エクスプローラー
開いているフォルダーがありません
リモートに接続しました。
フォルダーを開く
という表示です。リモート接続は出来ている様なのですがサーバ上の
ファイル一覧が表示されません。。。
共有サーバだと出来ないのでしょうか?
接続情報を設定しました。
そして、パスワードを入力しEnterを押したところ
「リモートを開いています...」と画面左下に表示されています。
しかし、
エクスプローラー
開いているフォルダーがありません
リモートに接続しました。
フォルダーを開く
という表示です。リモート接続は出来ている様なのですがサーバ上の
ファイル一覧が表示されません。。。
共有サーバだと出来ないのでしょうか?
491デフォルトの名無しさん (ワッチョイ ea8b-D0vN)
2023/02/14(火) 13:43:42.54ID:F+rfJu9X0 Eclipseの方がよっぽど使い易いじゃねーかよ。
VS Code進めてたヤツはアホか?
VS Code進めてたヤツはアホか?
492デフォルトの名無しさん (スップ Sd4a-zGNv)
2023/02/14(火) 18:19:18.79ID:9fQYo556d なれの問題を人のせいにするのは愚かだよ
493デフォルトの名無しさん (ワッチョイ ea8b-D0vN)
2023/02/14(火) 18:59:35.83ID:F+rfJu9X0 VS Codeで出来る事ほぼすべてEclipseで使えるじゃねーか。
いちいち拡張機能を入れてF1⇒実行
糞面倒臭い。
いちいち拡張機能を入れてF1⇒実行
糞面倒臭い。
494デフォルトの名無しさん (ワッチョイ 9bac-4RKc)
2023/02/14(火) 19:23:03.28ID:JNIzMgrA0 EclipseってVScodeより軽いの?
495デフォルトの名無しさん (ワッチョイ ea8b-D0vN)
2023/02/15(水) 10:31:40.86ID:WfU34a1O0 軽い
496デフォルトの名無しさん (ワッチョイ 477c-7Kef)
2023/02/15(水) 15:54:51.90ID:ficf9YEj0 pycharm
vscodeより、かるい
vscodeより、かるい
497デフォルトの名無しさん (ワッチョイ 1ef8-RZO9)
2023/02/15(水) 19:54:45.75ID:4xfiC8CV0 vscodeよりさらに
本家?visualstudioなんてマゾいし、
vscodeとvsで全然ショートカットも違うから笑えてくる
本家?visualstudioなんてマゾいし、
vscodeとvsで全然ショートカットも違うから笑えてくる
498デフォルトの名無しさん (ワッチョイ 477c-7Kef)
2023/02/15(水) 22:24:26.83ID:ficf9YEj0 php
javascript,css,html,データベース
いろいろ、絡んでくるから、初心者には、ほんと難しいとおもう
webプログラミング、がね
javascript,css,html,データベース
いろいろ、絡んでくるから、初心者には、ほんと難しいとおもう
webプログラミング、がね
499デフォルトの名無しさん (ワッチョイ 8a02-AGaU)
2023/02/16(木) 13:41:24.91ID:U29SVQBb0 phpMyAdminで使える、定数のCURRENT_DATE
をbindValue()を通して送りたい野だけど失敗します。
データベースの定数をクエリ文に埋め込みPHPで送信することは難しいでしょうか?
-----------
$name ="cola";
$update_date = CURRENT_DATE;
$insert =
"INSERT INTO
item(name,update_date)
VALUES
(:name,:update_date);";
}
$statement = $db->prepare($insert);
$statement->bindValue(':name', $name);
$statement->bindValue(':update_date', $update_date, PDO::PARAM_STR_NATL);
うまくいかない!!
---------
↓理想の変形
INSERT INTO
item(name,update_date)
VALUES
("cola",CURRENT_DATE);
をbindValue()を通して送りたい野だけど失敗します。
データベースの定数をクエリ文に埋め込みPHPで送信することは難しいでしょうか?
-----------
$name ="cola";
$update_date = CURRENT_DATE;
$insert =
"INSERT INTO
item(name,update_date)
VALUES
(:name,:update_date);";
}
$statement = $db->prepare($insert);
$statement->bindValue(':name', $name);
$statement->bindValue(':update_date', $update_date, PDO::PARAM_STR_NATL);
うまくいかない!!
---------
↓理想の変形
INSERT INTO
item(name,update_date)
VALUES
("cola",CURRENT_DATE);
500デフォルトの名無しさん (ワッチョイ 2361-mcE4)
2023/02/16(木) 14:34:50.94ID:wXxzWMIn0 >>499
CURRENT_DATEはphp側ではなくsql側の日付関数なのでbindできない
INSERT INTO item(name,update_date) VALUES(:name,CURRENT_DATE);
CURRENT_DATEはphp側ではなくsql側の日付関数なのでbindできない
INSERT INTO item(name,update_date) VALUES(:name,CURRENT_DATE);
501デフォルトの名無しさん (ワッチョイ ea8b-D0vN)
2023/02/16(木) 16:20:52.89ID:ZhDpu7bI0 IDEはEclipseで十分
502デフォルトの名無しさん (ワッチョイ 8a02-AGaU)
2023/02/16(木) 17:17:33.60ID:U29SVQBb0 >>500
ありがとうございます。
ありがとうございます。
503デフォルトの名無しさん (ワッチョイ 23a7-R6kM)
2023/02/17(金) 00:53:37.37ID:VY6wNZlY0 PHPのシンタックスハイライトぐらいしか出来ないエディタで
5MBほどの社内用プログラムをかきあげたことがあるぞ(゚A゚;)
5MBほどの社内用プログラムをかきあげたことがあるぞ(゚A゚;)
504デフォルトの名無しさん (ワッチョイ 9bac-4RKc)
2023/02/17(金) 01:00:09.42ID:O/H37gNs0 メモ帳野郎が湧くぞ
505デフォルトの名無しさん (ワッチョイ e38b-BTrK)
2023/02/18(土) 16:21:45.50ID:wTUF9m4P0 cd ~/.ssh
の ~ ってどういう意味なのでしょうか?
cd .ssh だと確かにこのディレクトリに入れません。決まり文句と覚えておけばよいでしょうか?
の ~ ってどういう意味なのでしょうか?
cd .ssh だと確かにこのディレクトリに入れません。決まり文句と覚えておけばよいでしょうか?
506デフォルトの名無しさん (ワッチョイ cbbb-u8a6)
2023/02/18(土) 17:00:32.72ID:zhx+QJQI0 >>505
スレチ
スレチ
507デフォルトの名無しさん (ワッチョイ 6ea6-fgbX)
2023/02/25(土) 19:20:55.02ID:L/ecqLAZ0 >>501
ホームディレクトリの略だよ
ホームディレクトリの略だよ
508デフォルトの名無しさん (アウアウウー Sa39-bTTE)
2023/02/26(日) 23:08:14.21ID:yz/O0wFra requireとextendsはどう違うの?
requireはclassだけ呼ぶのかと思ったらプロパティも呼ぶし混乱する
この2つ重なってない?
requireはclassだけ呼ぶのかと思ったらプロパティも呼ぶし混乱する
この2つ重なってない?
509デフォルトの名無しさん (ワッチョイ ae5f-W5vA)
2023/02/27(月) 00:20:33.97ID:sow/rINj0 includeとrequireを混同するのは微笑ましいあるあるだけど
extendsは初めて見るパターンで困惑する
extendsは初めて見るパターンで困惑する
510デフォルトの名無しさん (アウアウウー Sa39-bTTE)
2023/02/27(月) 01:15:02.38ID:BPjGYXVma 無能なんだな俺
でも分かった
requireは親のクラスを使ってインスタンスが作れる。だから呼び出し元でclass Hoge { しなくていい
requireは更に親のphpファイルで作った変数が使える
requireは更に親のphpファイルで作ったコンストラクタを使える
つまりclass内が使える
一方のextendsはclass Hoge { の外にあるメソッドとかを継承する
↑この理解はどうかな?
でも分かった
requireは親のクラスを使ってインスタンスが作れる。だから呼び出し元でclass Hoge { しなくていい
requireは更に親のphpファイルで作った変数が使える
requireは更に親のphpファイルで作ったコンストラクタを使える
つまりclass内が使える
一方のextendsはclass Hoge { の外にあるメソッドとかを継承する
↑この理解はどうかな?
511デフォルトの名無しさん (アウアウウー Sa39-bTTE)
2023/02/27(月) 01:24:44.70ID:BPjGYXVma メソッドもclass Hoge {の中にあるのか。やっぱ被ってるように思うけど
512デフォルトの名無しさん (ワッチョイ 7da7-c/TO)
2023/02/27(月) 04:20:55.93ID:ocW3Jac80 requireはあくまでも外部のPHPファイルを読み込んでるだけ
そこに記載されたクラスを継承して新たにクラスを作ることとは何の関連もない
ポリモーフィズムの概念やらオブジェクト指向がなんたるかを勉強してきたほうがいい
そこに記載されたクラスを継承して新たにクラスを作ることとは何の関連もない
ポリモーフィズムの概念やらオブジェクト指向がなんたるかを勉強してきたほうがいい
513デフォルトの名無しさん (ワッチョイ 7da7-c/TO)
2023/02/27(月) 04:22:36.00ID:ocW3Jac80 ちなみにネコがワンと鳴くみたいな説明してるとこは見ない方がいい
514デフォルトの名無しさん (ワッチョイ fa8b-W5vA)
2023/02/27(月) 04:37:15.50ID:iRiTYulC0 俺はPHPだけじゃなくて、Windowsアプリ開発もできる
515デフォルトの名無しさん (アウアウウー Sa39-TMU/)
2023/02/27(月) 08:40:23.44ID:TElJ4lxXa >>512
You Tubeいくつか見てみるよ
You Tubeいくつか見てみるよ
516デフォルトの名無しさん (ワッチョイ daa9-sAZr)
2023/02/27(月) 13:52:10.05ID:OQAydld20 初心者なんだけど他人のコード見てたら
if(true){
・・・
}
if(false){
・・・
}
とかあるんだが、これはどういう条件式なの?
ifの中に変数名が入っていたりしたら入ってるかどうかぐらいなのはわかるんだけど、
不思議な書き方なのでよくわからんです
if(true){
・・・
}
if(false){
・・・
}
とかあるんだが、これはどういう条件式なの?
ifの中に変数名が入っていたりしたら入ってるかどうかぐらいなのはわかるんだけど、
不思議な書き方なのでよくわからんです
517デフォルトの名無しさん (ワッチョイ ae5f-W5vA)
2023/02/27(月) 13:59:57.21ID:sow/rINj0518デフォルトの名無しさん (アウアウウー Sa39-bTTE)
2023/02/28(火) 01:30:55.97ID:YvnM6/8va やっぱrequireよく分からんな
とあるwebページ作ってて、管理しやすくするためにphpファイルをiedex.php、data.php、hoge.php、hogehoge.phpみたいに分ける
data.phpにインスタンスまとめる。この場合data.phpは各クラスをrequireする
index.phpはHTMLとして表示される。この場合ここはdata.phpをrequireする
hoge.phpとhogehoge.phpはclassだけど、他のクラスから継承しないならrequireしたりしない
extendsは分かったかも
とあるクラスからインスタンスを作る。このインスタンスをタイプは同じだけど性質によって分けたいならextendsする
例
アニマルクラスを作る。プロパティは
種族
年齢
吠える
そのクラスから犬クラスと猫クラスに分けてからインスタンス作りたい場合、extendsでアニマルクラスを継承する(プロパティは共通だから)
これでどうかな。requireせずにextendsだけする事あるのだろうか?必ずrequireやincludeとかのファイル読み込みをセットで使う?
それと皆は本当にハッキリとrequireするかしないか分かるの?
とあるwebページ作ってて、管理しやすくするためにphpファイルをiedex.php、data.php、hoge.php、hogehoge.phpみたいに分ける
data.phpにインスタンスまとめる。この場合data.phpは各クラスをrequireする
index.phpはHTMLとして表示される。この場合ここはdata.phpをrequireする
hoge.phpとhogehoge.phpはclassだけど、他のクラスから継承しないならrequireしたりしない
extendsは分かったかも
とあるクラスからインスタンスを作る。このインスタンスをタイプは同じだけど性質によって分けたいならextendsする
例
アニマルクラスを作る。プロパティは
種族
年齢
吠える
そのクラスから犬クラスと猫クラスに分けてからインスタンス作りたい場合、extendsでアニマルクラスを継承する(プロパティは共通だから)
これでどうかな。requireせずにextendsだけする事あるのだろうか?必ずrequireやincludeとかのファイル読み込みをセットで使う?
それと皆は本当にハッキリとrequireするかしないか分かるの?
519デフォルトの名無しさん (アウアウウー Sa39-bTTE)
2023/02/28(火) 01:34:20.21ID:YvnM6/8va それと、クラスメソッドやクラスプロパティ使う時も皆は明白に判断つくの?
インスタンス作成回数とかid作成はクラスメソッドとかみたいのは分かるけど俺はハッキリと判断つかないな
インスタンス作成回数とかid作成はクラスメソッドとかみたいのは分かるけど俺はハッキリと判断つかないな
520デフォルトの名無しさん (アウアウウー Sa39-bTTE)
2023/02/28(火) 01:50:28.85ID:YvnM6/8va HTMLに変換されるindex.php上で他のphpファイル上で定義されたメソッドを実行する場合、requireしなくてもいいのはなぜ?
requireはインスタンス作成時にのみ行うのかと思わせて他のケースもあるみたいで分からなくなる
requireはインスタンス作成時にのみ行うのかと思わせて他のケースもあるみたいで分からなくなる
521デフォルトの名無しさん (ワッチョイ 7da7-c/TO)
2023/02/28(火) 02:32:15.26ID:RiJyC4pT0 requireで読み込むファイルはクラスや関数が書かれたライブラリだったり
定数や共通の設定事項を記載したファイルだったり
単にhtmlを出力してるだけのファイルならその内容が読み込んだ側で出力されるし用途は様々
C言語で書かれたPHPコアライブラリに含まれてる関数群やPDOなんかのクラスは
使用するにあたってrequireなんて書いたりしないけど
PHPで作られてるものはrequireしないと使えない
インスタンスだの継承だのそんな次元の話じゃない
定数や共通の設定事項を記載したファイルだったり
単にhtmlを出力してるだけのファイルならその内容が読み込んだ側で出力されるし用途は様々
C言語で書かれたPHPコアライブラリに含まれてる関数群やPDOなんかのクラスは
使用するにあたってrequireなんて書いたりしないけど
PHPで作られてるものはrequireしないと使えない
インスタンスだの継承だのそんな次元の話じゃない
522デフォルトの名無しさん (ワッチョイ f6bb-Arif)
2023/02/28(火) 07:09:43.47ID:3WmX3+jc0 基礎的なところからすれ違ってんだから体系的に学習できる本でも読めよ
phpは基礎が学べればあとはマニュアルでなんとかなるくらいマニュアルが優秀だけど、そもそもの基礎がズレてたらマニュアルも読めん
phpは基礎が学べればあとはマニュアルでなんとかなるくらいマニュアルが優秀だけど、そもそもの基礎がズレてたらマニュアルも読めん
523デフォルトの名無しさん (アウアウウー Sa39-TMU/)
2023/02/28(火) 08:28:11.46ID:xmhsjsFza 基礎がおかしいか。Progateで勉強したけどrequireするしないの差が曖昧だった
何で勉強しようと思ったかというと、今使ってるブログサービスで不具合あって、そこがWordPressだから直せないかなと思った
である程度勉強してブログ設定見たらユーザーが触れる部分はHTMLで勉強の意味無かった
意味無かったけど途中までやったから全部終わらせた
PHPかなり難しかったよ。でもCやってたら楽々なんだろうな
何で勉強しようと思ったかというと、今使ってるブログサービスで不具合あって、そこがWordPressだから直せないかなと思った
である程度勉強してブログ設定見たらユーザーが触れる部分はHTMLで勉強の意味無かった
意味無かったけど途中までやったから全部終わらせた
PHPかなり難しかったよ。でもCやってたら楽々なんだろうな
524デフォルトの名無しさん (ワッチョイ f6bb-Arif)
2023/02/28(火) 09:06:04.41ID:3WmX3+jc0 WordPressはphpとはまた別物
多分、両方エキスパートって人はいないと思う
そもそも一般的なphp開発だと、requireとかほぼ使わなくなってる
composerのautoloadがメジャーだよ
WordPressがやりたいんだったら、一般的なphpじゃなくてそれ用の本読んだほうがいいかなぁ
多分、両方エキスパートって人はいないと思う
そもそも一般的なphp開発だと、requireとかほぼ使わなくなってる
composerのautoloadがメジャーだよ
WordPressがやりたいんだったら、一般的なphpじゃなくてそれ用の本読んだほうがいいかなぁ
525デフォルトの名無しさん (ワッチョイ fab7-okFi)
2023/02/28(火) 09:19:48.98ID:95tx/KzW0 >>518
まず言語仕様として1ファイル1クラスじゃなくてもいい。1ファイルに複数クラス定義を書いてもいい。
(ただし作法としては1ファイル1クラスにするのが望ましい)
そしてrequireは別のファイルからコードを挿入してくるだけの機能
例えばecho文が書かれたPHPファイルをrequireしたらその時に実行される。
まず言語仕様として1ファイル1クラスじゃなくてもいい。1ファイルに複数クラス定義を書いてもいい。
(ただし作法としては1ファイル1クラスにするのが望ましい)
そしてrequireは別のファイルからコードを挿入してくるだけの機能
例えばecho文が書かれたPHPファイルをrequireしたらその時に実行される。
526デフォルトの名無しさん (ワイーワ2 FF42-pseD)
2023/02/28(火) 12:09:34.54ID:K5lzl+NyF ファイルには関数やクラスの定義だけしておくパターンが多いかな
527デフォルトの名無しさん (ワッチョイ ee89-9dkJ)
2023/02/28(火) 16:54:00.06ID:E6p/DZkf0 そんなに違いが気になるなら、Ruby の逆引き本を読んだ方が早い
Ruby on Rails が良い
Ruby on Rails が良い
528デフォルトの名無しさん (オッペケ Sr75-tD1/)
2023/02/28(火) 18:14:11.17ID:qVVLPrT9r Rubyって読みづらくね?
波括弧ないしif~endとかダサい
波括弧ないしif~endとかダサい
529デフォルトの名無しさん (ワッチョイ ae5f-W5vA)
2023/03/01(水) 01:33:59.12ID:UTDLtYqT0 >>528
そういうのをかっこいいと思ってる人たちが使っているんです
そういうのをかっこいいと思ってる人たちが使っているんです
530デフォルトの名無しさん (ワッチョイ 9d5f-pseD)
2023/03/01(水) 03:49:41.82ID:QN9phVrM0 file_put_contentsでjsonにデータを書き込みたいんだけど、jsonに
[ ]
を予め用意しておいて その中にデータ書き込むって出来ないかなあ?
[ ]
を予め用意しておいて その中にデータ書き込むって出来ないかなあ?
531デフォルトの名無しさん (ワッチョイ ae5f-W5vA)
2023/03/01(水) 08:43:06.85ID:UTDLtYqT0532デフォルトの名無しさん (ワッチョイ 9d5f-pseD)
2023/03/01(水) 10:36:45.89ID:QN9phVrM0533デフォルトの名無しさん (ワッチョイ 9d5f-pseD)
2023/03/01(水) 10:37:24.79ID:QN9phVrM0 ちがうか、先に違うオブジェクトにしておくのか
534デフォルトの名無しさん (ワッチョイ 9a7c-W5vA)
2023/03/01(水) 11:19:20.74ID:90jK5EfG0 何で出来ない奴はこうも説明が下手なんだ・・・
何を言っているか分からんよw
何を言っているか分からんよw
535デフォルトの名無しさん (ワッチョイ fab7-okFi)
2023/03/01(水) 17:28:10.18ID:XGVF9QRc0 >>530
動的に書き込みたい部分以外はJSONのテンプレートとして事前に用意しておきたいってことだろうか
そう仮定すると考えるのはこの3通りくらい
1) テンプレートを一度jsonオブジェクトとして読み込んで、目的の階層にデータを代入して、まとめて書き出す
2) テンプレート側にデータとして存在しえない文字列を用意しておいて、文字列として読み込んだjsonから文字列置換する
3) JSONを読み取る側を改修して、固定部分と動的部分を別ファイルから読み取るようにする
動的に書き込みたい部分以外はJSONのテンプレートとして事前に用意しておきたいってことだろうか
そう仮定すると考えるのはこの3通りくらい
1) テンプレートを一度jsonオブジェクトとして読み込んで、目的の階層にデータを代入して、まとめて書き出す
2) テンプレート側にデータとして存在しえない文字列を用意しておいて、文字列として読み込んだjsonから文字列置換する
3) JSONを読み取る側を改修して、固定部分と動的部分を別ファイルから読み取るようにする
536デフォルトの名無しさん (ワッチョイ 9d5f-pseD)
2023/03/01(水) 20:41:59.79ID:QN9phVrM0 >>535
ああ、一旦オブジェクトなり配列にして、未登録のデータだった時にオブジェクト一個追加してJSON全部上書きしちゃうのは自分でもできそう
データの数も3桁行かない程度だし、データ読み出して書くのもそんな重くならないか
後は動的にデータおる部分の見直しですね
ああ、一旦オブジェクトなり配列にして、未登録のデータだった時にオブジェクト一個追加してJSON全部上書きしちゃうのは自分でもできそう
データの数も3桁行かない程度だし、データ読み出して書くのもそんな重くならないか
後は動的にデータおる部分の見直しですね
537デフォルトの名無しさん (ワッチョイ 1302-QeO8)
2023/03/05(日) 11:24:39.77ID:QdgOL0Oo0 どちらが適正ですか?
try {
//ファイルを保存先ディレクトリに移動させる
if (move_uploaded_file($_FILES['upload_image']['tmp_name'], $save)) {
echo 'アップロード成功しました。';
} else {
echo 'アップロード失敗しました。';
}
} catch (Exception $e) {
echo 'アップロードエラー: ' . $e->getMessage();
}
try {
//ファイルを保存先ディレクトリに移動させる
move_uploaded_file($_FILES['upload_image']['tmp_name'], $save);
} catch (Exception $e) {
echo 'アップロードエラー: ' . $e->getMessage();
}
try {
//ファイルを保存先ディレクトリに移動させる
if (move_uploaded_file($_FILES['upload_image']['tmp_name'], $save)) {
echo 'アップロード成功しました。';
} else {
echo 'アップロード失敗しました。';
}
} catch (Exception $e) {
echo 'アップロードエラー: ' . $e->getMessage();
}
try {
//ファイルを保存先ディレクトリに移動させる
move_uploaded_file($_FILES['upload_image']['tmp_name'], $save);
} catch (Exception $e) {
echo 'アップロードエラー: ' . $e->getMessage();
}
538デフォルトの名無しさん (ワッチョイ 1361-y7Dr)
2023/03/05(日) 12:02:39.82ID:A2ppgH2U0 >>537
上
上
539デフォルトの名無しさん (ワッチョイ 1302-QeO8)
2023/03/05(日) 13:31:58.17ID:QdgOL0Oo0 >>538ありがとうございます。
540デフォルトの名無しさん (ワッチョイ 1302-QeO8)
2023/03/05(日) 15:15:03.70ID:QdgOL0Oo0 phpの実行を3つに区分したとして、
「データベースのmysqli接続」
「POST送信データバリデーションチェック」
「クエリ実行」
try-catch文、トランザクション処理を記述する場所
って以下であっていますか?
try{
//データベース接続処理
...
//入力バリデーションチェック
...
//トランザクション開始
$mysqli->begin_transaction();
//クエリ実行
...
// トランザクション処理
if (!$mysqli->commit()) {
throw new Exception("トランザクションが失敗しました。");
}
}catch (Exception $e) {
echo $e->getMessage();
$mysqli->rollback();
}
「データベースのmysqli接続」
「POST送信データバリデーションチェック」
「クエリ実行」
try-catch文、トランザクション処理を記述する場所
って以下であっていますか?
try{
//データベース接続処理
...
//入力バリデーションチェック
...
//トランザクション開始
$mysqli->begin_transaction();
//クエリ実行
...
// トランザクション処理
if (!$mysqli->commit()) {
throw new Exception("トランザクションが失敗しました。");
}
}catch (Exception $e) {
echo $e->getMessage();
$mysqli->rollback();
}
541デフォルトの名無しさん (アウアウアー Sa8b-Gptz)
2023/03/05(日) 17:02:00.95ID:pluyAGbia commit部分のthrowは要らないのでは?
542デフォルトの名無しさん (ワッチョイ 8b63-Qpn1)
2023/03/05(日) 17:44:49.95ID:M62PQQGq0 commitしようとしたら、ファイルが壊れました、とか
543デフォルトの名無しさん (アウアウアー Sa8b-Gptz)
2023/03/05(日) 18:28:19.70ID:pluyAGbia DB壊れたらシステム止まって別のトランザクションも動かないだろうから
全てのトランザクションに書かなくて良いと思う
全てのトランザクションに書かなくて良いと思う
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 橋下徹氏 外務省幹部の訪中受け「口だけ番長」へ痛烈指摘 「喧嘩は日本の完敗…なんとかっこ悪い日本か」 [冬月記者★]
- 【外国人問題】小野田紀美担当相「不法就労や不法滞在は許さない」 [シャチ★]
- 【野球】井端監督 大谷翔平、山本由伸らのWBCへの参加 「1日も早く返事ほしい」「待っててといっても、国内組が遅くなってしまう」★3 [冬月記者★]
- 経団連会長、日中は建設的対話を 経済3団体が高市首相と初会談も日中関係は話題に登らず… [BFU★]
- 中国で「クレしん」公開延期 対日報復、エンタメに波及 [蚤の市★]
- 東京株式市場 インバウンド関連株が下落 中国政府の渡航自粛要請で [バイト歴50年★]
- 有識者「高市総理が発言を撤回したり、辞職するしかないと言っている人は、それで日中関係が今まで通りになると思ってる?」 [834922174]
- 戦争は無くならないし殺人は起きるし女はレイプされるし子供は餓死するし
- ケンモメンが思うケンモメンの生態を述べるスレ [866936191]
- 中共は台湾を自分の領土と思ってるから外国が「侵略するな」と警告しても意味ないんだよね
- ( ´・ω・` )朝ですぞー
- 日経時間外、5万円割れ 垂直落下始まる [402859164]
