Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何检查数据库中是否已有内容,如果没有,则输入内容?_Php_Mysql_Wordpress - Fatal编程技术网

Php 如何检查数据库中是否已有内容,如果没有,则输入内容?

Php 如何检查数据库中是否已有内容,如果没有,则输入内容?,php,mysql,wordpress,Php,Mysql,Wordpress,我制作了一个简单的php类,从astrology.com中提取每日星座图,我想在wordpress中使用它(使用$wpdb) 工作原理(理论上): 检查内容是否已在数据库中(并返回) 如果内容不在数据库中,那么添加它(调用我创建的php类) 如果类没有返回内容,那么检查数据库是否有前一天的条目并返回它 如果这些都不起作用,则返回错误消息 问题是我被困在第二点和第三点之间。。。(我不知道如何检查班级是否返回了一些内容,如果没有显示前一天的内容) 您总是要点击//步骤2,因为内容未初始化,因此els

我制作了一个简单的php类,从astrology.com中提取每日星座图,我想在wordpress中使用它(使用$wpdb)

工作原理(理论上):

  • 检查内容是否已在数据库中(并返回)
  • 如果内容不在数据库中,那么添加它(调用我创建的php类)
  • 如果类没有返回内容,那么检查数据库是否有前一天的条目并返回它
  • 如果这些都不起作用,则返回错误消息
  • 问题是我被困在第二点和第三点之间。。。(我不知道如何检查班级是否返回了一些内容,如果没有显示前一天的内容)


    您总是要点击
    //步骤2
    ,因为内容未初始化,因此
    elseif(empty($query)| |$content=='')
    将始终返回true,因为未声明的
    $content
    将“相等”


    您可以尝试:
    $content==”
    (注意额外的“=”),除非它实际上是一个空字符串,否则它将不会为真。

    由于内容未初始化,您总是会点击
    //步骤2
    ,因此
    elseif(empty($query)|$content=''
    将始终返回真,因为未声明的
    $content
    将“等于”


    您可以尝试:
    $content==''
    (注意额外的“=”),除非它实际上是一个空字符串,否则它将不会为真。

    在我看来,您永远无法进入步骤3,因为步骤2满足了步骤3的要求

    elseif( a || b) {
    
    }
    elseif( b ) {
    
    }
    

    如果b是真的,你就永远无法到达elseif(b),因为b在elseif(a | | b)中已经是真的。

    在我看来,你永远无法到达步骤3,因为步骤2满足了步骤3的要求

    elseif( a || b) {
    
    }
    elseif( b ) {
    
    }
    

    如果b是真的,你就永远无法到达elseif(b),因为b在elseif(a | | b)中已经是真的了。

    当然,我不知道这是否能解决你的整体问题,但除非你修正你的逻辑,否则你永远不会知道。我不确定,但我认为你昨天的日期计算不会起作用。可以改为试试这个
    date(“Y-m-d”,time()-60*60*24)谢谢,但它们都返回相同的日期。稍后编辑:如果我有今天和昨天的值,查询将返回今天的内容。如果我有昨天的值并且
    get\u daily\u horoscope
    返回一个字符串,脚本将返回一个字符串(今天的日期)。如果
    get\u daily\u horoscope
    不返回任何内容,并且我在数据库中有一个昨天的值,脚本将返回错误消息(案例4),并为
    内容添加一个空值。这很奇怪……当然,我不知道这是否能解决你的整体问题,但除非你修正你的逻辑,否则你永远不会知道。我不确定,但我认为你昨天的日期计算不会起作用。可以改为试试这个
    date(“Y-m-d”,time()-60*60*24)谢谢,但它们都返回相同的日期。稍后编辑:如果我有今天和昨天的值,查询将返回今天的内容。如果我有昨天的值并且
    get\u daily\u horoscope
    返回一个字符串,脚本将返回一个字符串(今天的日期)。如果
    get\u daily\u horoscope
    不返回任何内容,并且我在数据库中有一个昨天的值,脚本将返回错误消息(案例4),并为
    内容添加一个空值。这很奇怪…谢谢你,我用了一个基于@Martin Sheeks答案的小更新。请检查一下好吗?谢谢,我用了这个,并根据@Martin Sheeks的答案做了一个小的更新。请检查一下好吗?