php - date() 函数的问题。需要从月初开始计算

标签 php mysql

好的,所以我有这个代码。

        else if($_POST['sdate'] == 'this month')
                {


                        $startdate = date("m/d/y");
                        $newdate = Datetime::createFromFormat("m/d/y",$startdate);
                        $dpicker = $newdate->format("Y-m-d");
                        echo $dpicker;

                        $enddates = date("m/d/y");
                        $newEdate = Datetime::createFromFormat("m/d/y",$enddates);
                        $newEdate->modify('-20 day');
                        $edpicker = $newEdate->format("Y-m-d");
                        echo $edpicker;



                        $thdate = $dpicker;
                        $thdates = $edpicker;
                        $sql = "SELECT * FROM orders WHERE loggedtime BETWEEN :times AND :time";
                        $q=$con->prepare($sql);
                        $q->bindparam(":time", $thdate);
                        $q->bindparam(":times", $thdates);
                        $q->execute();
                        while($data=$q->fetch(PDO::FETCH_ASSOC))
                        {
                            echo $data['customer'];
                        }

                }

所以现在 $edpicker 设置为从今天起回溯 20 天...我希望它计算出今天是 7 号,所以只回溯 7 天..我想要那个变量始终返回到该月的第一天。所以如果今天是 18 号.. 就会回到 18 天。

最好的方法是什么?

最佳答案

$firstDayOfMonth = new\DateTime('本月第一天');

关于php - date() 函数的问题。需要从月初开始计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34662030/

相关文章:

php - 需要加速这个 php 脚本

php - 使用 PHP for MYSQL 获取字符串左右两侧的数字

php - 提交后弹出成功消息

mysql - SELECT WHERE field!=value 在mysql中是怎么做的?

php - echo 当前行数

javascript - 将 json 数据附加到 HTML 列表框

php - CakePHP 获取 IP 地址

MySql 查询动态地将行转换为按 DATA_FORMAT 分组的列

mySQL Multi Join from 2 语句

mysql - 如何在多行的单列中插入值?