Sen tırnak dizi anahtarı çevreleyen gerekir:
if (isset($_COOKIE['COOKIE_LOGIN']) && !empty($_COOKIE['COOKIE_LOGIN']))
setcookie('COOKIE_LOGIN',$objUserSerialized,time() - 86400 );
PHP dizeleri bilinmeyen değişmezleri dönüştürür ve bir uyarı atar. Php.ini muhtemelen uyarıları görüntülemek değil hata raporlama düzeyi vardı ama birisi ya da bir şey güncellenmiş olabilir. Her iki durumda da, bu durumda PHP'nin davranış advantange almak kötü bir uygulamadır.
Daha fazla bilgi için, check out the php documentation:
Her zaman bir dize sayıllı indis tırnak kullanabilirsiniz. $ Foo [bar] değildir Örneğin, foo ['bar'] $, doğrudur.
Bu yanlıştır, ama çalışıyor. Nedeni, bu kod tanımlanmamış bir sabit (bar) yerine bir dize (- tırnak fark 'bar') sahip olmasıdır. PHP gelecekte ne yazık ki böyle bir kod için, aynı ada sahip, sabit tanımlayabilir. PHP otomatik çıplak dize içeren bir dize içine bir çıplak dize (bilinen herhangi bir sembole karşılık gelmez bir tırnaksız dize) dönüştürür çünkü çalışır. Tanımlanmış bir sabit adında bir bar var Örneğin, daha sonra PHP 'bar' dizgesini yerleştirecek ve bunu kullanacaktır.