【PHP】下らねぇ質問はここに書き込みやがれ 10

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ cfe8-+65u)
垢版 |
2018/11/28(水) 17:08:46.02ID:Nb5yTkdM0
PHPに関する質問スレです

前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 9
http://mevius.5ch.net/test/read.cgi/tech/1513760420/

次スレは>>980以降
本文の1行目に以下を追加すること
!extend:on:vvvvv:1000:512
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
2019/10/16(水) 21:50:13.55ID:VikEwu130
>>554
.htaccess
が怪しそう。それぞれ、どうなってますか?
2019/10/16(水) 22:57:49.93ID:S66UuMjo0
パーミッション
2019/10/16(水) 23:00:50.37ID:N6aKGsVs0
改行コードかも
2019/10/16(水) 23:24:41.77ID:3M2x+3910
>>555-557
意外と心当たりあるもんだな
改行コードは盲点だったわ
そんな事あるのか
2019/10/16(水) 23:33:52.64ID:m+bghU330
>>558
viが使えるならそれでソースを開く
行末に ^M って出るかも
DOSの改行はCRLFだが
Unix系はLFだけでいい

取り除きたいなら開いているvi上で
:%s/^M//
と打ち、リターンキー
2019/10/16(水) 23:37:26.54ID:m+bghU330
ちょっと不親切だったな

^Mは制御文字なので、CTRL+Vと打ってから続けてCTRL+Mと入力

:%s/^M$//

念のため、$も入れておこう
2019/10/17(木) 22:47:52.05ID:ScmICnbXa
それは 行頭のMだけを削除するという意味?
改行コードが違う時ってどんなふうにviで見えるんだろう
2019/10/17(木) 23:11:28.85ID:J+0mBkyh0
掲示板だと区別付かないんだけど
^Mで一文字の制御文字を意味する
vi(vim)の画面で見るとカラー表示するので区別できる
設定次第だけども
2019/10/18(金) 01:08:35.01ID:kVATbc+M0
改行コードでエラーになるのか
どっちでもエラーに遭遇したことなかったから勉強になった・・・ような
どうせ忘れてしまう可能性が高杉
2019/11/03(日) 21:12:04.91ID:A7Digd0J0
PHPってインタプリタですか?
2019/11/07(木) 18:25:52.30ID:pG3Lscph0
なんでだれも答えてくれないんですか!プンプン!
もういいです自分で調べます!
2019/11/12(火) 23:24:53.56ID:53ocb9qja
オレンジクインという葉が黄色い白菜は緑黄色野菜になるのでしょうか?
567デフォルトの名無しさん (オッペケ Sr11-wiCk)
垢版 |
2019/11/14(木) 11:52:42.61ID:UbsUbcmDr
PHPを勉強しますが、いわゆる駄目なコード(メンテ不能とか他人が読めないとか)を書かないようにするための方法がまとめられた書籍とかWebサイトってありますか?
ググって見ましたが、Githubの他人のコードを読むとかとにかくググるとかで、お手本が一箇所にまとめてあるような事例が見つかりません
そもそもプログラミング初心者なのでどういうコードが良くて駄目なのか根拠が無いと理解できないので、Webサイトで調べるのはちょっとハードル高いです
2019/11/14(木) 12:34:11.76ID:yaNNoKNo0
最初から完璧を目指してると前に進まない上に身にも付かないんで
気にせずガンガン組んで経験値上げた方がいいよ

経験値上げる=ダメコードが分かってくる
2019/11/14(木) 12:34:45.58ID:4neB2vdG0
リーダブルコードとかじゃね
読んだこと無いけど
2019/11/14(木) 12:49:12.10ID:lyAVwglk0
読みやすいコード手法やアルゴリズムを勉強したいなら、
もっとシンプルな、例えばC言語や、Javaで勉強しtが方が良いと思う
PHPはどちらかと言うと実用本位で動けば何でもありの書き方してしまうから
人によって書き方も違うし、手本にして学ぶというのには向かない気がする
2019/11/14(木) 14:29:48.81ID:YV+wn0qT0
>>567
初心者にあれこれ言っても仕方ないと思うので
Beauty Is in Simplicity code
という言葉を送る

日本語訳は「美はシンプルさに宿る」や「プログラマが知るべき97のこと」でググるといい
2019/11/14(木) 14:38:58.41ID:j9FdlXq90
キモ
2019/11/14(木) 18:46:20.22ID:dCzlDN8+0
>>567
他人なんて気にするな。
一年後の自分が読んで理解できるコードを書けば良い。
2019/11/15(金) 17:40:16.12ID:3geqpL2yr
>>568-573
初心者のうちから変な癖をつけないようにしたと思いましたが
あれこれ手を広げないほうがいいかなとも思っていました
PHP自体が可読性より生産性を重視してるのなら
初心者のうちは経験値を積んで生産性をあげて
次のステップとしてリーダブルコードで読みやすさなどを学ぶことにします
みなさん回答ありがとうございました
575デフォルトの名無しさん (ブーイモ MM76-Xz/Q)
垢版 |
2019/11/15(金) 17:49:19.08ID:oPXVgqk1M
実際に動いているPHPって
HTMLのソースみたいにソースコードを見ることは、できないのですか?
2019/11/15(金) 17:54:31.71ID:NeivSIGq0
観客席からは見れない
舞台裏に回れば見れる
577デフォルトの名無しさん (ブーイモ MM76-Xz/Q)
垢版 |
2019/11/15(金) 18:01:55.55ID:oPXVgqk1M
PHPのソースは見れるかと聞いておるのだ。
誰か分かる者はいないのか?
この馬鹿モンが!
2019/11/15(金) 18:36:29.53ID:kIm7g0zF0
厳密に言えば見れるよ、ハック的な手段で
たまにソースコード流出とかって騒ぎになってるじゃん、あれやれば見れる
頑張って勉強しろ
2019/11/15(金) 18:47:26.76ID:NeivSIGq0
念のため書いておくけど、
サイト側の設定ミスだとしても、
サイト側が公開を意図していないものの取得は
不正アクセスとなります
580デフォルトの名無しさん (ブーイモ MMb2-+PZ0)
垢版 |
2019/12/02(月) 18:02:15.74ID:uWhstvBwM
初心者です。
PHP7.2にてfile_get_contentsにてHTMLを
全取得するテストをしているのですが、
youtube、yahoo.co.jpのトップページは
全取得できますが、
Tver.jpなどの一部サイトでは、HTMLの一部が取得できないのですが、
この違いが何なのか分からず。。
コンテキストオプションはchromeのデベロッパーツールと同内容をいずれも使用しています。

一部しか取得できないだけで、errorが返ってきているわけではありません。
このようなケースで想定される原因は何か、
お教え下さい。
2019/12/02(月) 18:12:49.06ID:OjDe9qis0
その関数フロントで生成されるコードは取得できなかった筈なんでそれじゃね
仮想端末挟んで生成してもらってからソース取得の処理作るかで悩んだ覚えある
結局pythonとかJavaScriptにクローラー向きのAPI一杯あるからそっちで操作した方がラクって結論に落ち着いたけど
2019/12/02(月) 19:19:41.96ID:VMZvMN3R0
解決したから原因までは特定しなかったけど
fsockopenだとうまくいくけど
file_get_contentsじゃうまくいかない
ということはあったな
同じcontext使ってるんだけどね
cURL使うと多分うまくいくよ
583デフォルトの名無しさん (ワッチョイ d9c9-+PZ0)
垢版 |
2019/12/03(火) 23:22:42.46ID:8Kx0IsVg0
>>581,582
回答ありがとうございます。
なるほど、動的なコンテンツはこの関数では取得できないのですね。もう少し構造について調べてみます。
curlや他の言語も検討してみます。
2019/12/04(水) 01:38:24.44ID:9qyS2PwK0
例えば、5ch みたいに最初に、空のHTML を送ってきてから、
その後、Ajax で内容をサーバーから取得するようなページでは、
普通のクローラーでは、確実に取得できない

そういう場合は、Ruby などで、Selenium WebDriver を使って、
人がやるのと同じように、ブラウザを操作すれば取得できる
2019/12/04(水) 07:43:35.40ID:xeP1zjgo0
JS挟んだあとのコードがほしいって話なのか
ソースの表示のソースが取れればいいものかと
そりゃ普通にやってちゃ無理だわな
2019/12/04(水) 10:39:16.66ID:ynT0rzJO0
まぁ今どきPHPでスクレイピングなんてやらないしな
Python使えPython
2019/12/04(水) 11:38:04.31ID:HJOtve5N0
ここはPHPのスレ
2019/12/04(水) 11:52:57.07ID:M0bOyCLn0
だからどうした
そもそも向いてねンだから無理矢理処理作ったってしゃーねーだろ
何でもかんでも手作業で作ってたらキリねーぞラクな方行けラクな方
2019/12/04(水) 12:51:22.94ID:uy3yV12YM
pythonはスクレイピングしやすいの?
ちょっと興味出てきた
2019/12/04(水) 12:56:11.50ID:kZk+LcEC0
へんなやつにからまれているね
2019/12/04(水) 13:46:24.53ID:I65RuVdL0
python自体がjavascript動かしてスクレイピングできるわけじゃないよ
たいていwebdriverでheadless chrome動かしてそれを取るだけ
phpにもwebdriverはあるので同様のことはできる
2019/12/04(水) 16:23:36.96ID:ynT0rzJO0
>>589
Python Seleniumでググってみ
すげぇ簡単だぞ
原理的には>>591の書いてる通りだが手軽さはPHPの比じゃない

>>588
だよな
言語なんか手段にすぎないのだから目的に応じて生産性の高い手段を選べってことだ
1つの言語に齧りついてるのは能無しの証拠
2019/12/04(水) 16:56:56.54ID:M0bOyCLn0
>>592
能無しっていうか
まぁこだわりがあるなら別にそれでもいいとは思うよ
内部動作のよく分からん機械に依存するのが不安だって気持ちも分かるし
彫刻刀一本であらゆるものを作りたいって人を否定する気は無い

電ノコやドリルが入った工具箱が横に置いてあるなら俺はそっち使うけど
2019/12/04(水) 17:22:33.33ID:HJOtve5N0
職場で叱られたのかな?
595デフォルトの名無しさん (ワッチョイ 4b5f-q31q)
垢版 |
2019/12/12(木) 00:04:39.58ID:8N8BhmJA0
phpStormでアロー演算子使って無名関数宣言すると警告出るのどうしてる?
2019/12/16(月) 00:10:56.73ID:eA/7D1/t0
古い環境から新しい環境に、古いプログラムを移行したいのですが、

古い環境でphpinfoでtimezoneがAsia/Tokyoになっているのに
php.iniや、php.d/*にはその項目がありません。

# php -i | grep timezone
Default timezone => Asia/Tokyo
date.timezone => no value => no value

# grep Tokyo /etc/php.ini
#
# grep Tokyo /etc/php.d/*
#
あと、ログにエラーが出ないので調べると
# php -i | grep error_report
error_reporting => 0 => 0

# grep error_report /etc/php.ini
error_reporting = E_ALL & E_STRICT
と矛盾した感じになっていますが、どこにその設定が書かれているか探す方法はあるのでしょうか?
2019/12/16(月) 00:12:25.13ID:9m9cmyeR0
>>596
せめて古い環境、新しい環境のバージョンくらいは教えてくれないと
2019/12/16(月) 00:23:45.45ID:eA/7D1/t0
申し訳無いです。
CentOS5 の PHP 5.1.6 (cli)です。

新しい環境はCentoOS7のbaseにある5.4にて動くか試しているのですが、たくさんnoticeやwarningが出ていますが、
とりあえずこの古い環境でTokyoがどこから来ているか不思議な感じです。
2019/12/16(月) 00:30:59.80ID:+KWK+mzK0
https://www.php.net/manual/ja/function.date-default-timezone-get.php
2019/12/16(月) 00:42:43.65ID:9m9cmyeR0
>>598
/etc/php.iniの870行目辺りに
date.timezone がコメントになって書かれてない?
そこを編集して設定すれば良いと思う
あやふやなので間違ってたらごめん
2019/12/16(月) 00:49:25.28ID:9m9cmyeR0
>>600は、CentoOS7のPH5.4での話ね
2019/12/16(月) 01:07:00.48ID:eA/7D1/t0
>>599
なんと環境変数から取っていたのですか・・・ありがとうございます。
5.1.6@CentOS5で
# grep Tokyo /etc/*/*
/etc/sysconfig/clock:ZONE="Asia/Tokyo"
となるとここから取っていたことになりそうです。
つまりは、この古い環境を作った人は、timezoneの項目をコメントアウトして編集していなかったのですね。

あと、ここがわからないのですが、
5.1.6における php.iniのerror_reporting のデフォルト値は コメントアウトして
error_reporting = E_ALL & E_STRICT とあるのですが、

あるプログラムで、新環境5.4では出てくるPHP Notice: Undefined variable:が、この5.1.6で出ないのは
# php -i | grep error_report
error_reporting => 0 => 0
この「0」が効いているからでしょうか? php.iniの設定がどこかで無効に上書きされていると考えればいいのでしょうか?

>>600-601
はい、新しい環境ではphp.iniに記載します
603デフォルトの名無しさん (ワッチョイ e2da-6dnz)
垢版 |
2019/12/16(月) 10:08:56.19ID:ATUYW4cO0
date()よりgmdate()+9*60*60の方が速い
2019/12/16(月) 13:14:39.22ID:49FYnnWe0
JavaScript でも、サーバー側のNode.js では、UTC。
一方、クライアント側のブラウザでは、Local Time

たぶん、Ruby, PHP もサーバー側だから、UTC にしたいのだろう
2019/12/16(月) 13:57:00.03ID:+KWK+mzK0
>>602
>この「0」が効いているからでしょうか? php.iniの設定がどこかで無効に上書きされていると考えればいいのでしょうか?

デフォルトはNULLなのでどっかで設定してるんじゃないのかな

$ php -i | grep '¥.ini'
で他に読み込んでる設定がないか確認するといいと思う
2019/12/17(火) 08:18:32.19ID:gtJVJ+Ck0
>>605
/etc/php.ini, /etc/php.d/*.iniが対象でしたが、
php.iniのerror_reporting = E_ALL & E_STRICTだけでした。
不思議な感じですが新しい環境へ移していこうと思います。
2019/12/17(火) 17:27:08.07ID:0aBJN6Tz0
E_ALL & E_STRICT
って設定懐かしいな。何年前のPHPだw
608デフォルトの名無しさん (スプッッ Sd22-q31q)
垢版 |
2019/12/18(水) 01:07:49.35ID:qvYpa8W8d
74のpreloadとffiめっちゃいいな。
いいんだけど、ffi現場で使ってる人いる?
2019/12/18(水) 14:51:51.17ID:lrTyYwVn0
現場投入はまだだな

Preloadingは素敵すぎるが、
Foreign Function InterfaceってPHPに要るかね?
2019/12/18(水) 14:54:39.35ID:lrTyYwVn0
FFIのRFC調べたら
賛成24の反対15で切り可決か

これ昔PECLにあったやつだよな
まぁそうだろうなw
611デフォルトの名無しさん (ワッチョイ 775f-B9Tc)
垢版 |
2019/12/19(木) 00:22:50.43ID:F9c8Ivhx0
>>609
ffi、とても便利だけど、phpの現場でなんでphpかって、その言語で書く事が求められているからであってffi使うならphp使わないよねーっていうそもそも論もあると思う

preloadはプロセス再起動しないといけないからコンテナ向きだよね
612デフォルトの名無しさん (ワッチョイ ff02-lgca)
垢版 |
2019/12/19(木) 13:14:56.57ID:FXNFzpmL0
<button class="bubbly-button">
<a href="http://coonelnel.net/"; target="_blank" rel="nofollow noopener">素人</a>
</a>に
613デフォルトの名無しさん (ワッチョイ ff02-lgca)
垢版 |
2019/12/19(木) 13:16:43.14ID:FXNFzpmL0
https://stackoverflow.com/questions/41801228/made-image-click-counter-which-is-buggy
を配置する場合どこに記載すればよいでしょうか?
2019/12/19(木) 14:16:57.37ID:hMraMf9D0
exec系関数にあわせて外部プログラム作ってたから
ffiはだいぶ楽が出来るようになるな
まあ肝心のCを知らないんだけどw
2019/12/19(木) 14:29:44.98ID:dMnFAlGo0
そりゃ、Ruby だって、C をほとんど知らない人が、FFI を使っているのは、PHP と同じw
616デフォルトの名無しさん (スプッッ Sd3f-B9Tc)
垢版 |
2019/12/19(木) 20:19:58.91ID:e3NBcS5sd
>>613
これをwebページのどこ家に埋め込みたいんだけど、どのファイルに書けばいいのかってこと?
617デフォルトの名無しさん (ワッチョイ 5701-uI9Z)
垢版 |
2019/12/19(木) 20:31:21.94ID:25wRxCsd0
>>616

612のHTMLに設置してURLつきボタンのクリック数をカウントして ランキング機能を実装する目的なのですが PHPを612のHTMLの何処に設置してしていいか分からず困ってます…
2019/12/19(木) 21:42:57.77ID:4pMiKlwl0
PHP要素どこだよ
619デフォルトの名無しさん (ワッチョイ 775f-B9Tc)
垢版 |
2019/12/19(木) 23:07:07.63ID:F9c8Ivhx0
>>617
まず君の環境でphoは動くの?
620デフォルトの名無しさん (ワッチョイ 775f-B9Tc)
垢版 |
2019/12/19(木) 23:08:20.16ID:F9c8Ivhx0
php
621デフォルトの名無しさん (ワッチョイ 5701-uI9Z)
垢版 |
2019/12/20(金) 03:02:34.89ID:IBAvNOD/0
>>619
サーバーを借りるので動くと思います
2019/12/20(金) 18:43:33.55ID:Xr6FOCXd0
>>611
> っていうそもそも論もあると思う
そそ
これRFCで賛成24の反対15だから、今のRFCルール(要2/3の賛成)だと否決されてた代物だ

https://externals.io/message/103613
で議論されてるが、俺はJefferson Gonzalezの意見に賛成だな
今更いっても仕方ないけどw
623デフォルトの名無しさん (ワッチョイ 775f-B9Tc)
垢版 |
2019/12/21(土) 01:48:26.48ID:BiuKyk5n0
>>621
phpが動くのとサーバー借りてるのは同義ではないぞよ。
sshはできるの?
624デフォルトの名無しさん (ワッチョイ 775f-B9Tc)
垢版 |
2019/12/21(土) 01:50:43.85ID:BiuKyk5n0
>>622
俺も同意。
そもそもffi書ける技術スタックのエンジニア集められてるならphpじゃなくていいよねって
2019/12/21(土) 17:17:00.28ID:IDzKgSWy0
Jefferson Gonzalezの意見って明らかにFFI導入に賛成なんだけど
626デフォルトの名無しさん (ワッチョイ 775f-B9Tc)
垢版 |
2019/12/22(日) 01:04:31.99ID:ngrj6zpx0
>>625
c書けるスキルがあるのにphpの現場にいる人間が幸せになるよってとこなのかな
2019/12/22(日) 01:24:13.80ID:buP4BnNs0
GoやRustやC#でもFFI書けるよ
628デフォルトの名無しさん (ワッチョイ 775f-B9Tc)
垢版 |
2019/12/23(月) 00:53:27.33ID:2qWBTAwK0
>>626
書くのが必ずしも許されるわけではないから難しいよね。
俺はライブラリ系は全部書き直した。
これじゃメンテナンスできないですーっていう方々を炙り出すために
629デフォルトの名無しさん (ワッチョイ 9f07-Rp4x)
垢版 |
2019/12/24(火) 17:13:26.50ID:oJYJsXMm0
exec関数でサーバのコマンドを実行できますが、
ソフトウェアをインストールするときなどに表示される
「キーボードのyを押してインストールを進める」
みたいな処理もexecで行うことができるのでしょうか?
もしできる場合、どのように書けばいいか教えて下さい
2019/12/24(火) 17:23:02.72ID:4UlhXCkA0
>>629
バッチで動かすことを想定しているプログラムには
例えば起動オプションに "-y" が用意されてあって
キーボード応答全てにyが打たれたとして動作するものもある
動かしたいプログラム次第だと思うが
こういうものなら動かせるかもしれない

そうで無い場合は、プログラムからの応答を判断しながら
動かさないと、想定出来ない問題が起きかねないのでは
2019/12/24(火) 17:57:31.74ID:SDqv4krt0
>>629
yes
632デフォルトの名無しさん (ワッチョイ 775f-B9Tc)
垢版 |
2019/12/25(水) 00:49:42.46ID:oMbV4Iar0
>>629
yesかecho yesをpipeで渡す
2019/12/25(水) 12:42:04.67ID:ZI663GBY0
漏れは、自分のPC で、
Windows10, WSL, Ubuntu16.04 で、全パッケージの更新をするのに、

Ruby で、sudo のパスワードの入力とか、
apt-get の-y で、yes の入力もやってる

#!/usr/bin/ruby
# frozen_string_literal: true

# 全パッケージの更新

# sudo のパスワードを自動入力する
# echo <your_password> | sudo -S <your_command>

puts `echo パスワード | sudo -S apt-get update`

puts `sudo apt-get upgrade -yV`
2019/12/25(水) 23:05:26.90ID:+4x8Vudl0
>>630-633
適当なコマンドですが、
exec("create database -y hogehoge");

みたいに-yをつけると
「hogehogeデータベースを絶対作成する」みたいな事ができるのでしょうか?

>>632さんが書いてるのは
exec("echo yes");

ということなのでしょうか?
2019/12/25(水) 23:45:00.44ID:TuXJcfTM0
yesっていうコマンドがあるんだよ
exec('yes | create database hogehoge');

-yオプション的なのををサポートしてるかどうかはそのコマンドのマニュアル読んで
2019/12/26(木) 00:03:12.37ID:QbBK51Lf0
すみません。公式のマニュアルを見てみたのですが、
yesに関しての記述が見当たらなかったんです。
>>635のように書くのだと理解します。ありがとうございました。
2019/12/26(木) 06:40:21.95ID:kwmHN0pwd
yesはLinuxのコマンド。
2019/12/26(木) 07:36:02.91ID:G8FNklXra
>>637
エイプリルフールかと思ったら本当にあってビビった
コマンド打ってウイルスに感染したような挙動になって焦ったわ
2019/12/27(金) 00:29:11.90ID:TcF0JrOBr
PHPの環境構築ってWindowsの場合どの方法が主流なのかね

検索するとXAMPPの記事ばかり出てくるけど手軽な一方環境を汚すんで微妙な気がするんだが
2019/12/27(金) 00:38:09.97ID:Jp3jdKct0
Windows自体が汚れてるんだから気にしないの
2019/12/27(金) 00:44:39.91ID:EEOcwadQ0
自分なら、仮想環境を構築してその中でやりたい
642デフォルトの名無しさん (ワッチョイ a601-LIdJ)
垢版 |
2019/12/27(金) 08:17:09.42ID:4FJgkgoK0
PHPの勉強が目的ならXAMPPやMANPでいいと思うけどな
仮想環境やらの設定や不具合で時間食ってたら元も子もない
2019/12/27(金) 10:56:24.24ID:EEOcwadQ0
その程度の知識は何れにしろ必要だろう
644デフォルトの名無しさん (ワントンキン MMac-HCDf)
垢版 |
2019/12/27(金) 11:51:48.01ID:54ZzlDGdM
初心者にいきなり全CUI操作を強いるのはどうかと思う
VirtualBoxあたりでUbuntu入れて環境構築させればいいんじゃない
645デフォルトの名無しさん (ワッチョイ 468c-1wr4)
垢版 |
2020/01/02(木) 18:10:26.21ID:NsD5otxd0
PHPを使ったサーバーサイドってどんなことしてるの?
ここはSQLの内部データ表示したいからhtmlの中にdivタグ付けて関数呼び出してってそんな感じでやってるの?
2020/01/03(金) 20:24:16.45ID:9LIAX5hH0
>>645
別にPHPに限ったことじゃないけどサーバサイドでやることはだいたいそんな感じ
647デフォルトの名無しさん (ワッチョイ 468c-1wr4)
垢版 |
2020/01/04(土) 03:43:48.23ID:5wVpG03+0
やっぱそうなんか、SQLのログイン設定とかばれるからそうやって防いだり動的処理するんか
2020/01/04(土) 05:01:29.27ID:E/0LWI5y0
何言ってんだかわかんない
649デフォルトの名無しさん (ワッチョイ fe89-GYAN)
垢版 |
2020/01/04(土) 23:05:43.91ID:9+8EnAbP0
質問です。
環境はMacでXAMPPを使っています。
エラーが出てググったところgdの「JPG Support」がないからだというところまでわかりました。
ですがサポートのさせ方がわかりません。
どうするといいのでしょうか?
2020/01/04(土) 23:16:35.72ID:9cRomv9Ua
php7環境でpear mailを練習していたところ、

Parse error: syntax error, unexpected 'new' (T_NEW) in /usr/share/pear/Mail/smtp.php on line 349
が出るので調べてみると非対応のようですが、

何に置き換えるのが一般的なのでしょうか?
mail、mb_send_mailでも良いのでしょうか?
これらがあるのにpear mailが利用されていたのでしょうか?
2020/01/04(土) 23:34:51.34ID:9cRomv9Ua
SMTP.phpの該当箇所349行目を見ると
$this->_smtp = &new Net_SMTP($this->host,
とあったので、&new を new に置き換えると
エラーは出なくなりましたが。

さすがにソースを変えるのは良くないと思いますが、
php7用のpear mailがremiから提供されているのでしょうか?
他の方法を検討するべきでしょうか?
2020/01/04(土) 23:54:26.28ID:LM3WrULI0
>>649
macは知らんけど一般的にはphp.iniでgdのextensionを有効にするだけでいい
ていうか自己判断してるけどエラー内容を書かないことには答えようがないな

>>651
pearとかPHP7時代にそぐわないレガシーだよ
PHPMailerでも使えばいいんじゃない?
653デフォルトの名無しさん (ワッチョイ fe89-GYAN)
垢版 |
2020/01/05(日) 00:03:45.20ID:ftX4LjxF0
>>652
エラーは
Fatal error: Uncaught Error: Call to undefined function imagecreatefromjpeg() in /Applications/XAMPP/xamppfiles/htdocs/php/sample2.php:5 Stack trace: #0 {main} thrown
です。
ググったところgdの「JPG Support」がないとのことで、phpinfoで調べたところ実際にありませんでした。
extension=php_gd2.dllのコメント化も解除し、再起動しましたがまだエラーになります。
654デフォルトの名無しさん (ワッチョイ 468c-1wr4)
垢版 |
2020/01/05(日) 00:08:18.80ID:mNtiIqp60
https://ideone.com/VwTTUI
こういう書き方って良くないん?こういう手があったかって思ったが見た目が悪いことに気付いた
■ このスレッドは過去ログ倉庫に格納されています