Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
2 / 2 / 1
Регистрация: 24.01.2013
Сообщений: 80
1

Теряется значение переменной

12.06.2015, 15:17. Показов 865. Ответов 14
Метки нет (Все метки)

Вот упрощённый код

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$a = array('alias','title','desc'...);
 
$alias = $a['alias'];
$title  = $a['title'];
$desc = $a['desc']; // ~30 000 символов (содержит html)
 
echo $alias.'<br/>'; // Значение есть
echo $title.'<br/>'; // Значение есть
echo $desc.'<br/>'; // Значение есть
 
if (in_array($alias,$alias_arr)) {
   echo $alias.'<br/>'; // Значение есть
   echo $title.'<br/>'; // Значение есть
   echo $desc.'<br/>'; // !!! Значения нет, пустая переменная. var_dump говорит $desc = NULL
}
Подскажите что может быть не так, уже голову сломал.

Добавлено через 29 минут
Ну или так
PHP
1
2
3
4
5
6
7
$desc = serialize($a['desc']);
 
echo $desc.'<br/>'; // Значение есть
 
if (in_array($alias,$alias_arr)) {
   $desc; // var_dump говорит: string(2) "N;"
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.06.2015, 15:17
Ответы с готовыми решениями:

Php-wordpress теряется значение переменной
Всем привет! Столкнулся с очень странной штукой. У меня есть форма (пишу ее в вордпрессовском...

При Post передаче серилизованного массива теряется 1 значение
Всем привет. Такая проблема // Собираю массив arr = ; foreach (...) { dop = ; dop...

Как сделать чтобы название переменной, было значение другой переменной?
Я хочу сделать следующее: пример: $test1 = &quot;aver&quot;; $test2 = &quot;12345&quot;; В конечном итоге, я хочу...

Присвоить значение php переменной из переменной JavaScript
Есть такой код: &lt;!doctype html&gt; &lt;html&gt; &lt;head&gt; &lt;style type=&quot;text/css&quot;&gt; &lt;/style&gt; ...

14
1937 / 1762 / 824
Регистрация: 23.01.2014
Сообщений: 6,207
12.06.2015, 15:19 2
Цитата Сообщение от utopia Посмотреть сообщение
Подскажите что может быть не так, уже голову сломал.
Отображение ошибок PHP включите и он Вам напишет в чем дело, голову ломать не нужно...
PHP
1
$a = array('alias','title','desc');
Вот тут вы создаете массив с тремя значениями $a[0] =' alias', $a[1] = 'title', $a[2] = 'desc'.
PHP
1
$alias = $a['alias'];
А вот тут Вы пытаетесь взять элемент массива $a с ключом 'alias', которого у него нет. У него есть ключи 0, 1, 2. А потом еще и обманываете что "значение есть".
PHP
1
echo $alias.'<br/>'; // Значение есть
Настоящим результатом выполнения скрипта будет:
Код
Notice: Undefined index: alias in D:\web\www\html\index.php on line 4
Notice: Undefined index: title in D:\web\www\html\index.php on line 5
Notice: Undefined index: desc in D:\web\www\html\index.php on line 6

Notice: Undefined variable: alias_arr in D:\web\www\html\index.php on line 12
Warning: in_array() expects parameter 2 to be array, null given in D:\web\www\html\index.php on line 12
Вы хотя бы проверяйте свой код, прежде чем его выкладывать и говорить как там что работает...
0
2 / 2 / 1
Регистрация: 24.01.2013
Сообщений: 80
12.06.2015, 15:23  [ТС] 3
Исправил. Ошибка была тут, а не в моём коде. Вопрос остался(

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$a = array('alias'=>qwe,'title'=>qwe2,'desc'=>qwe3...);
 
$alias = $a['alias'];
$title  = $a['title'];
$desc = $a['desc']; // ~30 000 символов (содержит html)
 
echo $alias.'<br/>'; // Значение есть
echo $title.'<br/>'; // Значение есть
echo $desc.'<br/>'; // Значение есть
 
if (in_array($alias,$alias_arr)) {
   echo $alias.'<br/>'; // Значение есть
   echo $title.'<br/>'; // Значение есть
   echo $desc.'<br/>'; // !!! Значения нет, пустая переменная. var_dump говорит $desc = NULL
}
0
2 / 2 / 1
Регистрация: 24.01.2013
Сообщений: 80
12.06.2015, 15:26  [ТС] 4
Вот мой код. Все переменные на месте, кроме $dec_full. Обращение к $arraEl['desc']['full'] тоже ничего не даст
Миниатюры
Теряется значение переменной  
0
1937 / 1762 / 824
Регистрация: 23.01.2014
Сообщений: 6,207
12.06.2015, 15:28 5
Цитата Сообщение от utopia Посмотреть сообщение
Вопрос остался(
Выложите НОРМАЛЬНЫЙ код ЦЕЛИКОМ и задайте нормально вопрос. Результат выполнения скрипта который Вы выложили:
Код
Parse error: syntax error, unexpected '.' in D:\web\www\html\index.php on line 2
Если убрать многоточие:
Код
Notice: Use of undefined constant qwe - assumed 'qwe' in D:\web\www\html\index.php on line 2
Notice: Use of undefined constant qwe2 - assumed 'qwe2' in D:\web\www\html\index.php on line 2
Notice: Use of undefined constant qwe3 - assumed 'qwe3' in D:\web\www\html\index.php on line 2
qwe
qwe2
qwe3
Notice: Undefined variable: alias_arr in D:\web\www\html\index.php on line 12
Warning: in_array() expects parameter 2 to be array, null given in D:\web\www\html\index.php on line 12
Повторюсь. Включите ошибки php и выполните код сами прежде чем выкладывать его сюда...
0
2 / 2 / 1
Регистрация: 24.01.2013
Сообщений: 80
12.06.2015, 15:35  [ТС] 6
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
ini_set('error_reporting', E_ALL);
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
 
$a = array('alias'=>'qwe','title'=>'qwe2','desc'=>'qwe3');
$alias_arr = array('qwe');
 
$alias = $a['alias'];
$title  = $a['title'];
$desc = $a['desc']; // ~30 000 символов (содержит html)
 
echo $alias.'<br/>'; // Значение есть
echo $title.'<br/>'; // Значение есть
echo $desc.'<br/>'; // Значение есть
 
if (in_array($alias,$alias_arr)) {
    echo $alias.'<br/>'; // Значение есть
    echo $title.'<br/>'; // Значение есть
    echo $desc.'<br/>'; // !!! Значения нет, пустая переменная. var_dump говорит $desc = NULL
}
Включил. Всё спокойно, ошибок и предупреждений нет. Код примера работает как нужно.

В моём коде, см. картинку выше также ошибок и предупреждений нет, но переменная теряется.
0
1937 / 1762 / 824
Регистрация: 23.01.2014
Сообщений: 6,207
12.06.2015, 15:38 7
Цитата Сообщение от utopia Посмотреть сообщение
но переменная теряется.
Результат работы скрипта
Код
qwe
qwe2
qwe3
qwe
qwe2
qwe3
Что где теряется?
0
2 / 2 / 1
Регистрация: 24.01.2013
Сообщений: 80
12.06.2015, 15:39  [ТС] 8
В моём коде, см. картинку выше (повторно не даёт загрузить)
Результат: string(0) ""
0
Заблокирован
12.06.2015, 15:43 9
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
ini_set('error_reporting', E_ALL);
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
 
$a = array('alias'=>'qwe','title'=>'qwe2','desc'=>'~30 000 символов (содержит html)');
$alias_arr = array('qwe');
 
$alias = $a['alias'];
$title  = $a['title'];
$desc = $a['desc']; // ~30 000 символов (содержит html)
 
 
if (in_array($alias,$alias_arr)) {
    echo $alias.'<br/>'; // Значение есть
    echo $title.'<br/>'; // Значение есть
    echo $desc.'<br/>'; // !!! Ну и чё ты гонишь где она у тебя потерялась???
}
0
2 / 2 / 1
Регистрация: 24.01.2013
Сообщений: 80
12.06.2015, 15:46  [ТС] 10
Trukl , вставлял, в этом коде работает, но не в моём.

Ну вот пик чтоб понятно было. Только тут я с куками поизвращался, но смысл тотже. Первый выведет значение, на втором дуля
Миниатюры
Теряется значение переменной  
0
Заблокирован
12.06.2015, 15:48 11
Цитата Сообщение от utopia Посмотреть сообщение
вставлял, в этом коде работает, но не в моём.
Твою налево ну так дай свой код чудило.
0
2 / 2 / 1
Регистрация: 24.01.2013
Сообщений: 80
12.06.2015, 16:02  [ТС] 12
Полный не получится, там проект yii + файл на 300Мб с данными подключать нужно...

А основной кусок вот он на картинке. Извращаюсь как могу, результат один
Миниатюры
Теряется значение переменной  
0
Заблокирован
12.06.2015, 16:07 13
Ну и ищи ошибку на своей картинке, не морочь людям голову.
0
1937 / 1762 / 824
Регистрация: 23.01.2014
Сообщений: 6,207
12.06.2015, 16:20 14
Цитата Сообщение от utopia Посмотреть сообщение
В моём коде, см. картинку выше (повторно не даёт загрузить)
Результат: string(0) ""
ну значит у Вас другой код.
0
Заблокирован
12.06.2015, 16:20 15
Каждый раз картинка новая а проблема старая ))) На последней уже классы пошли. Что дальше?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.06.2015, 16:20

Как подставляя значение переменной к неполному имени переменной обратиться "куда надо"?
Салют, нужно в циклах обращаться к разным переменным ($b1-$b5), но так ручками писать муторно,...

Как присвоить значение переменной если значение позже устанавливается в цикле?
Кратко: if($_SESSION != &quot;&quot;){ $row = mysql_num_rows(mysql_query(&quot;...&quot;)); if($row &gt; 0) $panel...

Как задать значение сессию, чтобы значение было переменной из js?
Добрый день.как задать значение сессию,чтобы значение было переменной из js. Есть код success:...

Как назначить переменной php-скрипта значение переменной скрипта js?
Как назначить переменной php-скрипта значение переменной скрипта js? Javascript находится в другом...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.