PHP.SU

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

Страниц (8): « 1 2 3 [4] 5 6 7 8 »

> Найдено сообщений: 118
kochan10 Отправлено: 28 Июня, 2010 - 15:20:16 • Тема: CLASS метод в методе • Форум: Программирование на PHP

Ответов: 22
Просмотров: 1447
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. function method1($string){
  3. global $var2;
  4. function method4(){
  5. return preg_replace("/2010/isU","2013",$var2);
  6. }
  7. $var2=$string;
  8. echo method4();
  9. }
  10. method1("PHP is proud to announce TestFest 2010. TestFest is PHP's annual
  11. campaign to increase the overall code coverage of PHP through PHPT tests. During
  12. TestFest, PHP User Groups and individuals around the world organize local events
  13. where new tests are written and new contributors are introduced to PHP's testing
  14. suite.");
  15. ?>

смотри третью строчку. вот это должно быть, чтобы работало.
kochan10 Отправлено: 28 Июня, 2010 - 15:16:26 • Тема: CLASS метод в методе • Форум: Программирование на PHP

Ответов: 22
Просмотров: 1447
потому что у тебя $var2 не передаётся в четвёртый метод. в самом начале первого метода пропиши global $var2;
и всё норм будет.а в четвёртом методе это лишнее. и не вкладывай методы друг в друга. лучше просто вызывай один из другого. так стабильнее. можно вкладывать, но это может повлечь серьёзные ошибки в дальнейшем
kochan10 Отправлено: 28 Июня, 2010 - 15:08:32 • Тема: CLASS метод в методе • Форум: Программирование на PHP

Ответов: 22
Просмотров: 1447
да! видишь, у тебя первый метод сделан так, что он. когда его вызывают, декларирует второй метод. и когда ты его вызываешь второй раз, он снова пытается декларировать второй метод. но он уже задекларирован! второй раз нельзя!
kochan10 Отправлено: 28 Июня, 2010 - 15:00:19 • Тема: CLASS метод в методе • Форум: Программирование на PHP

Ответов: 22
Просмотров: 1447
PHP:
скопировать код в буфер обмена
  1. Fatal error: Cannot redeclare method2() (previously declared in C:\xampp\htdocs\test.php:8) in C:\xampp\htdocs\test.php on line 8

Эта функция уже создана, второй раз нельзя. Поэтому лучше создавать функции там, где будет практически невозможно вернуться к этим строкам, для повторного "создания" функции.
(Добавление)
ааааа, публичная - это означает, что её значение не сбросится, после выполнения функции, а останется. чтобы с ней можно было и потом работать. поэтому public $var2 здесь не катит...
kochan10 Отправлено: 28 Июня, 2010 - 14:54:25 • Тема: CLASS метод в методе • Форум: Программирование на PHP

Ответов: 22
Просмотров: 1447
переменная var2, хоть и объявлена в четвёртом методе публичной, но она почему-то не передаётся из первого метода
(Добавление)
кстати, попробуйте вызвать первый метод ещё раз. сразу после его первого вызова, скажем. и вы поймёте, почему так делать нежелательно.
kochan10 Отправлено: 28 Июня, 2010 - 14:09:57 • Тема: Автоматический переход по ссылке • Форум: Программирование на PHP

Ответов: 5
Просмотров: 3752
ну, а если header("Location: ***""), то нужно, чтобы никакие символы, даже пробелы, клиенту не ушли до этого заголовка
kochan10 Отправлено: 28 Июня, 2010 - 13:27:16 • Тема: CLASS метод в методе • Форум: Программирование на PHP

Ответов: 22
Просмотров: 1447
функции задаются отдельно. потому что если ты верхнюю по вложенности функцию вызовешь второй раз, то будет ошибка, потому что она попробует создать уже созданную функцию. лучше задавать их отдельно, без вложенностей, и просто вызывать одну функцию из другой
(Добавление)
и ещё. ты вызываешь третий метод, используй в нём переменную $var1, которую ты не задал. нужно тогда прописать что-то вроде
PHP:
скопировать код в буфер обмена
  1. $ob->var1="PHP is proud to announce TestFest 2010. TestFest is PHP's annual
  2. campaign to increase the overall code coverage of PHP through PHPT tests. During
  3. TestFest, PHP User Groups and individuals around the world organize local events
  4. where new tests are written and new contributors are introduced to PHP's testing
  5. suite."

(Добавление)
и третий метод уже не может обращаться к классу напрямую, так как он вложен не в класс, а в функцию.
kochan10 Отправлено: 27 Июня, 2010 - 15:26:51 • Тема: Шаблонизатор • Форум: Программирование на PHP

Ответов: 17
Просмотров: 949
Ты свою CMS'ку пишешь?)))
(Добавление)
Для пути используй константы или специальные переменные, в которых сам путь будешь хранить.
kochan10 Отправлено: 27 Июня, 2010 - 14:19:33 • Тема: Шаблонизатор • Форум: Программирование на PHP

Ответов: 17
Просмотров: 949
Скорее всего, да. или без первого слеша, сразу skins/shablon/main.tpl
kochan10 Отправлено: 27 Июня, 2010 - 14:04:35 • Тема: Шаблонизатор • Форум: Программирование на PHP

Ответов: 17
Просмотров: 949
Почти, только...
1) Название класса и функций начинай с большой буквы.
2) в 13 строчке вместо

нужно это:

3) в функциях лучше делать не echo, а return (20 строчка). Так можно вывести результат в любом месте написав

Так же благодаря этому можно результат выполнения функции взять в переменную

P.S. args - это аргументы, всякие разные.
kochan10 Отправлено: 27 Июня, 2010 - 13:40:34 • Тема: Шаблонизатор • Форум: Программирование на PHP

Ответов: 17
Просмотров: 949
1) Класс задаётся {} а не ()
2) Имя класса начинается с Заглавной буквы, и первой функции тоже. Желательно и всех остальных.
(Добавление)
3) Функции задаются
PHP:
скопировать код в буфер обмена
  1. function Name(args){
  2. //Тело функции
  3. }
kochan10 Отправлено: 25 Июня, 2010 - 16:52:30 • Тема: Загрузка файлов • Форум: Программирование на PHP

Ответов: 17
Просмотров: 1790
$mini_img ="files/".$date_dir."/".$_FILES['userfile']['name'];
Он заносит в базу то, что ему и дают=)
Остальное по-детальнее посмотрю
kochan10 Отправлено: 22 Июня, 2010 - 21:11:47 • Тема: С внешки на локалку • Форум: Напишите за меня, пожалуйста

Ответов: 4
Просмотров: 50
Тоже хорошо будет=)
kochan10 Отправлено: 14 Мая, 2010 - 19:27:24 • Тема: Соединение с БД MySql • Форум: SQL и Архитектура БД

Ответов: 4
Просмотров: 35
Тогда POST...или лучше сокеты используйте, правда, я не знаю как=)
kochan10 Отправлено: 14 Мая, 2010 - 19:13:15 • Тема: Кодировка • Форум: Программирование на PHP

Ответов: 6
Просмотров: 483
Попробуйте браузеру в заголовке отправить кодировку. Точно не помню, что-то вроде
как-то так

Страниц (8): « 1 2 3 [4] 5 6 7 8 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB