PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (14): [1] 2 3 4 5 6 7 8 9 ... » В конец

> Найдено сообщений: 209
arimanecro Отправлено: 16 Марта, 2018 - 13:44:10 • Тема: debug_backtrace() наоборот - возможно? • Форум: Вопросы новичков

Ответов: 10
Просмотров: 323
оооо..вот это уже идея, спс должно прокатить Здорово
===
andrewkard пишет:
зачем это?


ну это себе для удобства делаю вы*бон )

Например:



чтобы писать в таком синтаксисе, каждый метод должен возвращать this, ну кроме последнего, если он какой-то выводящий или запускающий.

А что если сделать так, чтобы в каждом методе не прописывать this и не зависеть от последовательности вызовов, то есть, в случае, если каждый метод возвращал this, то:

PHP:
скопировать код в буфер обмена
  1. var_dump($app->one()); // object
  2.  
  3. var_dump($app->one()->two()); // object


Тупо и неудобно на самом деле же...А вот что я предлагаю, чтобы синтаксис был "умным":

PHP:
скопировать код в буфер обмена
  1.  
  2. var_dump($app->one()); // результат функции, например будет строка, а не возврат this, как выше
  3.  
  4. var_dump($app->one()->two()); // ага, теперь one понимает, что он должен отработать, а также вернуть this(чего он не делал во второй строчке), чтобы запустился two. Далее two смотрит, если за ним идет three, то кроме отработки он вернет this и т.д по всей цепочке.
  5.  
arimanecro Отправлено: 16 Марта, 2018 - 12:11:06 • Тема: debug_backtrace() наоборот - возможно? • Форум: Вопросы новичков

Ответов: 10
Просмотров: 323
нет, вообще не то )
мне кажется в моем первом посте самое понятное объяснение.
===
вот как $app->one() поймет, идет за ним в стеке вызовов ещё один метод или он один в цепочке?

может на англ.яз будет понятливее,..из той ссылки, что я выше указал:

Цитата:
For instance, if I was to:

$Class->someFunction()->anotherFunction();

In anotherFunction() I can know what previous function was called using debug_backtrace(), but in my case, how can I know from someFunction() that anotherFunction() is going to be called next ? Is this possible in PHP ?
arimanecro Отправлено: 16 Марта, 2018 - 11:52:35 • Тема: debug_backtrace() наоборот - возможно? • Форум: Вопросы новичков

Ответов: 10
Просмотров: 323
andrewkard пишет:
т.е. значит что у него нет методов? Это же по факту объект.


как это нету? One это же и есть метод, когда я говорил "оппа я один" это я говорил от имени One, а не от $app ))
arimanecro Отправлено: 16 Марта, 2018 - 11:16:28 • Тема: debug_backtrace() наоборот - возможно? • Форум: Вопросы новичков

Ответов: 10
Просмотров: 323
andrewkard пишет:
method_exists — Checks if the class method exists


неее )
меня не интересует есть метод или нет, мне нужно знать, находится ли он в цепочке.
Ну я думаю и так понятно что я имею в виду, но все же, ещё немного уточню:

$app->one() -- оппа...я один значит верну только результат
$app->one()->two() -- оппа я не один, значит я не только отработаю, но и верну this

итд

Это получается тот же шаблон Билдер, но только там каждая функция возвращает this, а я хочу это контролировать.
arimanecro Отправлено: 16 Марта, 2018 - 10:21:01 • Тема: debug_backtrace() наоборот - возможно? • Форум: Вопросы новичков

Ответов: 10
Просмотров: 323
andrewkard пишет:
Возможно поможет вызвать debug-backtrace в самом конце?


Нет не поможет, потому что первая функция должна знать, если за ней идет другая ф-ия, то возвращает одно, если нет, то другое.

Может это где-то "завалялось" при парсинге, в синтксическом дереве или что-то в этом роде? туда как-то можно попасть? Ниндзя
arimanecro Отправлено: 16 Марта, 2018 - 09:25:16 • Тема: debug_backtrace() наоборот - возможно? • Форум: Вопросы новичков

Ответов: 10
Просмотров: 323
Привет.

Можно ли как-то узнать, какие функции(методы) будут вызваны, то есть:



Метод one, знает что за ним есть ещё метод two, а метод two, знает о существовании three
Ну или на крайняк, хотябы узнать кол-во методов в цепочке.
=====
Не я один тут ищу ответ на этот вопрос ) но автору так никто и не ответил:
https://stackoverflow[dot]com/questi[dot][dot][dot]xt-function-name
arimanecro Отправлено: 02 Марта, 2018 - 15:48:55 • Тема: Задать опцию, чтобы был не важен регистр букв в URL адресе • Форум: Вопросы новичков

Ответов: 7
Просмотров: 1468
LAPD

а с чего ты решил что он переводит?

http://localhost/test.php?name=VasyA

PHP:
скопировать код в буфер обмена
  1. var_dump($_SERVER["REQUEST_URI"]); // string(20) "/test.php?name=VasyA"
arimanecro Отправлено: 12 Мая, 2017 - 16:33:06 • Тема: Перехват имени класса в spl_autoload_register. Возможно ли? • Форум: Вопросы новичков

Ответов: 1
Просмотров: 152
PHP:
скопировать код в буфер обмена
  1. spl_autoload_register (function($class) {
  2.     return $class.'lala';});
  3.  
  4. (new test());


Fatal error: Uncaught Error: Class 'test'

А хотелось бы:

Fatal error: Uncaught Error: Class 'testlala'
===========
Возможно ли?
arimanecro Отправлено: 05 Мая, 2017 - 12:04:12 • Тема: Сессия или файл, что лучше? • Форум: Вопросы новичков

Ответов: 3
Просмотров: 186
Приветствую.

Возник такой вопрос:

существует довольно-таки большой массив(на 4000 значений).

Есть ли разница между тем поместить его в сессию или в созданный мной файл?
Сессия это тот же самый файл на серваке и каждый раз обращаясь к $_SESSION, PHP производит такую же самую процедуру считывания и записывания, как с обыкновенного файла. Правильно?

1) Тогда получается, что по производительности(чтение/запись) они одинаковы?
2) В каком формате хранятся данные в сессии? Сериализовано? Если да, то получается затрата на сериализация и десериализацию?

Спасибо.
arimanecro Отправлено: 01 Ноября, 2016 - 10:04:48 • Тема: Notice: Array to string conversion • Форум: Вопросы новичков

Ответов: 2
Просмотров: 213
Строитель

это вы пошутили? Не понял Ха-ха
======
речь шла о выведении значения массива внутри двойных кавычек, а не о простом выводе через echo.
======
Я припоминал, что там дело в хитром синтаксисе, но поскольку давно с этим не сталкивался, то подзапамятовал, а сейчас вспомнил.

Вообщем для всех тех, кто согласился с ответом Строителя, а также для самого Строителя, поясняю:

если массив безымянный, то в двойных кавычках это будет записываться так:

PHP:
скопировать код в буфер обмена
  1. $a = ['6' => 'red' , '7'=>'green'];
  2. $k = 6;
  3. echo "Color: $a[$k]"; // Color: red


если массив имеет имя:

PHP:
скопировать код в буфер обмена
  1. $a['colors'] = ['6' => 'red' , '7'=>'green'];
  2. $k = 6;
  3. echo "Color: {$a['colors'][$k]}"; // Color: red
arimanecro Отправлено: 28 Октября, 2016 - 17:48:43 • Тема: Notice: Array to string conversion • Форум: Вопросы новичков

Ответов: 2
Просмотров: 213
Почему??? Не понял

PHP:
скопировать код в буфер обмена
  1. $_SESSION['d'][6] = 777;
  2.  
  3. $k = 6;
  4. echo "$_SESSION[d][$k]";


Ошибка:
Notice: Array to string conversion
и выводит: Array[6];
========
если вардамп, то всё норм:

arimanecro Отправлено: 27 Октября, 2016 - 10:30:44 • Тема: file_get_contents - не отображает всю длину сайта • Форум: Вопросы новичков

Ответов: 2
Просмотров: 139
Цитата:
var_display_max_data


да, оно, спс.
arimanecro Отправлено: 26 Октября, 2016 - 17:34:10 • Тема: file_get_contents - не отображает всю длину сайта • Форум: Вопросы новичков

Ответов: 2
Просмотров: 139
PHP:
скопировать код в буфер обмена
  1. string '<!DOCTYPE html>
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3.         <head>
  4.                 <!-- WARNING: Automated extraction of rates is prohibited under the Terms of Use. -->
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  6. <link rel="meta" href="http://www.xe.com/labels.rdf" type="application/rdf+xml" title="ICRA labels"/>
  7. <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/pics/vocabularyv03/" l gen true for "http://xe.com" r (n 0 s 0 v 0 l 0 oa 0 ob 0 oc 0 od 0 oe 0 of 0 og 0 oh 0 c 0)'... (length=57716)


Почему оставшиеся 57716 символов нет в коде страницы? Может есть какая-то настройка по ограничению закачиваемых байт?
Спасибо.
arimanecro Отправлено: 20 Сентября, 2016 - 11:58:08 • Тема: Почему не попадаю в консоль mysql? • Форум: SQL и Архитектура БД

Ответов: 1
Просмотров: 20
Будучи адептом phpmyadmin, решил наконец попробовать консоль, поэтому ошибка возможно в элементарном

ввожу:
C:\wamp64\bin\mysql\mysql5.7.9\bin\mysql -u root -p

и вот что показывает(снова выкидывает в директорию), хотя, как я понимаю, пароль и логин прошли успешно:

http://imgur[dot]com/a/8FuXz
arimanecro Отправлено: 15 Сентября, 2016 - 16:49:49 • Тема: Как вывести 2 идентичных sql запроса в foreach? • Форум: Вопросы новичков

Ответов: 13
Просмотров: 419
Sail

Цитата:
возьмите всё-таки нечисловой индекс массива в кавычки, иль апострофы.


Вы про $items[title]?

эммм...так это вообще-то запрещает синтаксис, если как вы предлагаете сделать:



то будет ошибка:

Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING)

Можно для удобства воспользоваться фигурными скобками, чтобы не вводить в заблуждение, константа это или нет:


Страниц (14): [1] 2 3 4 5 6 7 8 9 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB