Fenix
-
Posts
341 -
Joined
-
Last visited
Content Type
Profiles
Forums
Calendar
Store
Posts posted by Fenix
-
-
Сервер, судя по названию =)
Хотя, и на десктопе можно поставить LAMP, если есть желание комп еще как-неть использовать. А вот наоборот малость сложнее.
Я на виртуальную машину ставлю. Если тоявиться желание как-нибудь по другом использовать убунту, то дескпот версию могу доставить
-
Дано: ubuntu desktop edition и ubuntu server edition
Назначение: тестовый сервер с php и mysql
Какая версия лучше для этого назначения?
-
ИМХО, сделать финальный класс контроллер, в котором все будет собираться, т.е. остальные классы являются не зависимы.
писал, писал очень много писал, передумал, удалил все
Можно поподробнее
-
Решил написать свой фреймворк и столкнулся с проблемой структуры классов. Подумал над этим и придумал такие варианты:
1. С наследованием. Каждый класс насследует базовый класс (класс фреймворка) или другой класс, который также наследует базовый класс. Тоесть образуется некое дерево, которое связывает все классы с базовым классом.
2. Без наследования. Каждый клас существует по отдельности, независя от других классов. Наследование есть только в контроллерах и
моделях, которые наследуют главный класс контроллера или модели.
Какой лучше не знаю. Подскажите что лучше или предложите свой вариант
-
Значит с базой связаться не может. Проверьте еще раз реквизиты подключения к базе (хост, имя пользователя, пароль).
Все правильно.
Спасибо, исправил.
-
При попытке соединения с базой выводится следуюющее:
Could not connect: mysqlnd cannot connect to MySQL 4.1+ using old authenticationКод:
$connect = mysql_connect($this -> db_hostname, $this -> db_username, $this -> db_password) or die("Could not connect: " . mysql_error());
print ("Connected successfully");
mysql_close($link);Что это значит и как это исправить.
-
Наверное денег дал.
Мне есть куда потратить деньги.
а как получил? Расскажи подробно и обстоятельно.Очень просто. День думал над темой, полчаса писал статью и опубликовал в песочницу, за что мне дал инвайт совершенно незнакомый человек, с которым я не общаюсь, причем совершенно бесплатно. Захотел, добился.
-
Собственно, может кто-нить поделится инвайтом? Постоянно читаю, вот, захотел поучаствовать в комментировании...
Статьи писать не умею (да и не могу придумать, о чём) - поэтому просто прошу =)
и мне инвайт!на работе в последнее время только и делаю что хабр читаю.
И что? Я тоже не умею писать статьи. И что дальше? Я же всеравно получул инвайт, причем не по блату, а заработал.
-
Стоит ли переходить на PHP 5.3?
-
Разбери этот пример:
$info = " http://my_site.ru/test1/test2 ";
$url2 = explode("/", $info);
echo $url2[1];Переменной $info мы присвоили некое строковое значение, пусть это будет урл для наглядности.
Через explode("/", $info); мы разбиваем эту строку ориентируясь на слеши (по слешам "/"), так же можно по другим знакам, типа: " " - пробел, ":" - двоеточие и т.д..., затем результат (массив с результатом) присваиваем некой переменной $url2.
Ну а далее, мы получили массив и можем по ключу извлечь нужный нам отрывок (фрагмент) строки: echo $url2[1];
А что надо eписать в .htaccess чтобы он не искал файл http://my_site.ru/test1/test2/index.php , а направлял все надросы на http://my_site.ru/index.php ипри любом доменном имени.
Все, написал.
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L] -
Что именно не понял?
Давай конкретный пример и разберем его.
Я вообще не понял что такое эксплоуд.
Что именно не понял?Давай конкретный пример и разберем его.
Я вообще не понял что такое эксплоуд.
-
Начинай читать отсюда.
все равно не понял
-
Потому что модреврайт и эксплоуд решают данную задачу на ура. А если еще и почитать, что в php можно вызывать метод, название которого записано в переменной, то данный вопрос вообще не возникнет.
Что такое эксплоуд? Искал, не находит.
-
Это примитив.
Хм... Сказать что примитив сказали. А объяснить?
-
Это примитив.
Почему?
-
Может парсинг?
Незнаю как сказать. Допустим если послали такой адресс:
http://example.com/blog/post/123
то исполнится функция post, контроллера blog, и выведется пост с id=123
Ёще пример:
http://example.com/shop/product/5/123/
то исполнится функция product, контроллера shop, и выведет продукт с id=123 из категории с id=5
Т.е. это довольно сложная штука.
-
Роутинг чего?
В смысле? Роутинг URL, т.е. разбор строк типо: http://example.com/shop/4/494/
-
Решение принято - писать. Мне уже надоело разбираться с CodeIgniter, который нехошет соединяться с базой при правильных данных.
Есть вопрос к програмистам на этом форуме. Кто-нибудь хочет помочь? Существуют такие вещи, без которых приложение работало бы, но с ними работает лучше. Например, роутинг. Такие вещи я сам не сделаю. Кто-нибудь хочет помочь?
-
Собираюсь писать на пыхе.
-
Обязательно писать.
Лучше набить шишки на своем опыте, потому что на чужом это не так прикольно.
Тогда с каким опытом его лучше всего начинать писать?
-
Нужно ли писать свой фреймворк или лучше пользоваться готовым?
-
@fenix, контроллер пишется с двумя ll, controller — регулятор, управляющее устройство
знаю
Час пришел со школы и решил почитать "умную" книжку. Случайно открываю главу про юнит-тесты и вижу код:
class ValidatorTest extends PHPUnit_Framework_TestCase{
//...
public function testValidate_FalsePass(){
$store = $this -> getMock("UserStore");
$this -> validator = new Validator($store);
$this -> validator -> validateUser("bob@example.com", "wrong");
}
//...
} -
Ну походу она содержит не имя класса, а экземпляр класса, т.е. сам объект.
Только я не понимаю почему не записать так:
class SomeClass extends SomeOtherClass {
public function someMethod() {
$someData = 'some data';
return $someData;
}
}
class SomeOtherClass {
public function someOtherMethod() {
$someData = 'some data';
return $someData;
}
}
$obj = new SomeClass();
$SomeClass->someOtherMethod();??? Знатоки, объясните я вообще прав или нет в своих рассуждениях? И почему нельзя сделать через extends?
Незнаю... Я сделал такие выводы посмотрев на этот код:
$page_controler = new $controller();
$page_controler -> $action(); -
А... Я кажется понял...
$this->load->model('blog')
$this->load - это переменая load этого класса которая содержит имя класса где есть функция model.
Например:
Если $this->load = "loading" то выполняется loading->model('blog'), так?
Создание объекта
in PHP
Posted · Edited by Fenix
Есть три класса: Controller, Loader, test_module.
Как видете, свойство load класса Controller - это объект класса Loader.
К классе Loader нужно создать функцию, которая будет загружать указаный в параметре модуль и создавать свойство в классе Controller с именем модуля и помещать туда объект класса модуля. Имя файла и имя класса одинаковы.
Все это надо, чтобы в классах, расширяющих класс Controller, былы доступны конструкции вида: