
Aleksandr
04.03.2019
18:35:05

Dziro
04.03.2019
18:35:37
еси строка в утф например то strlen посчитает 1 символ как 4

Aleksandr
04.03.2019
18:36:41

Google

Dziro
04.03.2019
18:37:12
примерно 4

Aleksandr
04.03.2019
18:37:47
примерно 4
Если мы возьмем utf-8 и русские буквы, то будет 2 байта. Если английские - 1 байт.

dypa
04.03.2019
20:00:53

Aleksandr
04.03.2019
20:01:39
Поэтому сейчас он считает на самом деле байты, а не символы.

dypa
04.03.2019
20:04:29

Aleksandr
04.03.2019
20:05:38
Может хватит?

dypa
04.03.2019
20:09:57

garrip91
04.03.2019
20:10:24

Aleksandr
04.03.2019
20:11:08

garrip91
04.03.2019
20:11:51
Люди, кто поможет разобраться в 1-м небольшом участке кода на php?

Google

Виталя
04.03.2019
20:23:14
Всем привет
Кто использовал PhpWord для конвертации docx to html ?
Не отображаются картинки в html документе, кто подскажет в чем может быть трабл

dypa
04.03.2019
20:24:54

Aleksandr
04.03.2019
20:28:18

dypa
04.03.2019
20:31:20

Aleksandr
04.03.2019
20:32:51

dypa
04.03.2019
20:36:03

Aleksandr
04.03.2019
20:37:17

dypa
04.03.2019
20:40:10

Aleksandr
04.03.2019
20:41:01

dypa
04.03.2019
20:42:21

Aleksandr
04.03.2019
20:43:17
Ладно, теперь точно надоело.

dypa
04.03.2019
20:44:22
печалька :(

ustasby
04.03.2019
20:53:51

dypa
04.03.2019
20:56:11

ustasby
04.03.2019
20:57:38

dypa
04.03.2019
21:00:30

ustasby
04.03.2019
21:08:04
на исходный код пхп.
https://github.com/php/php-src/blob/db0079023421b8048f090ee04adb992e09132553/Zend/zend_types.h#L772 вот что бы ты долго не искал

Google

dypa
04.03.2019
21:20:13

ustasby
04.03.2019
21:20:37
идет вызов макроса RETVAL_LONG(s1_len); потом ZVAL_LONG, то есть именно байты, поправьте если я не прав

dypa
04.03.2019
21:23:34
насколько я знаю - вызывается https://phpinternals.net/docs/zstr_len

ustasby
04.03.2019
21:24:25
и там есть интересное условие, если это не строка, то RETVAL_LONG(u_countChar32(s1.u, s1_len));, как раз в юникоде, может с 6 версии осталось или как это работает
ZEND_FUNCTION(strlen)
{
zstr s1;
int s1_len;
zend_uchar s1_type;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "t", &s1, &s1_len, &s1_type) == FAILURE) {
return;
}
if(s1_type == IS_STRING) {
RETVAL_LONG(s1_len);
} else {
RETVAL_LONG(u_countChar32(s1.u, s1_len));
}
}
хотя недавно было еще
ZEND_FUNCTION(strlen)
{
char *s1;
int s1_len;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &s1, &s1_len) == FAILURE) {
return;
}
RETVAL_LONG(s1_len);
}
короче может уже поддержку utf вводят
хотя если не ошибаюсь то s1_len это количество байт в параметре


garrip91
04.03.2019
22:12:08
Люди, почему такой код выдаёт трушки? как такое возможно? Ведь я закомментировал всю функцию
<?php
// Функция "isCorrect($param)" (для проверки корректности строки согласно условию), в которой параметр "$param" будет использоваться в качестве примера:
/* function isCorrect($param) {
$symbols = array('[' => ']', '{' => '}', '(' => ')');
$all = strlen($param);
for($i=0;$i<$all;$i=$i+2){
$first = $param[$i];
$symbol = $symbols[$first];
if($symbol != $param[$i+1]) return false;
if($symbol == $param[$i+1]) continue;
}
return true;
} */
var_dump(assert(isCorrect('') === true));
var_dump(assert(isCorrect('()') === true));
var_dump(assert(isCorrect('{(})[]') === false));
?>

ustasby
04.03.2019
22:39:06

Terminator
05.03.2019
05:16:46
Юрий Зрянин будет жить. Поприветствуем!

Игорь
05.03.2019
09:42:25
всем привет, подскажите кто знает, проверяем права на запись в папки через is_writable, возвращает false, на сервере nginx, работает от имени nginx, права на папки пробуем ставить 777 но нет результата

Aleksandr
05.03.2019
09:45:56

Игорь
05.03.2019
09:46:25
по всей ветке начиная с папки домена пробовали ставить 777

Terminator
05.03.2019
09:48:17
@sokhranov будет жить. Поприветствуем!

Pavel
05.03.2019
10:05:39

Игорь
05.03.2019
10:07:36
думаю нет, а можно это как то проверить?

Google

Pavel
05.03.2019
10:20:23
Да как то можно. Кажись /etc/fstab

Dmitry
05.03.2019
10:25:21
Так нужно не "начиная с папки домена", а начиная от корня фс

Vladimir
05.03.2019
10:33:19
Ребята, привет, помогите разобраться, уже третий час бьюсь. Есть строка https://pastebin.com/zwi6NP7H не могу её распарсить.
json_decode возвращает null
понятно что формат неверный, у меня на JS все норм парсится, а хочу в контроллере сделать кое-какие манипуляции, и никак не выходит

Dmitry
05.03.2019
10:39:04
попробуй trim сказать сначала на строку
и посмотри ошибку json декода

Vladimir
05.03.2019
11:54:12
и посмотри ошибку json декода
JSON_ERROR_SYNTAX синтаксическая ошибка, но вот что странно - пробую эту же строку проверить на валидность - все норм. И пробую в sandbox тоже все норм

Pavel
05.03.2019
11:56:10
Да валидная эта строка. А ты пытаешься разкодить какую-то другую.

Vladimir
05.03.2019
11:58:14

Алексей
05.03.2019
11:58:58

Vladimir
05.03.2019
12:00:38

Алексей
05.03.2019
12:01:48
как ты ее получаешь ?

Сасный
05.03.2019
12:02:56
телепатов тут нет

Vladimir
05.03.2019
12:06:09

Сасный
05.03.2019
12:06:35

Vladimir
05.03.2019
12:07:35
https://pastebin.com/R8S1kVjj
скриншот не могу скинуть, логи тоже в пастбин вложил
https://pastebin.com/0nGvjruc

Google

Vladimir
05.03.2019
12:11:48
оппа, мне тут одна штука не нравится. У меня в БД строка выглядит по другому
[{"id_option":17,"excludes":[

Сасный
05.03.2019
12:13:04
http://sandbox.onlinephpfunctions.com/code/d51284c4b6e986bf8951073cc32fdb509b0f6bc2
Строка твоя валид, если выглядит ровно так как показываешь. А в базе у тебя экранированный вариант лежит.
Экранируй кавычки взад и потом разбирай

Vladimir
05.03.2019
12:15:30

Алексей
05.03.2019
12:28:09
тии пашютииил))) ?

Vladimir
05.03.2019
12:34:42
я знаю что перед кавычками обратный слеш ставится

Pavel
05.03.2019
12:39:54
Ну вот, я же говорил - не с той строкой ты связался ))
Неправильно ты работаешь с базой, убери лишние htmlspecialchars()

Алексей
05.03.2019
12:40:37
удалять
то есть сначала преобразовать в символы - потом функцией обратного экранирования (извиняюсь)
? пробовал

Sergey
05.03.2019
13:54:45
Добрый день, ищу опытного PHP разработчика.....
https://phpclub.ru/talk/threads/%D0%A2%D1%80%D0%B5%D0%B1%D1%83%D0%B5%D1%82%D1%81%D1%8F-middle-php-developer-%D0%A3%D0%B4%D0%B0%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE-20-40-%D1%87%D0%B0%D1%81%D0%BE%D0%B2-%D0%BD%D0%B5%D0%B4%D0%B5%D0%BB%D1%8E.85796/

Pavel
05.03.2019
14:01:04
Как это никаких фреймворков? ?