質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

composer

Composerとは、PHP5.3.2以上で使用可能なパッケージ管理ツールです。指定ディレクトリ内だけでパッケージ管理します。

Q&A

0回答

152閲覧

AWS EC2でcomposerのcarbonカレンダーが表示できなくない。”Your Composer dependencies require a PHP version ">= 8.1.0"

DaisukeNomura

総合スコア1

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

composer

Composerとは、PHP5.3.2以上で使用可能なパッケージ管理ツールです。指定ディレクトリ内だけでパッケージ管理します。

0グッド

0クリップ

投稿2023/01/24 22:15

前提

現在AWSのEC2で準備したサーバーにPHPのECサイトをアップしようとしています。
carbonを使って予約カレンダーを構築したのですが、Your Composer dependencies require a PHP version ">= 8.1.0".のエラーが出てそのページだけ表示されません。
EC2でインストールされているのはPHP7.2です。

実現したいこと

予約カレンダーを表示できるようにする。
予約システムが作動するようにしたい。

発生している問題・エラーメッセージ

Your Composer dependencies require a PHP version ">= 8.1.0".

該当のソースコード

php7.2

1<?php 2session_start(); 3$user_login = isset($_SESSION['user_login']) ? $_SESSION['user_login'] : false; 4 5require 'vendor/autoload.php'; 6 7use Carbon\Carbon; 8 9$m = (isset($_GET['m'])) ? htmlspecialchars($_GET['m'], ENT_QUOTES, 'utf-8') : ''; 10$y = (isset($_GET['y'])) ? htmlspecialchars($_GET['y'], ENT_QUOTES, 'utf-8') : ''; 11if ($m != '' || $y != '') { 12 $dt = Carbon::createFromDate($y, $m, 01); 13} else { 14 $dt = Carbon::createFromDate(); 15} 16 17function renderCalendar($dt, $user_login) 18{ 19 if ($user_login == true) { 20 $user_id = $_SESSION['user_id']; 21 } else { 22 $user_id = ''; 23 } 24 25 try { 26 $dbh = new PDO("mysql:host=localhost;dbname=corporate_db", "root", ""); 27 } catch (PDOException $e) { 28 var_dump($e->getMessage()); 29 exit; 30 } 31 32 $dt->startOfMonth(); 33 $dt->timezone = 'Asia/Tokyo'; 34 35 $sub = Carbon::createFromDate($dt->year, $dt->month, $dt->day); 36 $subMonth = $sub->subMonth(); 37 $subY = $subMonth->year; 38 $subM = $subMonth->month; 39 40 $add = Carbon::createFromDate($dt->year, $dt->month, $dt->day); 41 $addMonth = $add->addMonth(); 42 $addY = $addMonth->year; 43 $addM = $addMonth->month; 44 45 $today = Carbon::createFromDate(); 46 $todayY = $today->year; 47 $todayM = $today->month; 48 49 $title = '<h4>' . $dt->format('F Y') . '</h4>'; 50 $title .= '<div class="month"><caption><a class="left" href="./calendar.php?y=' . $todayY . '&&m=' . $todayM . '">今月 </a>'; 51 $title .= '<a class="left" href="./calendar.php?y=' . $subY . '&&m=' . $subM . '"><<前月 </a>'; 52 $title .= '<a class="right" href="./calendar.php?y=' . $addY . '&&m=' . $addM . '"> 来月>></a></caption></div>'; 53 54 $headings = ['月', '火', '水', '木', '金', '土', '日']; 55 56 $calendar = '<table class="calendar-table">'; 57 $calendar .= '<thead >'; 58 foreach ($headings as $heading) { 59 $calendar .= '<th class="header">' . $heading . '</th>'; 60 } 61 $calendar .= '</thead>'; 62 $calendar .= '<tbody><tr>'; 63 64 65 $daysInMonth = $dt->daysInMonth; 66 67 for ($i = 1; $i <= $daysInMonth; $i++) { 68 69 $reserve_date = $dt->year . "-" . $dt->month . "-" . $dt->day; 70 $stmt = $dbh->prepare("SELECT * FROM reservations where reserve_date = :reserve_date"); 71 $stmt->bindParam(":reserve_date", $reserve_date); 72 $stmt->execute(); 73 $count = $stmt->rowCount(); 74 75 if ($i == 1) { 76 if ($dt->format('N') != 1) { 77 $calendar .= '<td colspan="' . ($dt->format('N') - 1) . '"></td>'; 78 } 79 } 80 81 if ($dt->format('N') == 1) { 82 $calendar .= '</tr><tr>'; 83 } 84 $comp = new Carbon($dt->year . "-" . $dt->month . "-" . $dt->day); 85 $comp_now = Carbon::today(); 86 87 if ($comp->lt($comp_now)) { 88 $calendar .= '<td class="day" style="background-color:#ddd;">' . $dt->day; 89 } else { 90 91 if ($comp->eq($comp_now)) { 92 93 if ($user_login == true) { 94 $calendar .= '<td class="day" style="background-color:#008b8b;"><a href="./reserve.php?y=' . $dt->year . '&&m=' . $dt->month . '&&d=' . $dt->day . '">' . $dt->day . '</a>'; 95 } else { 96 $calendar .= '<td class="day" style="background-color:#008b8b;">' . $dt->day; 97 } 98 } else { 99 switch ($dt->format('N')) { 100 case 6: 101 if ($user_login == true) { 102 $calendar .= '<td class="day" style="background-color:#b0e0e6"><a href="./reserve.php?y=' . $dt->year . '&&m=' . $dt->month . '&&d=' . $dt->day . '">' . $dt->day . '</a>'; 103 } else { 104 $calendar .= '<td class="day" style="background-color:#b0e0e6">' . $dt->day; 105 } 106 break; 107 case 7: 108 if ($user_login == true) { 109 $calendar .= '<td class="day" style="background-color:#f08080"><a href="./reserve.php?y=' . $dt->year . '&&m=' . $dt->month . '&&d=' . $dt->day . '">' . $dt->day . '</a>'; 110 } else { 111 $calendar .= '<td class="day" style="background-color:#f08080">' . $dt->day; 112 } 113 break; 114 default: 115 if ($user_login == true) { 116 $calendar .= '<td class="day" ><a href="./reserve.php?y=' . $dt->year . '&&m=' . $dt->month . '&&d=' . $dt->day . '">' . $dt->day . '</a>'; 117 } else { 118 $calendar .= '<td class="day" >' . $dt->day; 119 } 120 break; 121 } 122 } 123 } 124 if ($count != 0) { 125 $reservations = $stmt->fetchAll(PDO::FETCH_ASSOC); 126 foreach ($reservations as $reservation) { 127 if ($reservation['user_id'] == $user_id) { 128 $calendar .= '<br><a href="edit_reserve.php?reservation_id=' . $reservation['id'] . '">予約あり</a>'; 129 } else { 130 $calendar .= '<br>予約あり</a>'; 131 } 132 $calendar .= '<br>予約あり</a>'; 133 } 134 $calendar .= '</td>'; 135 } else { 136 $calendar .= '</td>'; 137 } 138 $dt->addDay(); 139 } 140 141 $calendar .= '</tr></tbody>'; 142 $calendar .= '</table>'; 143 144 return $title . $calendar; 145} 146?> 147

試したこと

PHP8.1をインストールしてみましたが、うまく動作しませんでした。
"config": {

"platform-check": false "platform": { "php": "7.1.0" } }

このコードをcomposer.jsonファイルに記述しましたがうまくいきませんでした。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

AbeTakashi

2023/01/25 02:59

PHP8.1をインストールしたとのことですが、実際にバージョンが8.1になってることは確認したでしょうか? phpinfo(); で画面上で表示するなどしてちゃんとバージョンを確認された方がいいと思います。インストールしただけで、実際はそのバージョンで動いていない可能性があります。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問