powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / PHP 7.4 alpha2 чудит
4 сообщений из 4, страница 1 из 1
PHP 7.4 alpha2 чудит
    #39834010
shonli95
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Обновил с 7.3.4 до PHP 7.4 и он начал говорить что мой созданный в zend класс TApplication не равен TApplication

Что это может быть?
...
Рейтинг: 0 / 0
PHP 7.4 alpha2 чудит
    #39834014
shonli95
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно тихо поплакать. is_a ($TApplication, 'TApplication') вернула true
...
Рейтинг: 0 / 0
PHP 7.4 alpha2 чудит
    #39834054
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, без слез тут не взглянешь.
...
Рейтинг: 0 / 0
PHP 7.4 alpha2 чудит
    #39834110
shonli95
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нашёл в чём причина. Оказывается они решили - API надо поменять.

И теперь вместо
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
static zend_always_inline zend_string *zend_string_init(const char *str, size_t len, int persistent)
{
	zend_string *ret = zend_string_alloc(len, persistent);

	memcpy(ZSTR_VAL(ret), str, len);
	ZSTR_VAL(ret)[len] = '\0';
	return ret;
}



Надо использовать
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
static zend_string* ZEND_FASTCALL zend_string_init_interned_permanent(const char *str, size_t size, int permanent)
{
	zend_string *ret;
	zend_ulong h = zend_inline_hash_func(str, size);

	ret = zend_interned_string_ht_lookup_ex(h, str, size, &interned_strings_permanent);
	if (ret) {
		return ret;
	}

	ZEND_ASSERT(permanent);
	ret = zend_string_init(str, size, permanent);
	ZSTR_H(ret) = h;
	return zend_add_interned_string(ret, &interned_strings_permanent, IS_STR_PERMANENT);
}



Которая должна в свою очередь закэшировать строку в общей хэш-базе. Иначе он для instanceof не сможет сравнить её, для проверки класса на класс
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / PHP 7.4 alpha2 чудит
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]