-1

以前は、通常の SQL コードを使用してデータベースにデータを挿入し、("") を使用して空の var をデータベースに挿入していました。

現在、pdo を使用し、(NULL) を使用して空の値をデータベースに挿入しています。

("") と (NULL) が異なることはわかっています。しかし、NULL である変数をスクリプト化する際に問題が発生します....まあ、説明が苦手なのかもしれません。私のスクリプトを見てみましょう:

$problem=$rs['problem']; ///Here comes with the NULL from database.

    if (is_null($problem)) {
        echo"this is null";
    } else {
        echo"this is not null";
    } 

OR
    if (empty($problem) ) {
        echo "this is null";
    } else {
        echo "this is not null";
    } 

OR 
    if (isset($problem)==NULL) {            
        echo "this is null";
    } else {
        echo "this is not null ";           
    }

テーブルに空があるかデータがあるかに関係なく、これら3つのスクリプトから得られる結果は「これはnullです」だけです

これを正しく取得する方法がわかりません。

4

1 に答える 1

0

空の値は NULL または '' (空の文字列) のいずれかであるということですか?

これを試して:

if (is_null ($problem) || empty ($problem))
{
   echo "This is null";
}
else
{
   echo "This is not null";
}

ところで、タイプミスかどうかはわかりませんが、echo の後に空白がありません。そのはずecho "This is null";

于 2013-08-11T08:05:25.353 に答える