私のプロジェクトでは、mysql テーブルの値を更新する必要があるため、ユーザーが自分のプロファイルを表示すると、プロファイルを更新できます。プロファイルを変更するかどうかを決定します。彼/彼女が情報を更新したかどうかを確認したいので、データベースからそのユーザー情報を取得し、彼/彼女が入力した現在の情報を確認し、値が変更された場合は、その変更された値を別の配列に保存し、変更された情報のみを保存します. したがって、strcmp( str1, str2) 関数を使用しますが、機能しないため、「===」を使用します。これは、名前、パスワードなどの小さなデータに対してのみ機能します。 /彼女の伝記であろうとなかろうと、私はその機能を使用していますが、機能しません。
私のコード::
<?php
$users = $user->user_info_by_id($object->id); // get user's info from database
foreach( $users as $user ) { //
if( $user->user_name === $arrayValue['user_name'] ) // here $arrayValue['user_name'] is the recent info that user sent to update his profile
echo "<br /> value matched"; // it matched
else {
echo "<br /> value not matched";
}
if( $user->user_biography === $arrayValue['user_biography'] ) // it doesn't work, here 'user_biography' is 'text' type data in mysql database
echo "<br /> value matched";
else
echo "<br /> value not matched"; // answer is always 'value not matched'
}
?>