Проблем със сравняване на две стойности.

sentenello

Registered
Здравейте,
опитвам се да сравня две стойности и ако са напълно еднакви да ми прави бекграунда друг цвят, но без успех.

ето го и кода
Код:
if ($entry->s1 == $entry->final){
echo"<td id='one' style='background-color:green;'>$entry->s1</td>";
}else{
echo"<td id='one'>$entry->s1</td>";
}
 
опитай така

Код:
if ($entry->s1 === $entry->final){
echo"<td id='one' style='background-color:green;'>$entry->s1</td>";
}else{
echo"<td id='one'>$entry->s1</td>";
}
 
Тройното равенство означава, не само стойностите да са равни, но и типа на стойностите, не виждам това как би му помогнало.

Проблема е другаде. Опитали да изкараш със едно echo, тези 2 променливи, да видиш въобще съдържат ли някакви стойности.
 
Ако сравняваш 2 стринга , то тогава ги сравнявай по някаква ключова уникална стойност.
Тоест
'asda ' === 'ásda' = false

Затова можеш да направиш примерно

PHP:
function  hashString($string)
{


return md5(trim($string,' '));
}

И в такъв случай , че ползваш това коеот ти предложих, то лесно можеш да намериш хъде гърми като дадеш var_dump(hashString($entry->final))) ;

PHP:
if(hashString($enrty->final)  === hastString($enty->s1) )  echo "bla bla bla ";
 
Аз не мога да разбера идеята ти, index. :))

Ако пишеш:

var_dump($entry->s1);
var_dump($entry->final);

Ще ти изкара стойностите, дължината и тяхният тип на стринговете, след това проверяваме за разлики.

Защо трябва да правим подобни функции, който ти предложи?
 
Благодаря ви много за отговорите. Успях да се справя като explode стойностите $entry->s1 и $entry->final и тъй като и двете съдържат резултати от типа на (цифра)-(цифра) ги сравних с първоначалния си код.

Тъй като този код не съм го писал аз и не е мой сайта в който го правех, в момента не мога да ви дам точни примери как успях да се справя.
 

Back
Горе