PHP
A general-purpose scripting language especially suited to web development
Explore Questions
There are no popular questions to show right now
-
0 votes2 answers
-
0 votes1 answer
-
0 votes1 answer
-
0 votes2 answers
-
0 votes0 answers
2,481 questions in this forum
-
Ссылки на объект
Прошу помощи в разборе кода: <?php$instance = new SimpleClass();$assigned = $instance;$reference =& $instance;$instance->var = '$assigned будет иметь это значение';$instance = null;var_dump($instance);var_dump($reference);var_dump($assigned);// Результат# NULL# NULL# object(SimpleClass)#1 (1) {# ["var"]=># string(30) "$assigned будет иметь это значение"# }Хочу понять почему собственно $assigned не стал равным null?
0 votes4 answers -
Регэкспы в поле стоимости
Подскажите, кто частенько пользует регэкспы. if (preg_match("/\d/", $trim) != "0"){ echo "Число без точек. sooogood."; } elseif (preg_match("/\d[.,]/", $trim) != "0") { echo "Число с точкой или запятой"; } else { echo "Вообще не число."; } Первое правило срабатывает, но если в переменной точка или запятая, то все равно срабатывает первое правило. Нужно чтобы правило 1. Цифра ли? 2. Цифра с точкой ИЛИ запятой? Спасибо.
0 votes5 answers -
htaccess и корень
Товарищи знатоки, помогите пожалуйста! Задача такая: сайт может лежат в любой директории хоста http://site.ru/ http://site.ru/some_dir1/ http://site.ru/some_dir2/dir/ Есть ли способ в файле .htaccess получить адрес каталога (в котором и лежит сам файл) без его явного указания. Т.е. сейчас я имею код: Options +FollowSymLinks RewriteEngine On RewriteCond %{REQUEST_URI} ^/index\.php$ RewriteRule . / [R=301,L] ErrorDocument 403 /?error=403 ErrorDocument 404 /?error=404 ErrorDocument 500 /?error=500 Но если сайт переедет из корня в директория some_dir - код потребует явного изменения: Options +FollowSymLinks RewriteEngine On RewriteCond %{REQUEST_URI} ^/some_dir/index\…
0 votes6 answers -
не связуется код
Смотрите, есть такой код: <?php include($_SERVER['DOCUMENT_ROOT']."/locale/locales.php")?> <?php define("DOCUMENT_PAGE_TITLE", LOCALE_SITE_NAME) ?> <?php include($_SERVER['DOCUMENT_ROOT']."/template/start.php") ?> Я приветствую вас, дорогие друзья! Этот сайт посвящен созданию сайтов. Здесь вы узнаете как создать сайт бесплатно, найдете для этого много программ и книг. На форуме вы можете задавать вопросы и отвечать на них. В гостевой книге пишите свои предложения и жалобы. <?php include($_SERVER['DOCUMENT_ROOT']."/template/end.php") ?> Смотрите, на странице с другим кодом это выглядит вот так: А на странице с таким кодом вот так: (я в php нови…
0 votes3 answers -
ссокрытие очерёдности действий
помогите пожалуйста разобраться в вопросе в книжке "совершенный код" вычитал совет о том, что нужно по возможности скрывать очерёдность действий в методе [hide]Сокрытие очередности действий. Скрывать очередность обработки событий — разумная идея. Например, если программа обычно сначала вызывает метод, запрашивающий информацию у пользователя, а после этого — метод, читающий вспомогательные данные из файла, никакой из этих двух методов не должен зависеть от порядка их выполнения. В качестве другого примера можно привести две строки кода, первая из которых читает верхний элемент стека, а вторая уменьшает переменную stackTop. Вместо того чтобы распространять такой код по …
0 votes3 answers -
Двумерный массив
Можно создать одномерный массив, всё нормально, вот так: $cars = array( "model" =>'X5', "speed" =>120, "doors" =>5, "year" =>'2006' ); echo $cars['doors']; //Выводим элемент массива Вот смутил такой двумерный массив. $cars['bmw'] = array( "model" =>'X5', "speed" =>120, "doors" =>5, "year" =>'2006' ); echo $cars['bmw']['year']; Какой смысл если написать его вот так? Как это на картинке примерно будет выглядеть этот двумерный я имею ввиду $cars?. Получается весь массив состоит из одного элемента, который тоже массив и всё?
0 votes3 answers -
архитектура без наследования. возможна ли?
помогите пожалуйста разобраться с важным моментом. вопрос не привязываю к какому-либо языку потому что он очень общий допустим есть игра, написанная в ООП-стиле. основной объект game порождает объект level. далее level порождает кучу объектов танков, самолётиков, солдатиков и т.д. логично всё это организовать через наследование. это удобно потому что если солдатику понадобится какое-нибудь свойство из level или из game, то он его получит но можно обойтись без наследования. в этом случае придётся при создании объекта в конструктор передавать родительский объект. например объекту level понадобилось имя игрока: var Game = function() { this.username = 'petya' t…
0 votes1 answer -
как настроить .htaccess и пути в Include?
Такая проблема, пользуюсь денвером. Есть подключаемые файлы которые лежат в корневом катологе (папка test1.ru). Делаю так include($_SERVER["DOCUMENT_ROOT"]."/block_menu.php"); все работает, выгружаю на хостинг сразу куча ошибок. Что делать может можно как то .htaccess настроить или други варианты. Заранее спасибо!
0 votes2 answers -
Создание объекта
Есть три класса: Controller, Loader, test_module. class Controller { function __construct(){ $this -> load = new Loader() } } class Loader { function module($module){ require_once (SYSTEM."/modules/".$module.".php"); //создание объекта } } Как видете, свойство load класса Controller - это объект класса Loader. К классе Loader нужно создать функцию, которая будет загружать указаный в параметре модуль и создавать свойство в классе Controller с именем модуля и помещать туда объект класса модуля. Имя файла и имя класса одинаковы. Все это надо, чтобы в классах, расширяющих класс Controller, былы доступны конструкции вида: $this -> load -> module("capc…
0 votes0 answers -
Интересная проблема со скриптом
Есть вот такой скрипт: Скрипт работает вполне нормально(мне пока хватает). Но как обычно без "НО" не обошлось. Есть 2 условия: 1. if(!ctype_alnum($lg)|| strlen($lg) < 6) { $ErrorString.= '<span><b> - Логин:</b> некорректно заполенное поле</span><br>'; $formErr= true; $errlg=true; } 2. if(!ctype_alnum($pw)|| strlen($pw) < 6) { $ErrorString.= '<span><b> - Пароль:</b> некор…
0 votes4 answers -
регулярные выражения
столкнулся с проблемой в регулярными выражениями. мне потребовалось вырвать все между двумя тегами (<tbody> и </tbody>) нужно вытащить все символы. пробовал <tbody>[\w\d\s\n]+</tbody> <tbody>.+</tbody> и еще всякие варианты которые приходили в голову.но не один не сработал. между этими тегами есть <>.,/"'=+ ну практически все знаки препинания и еще переходы на новую строку и отступы. прошу помощи. зараннее благодарен
0 votes1 answer -
Распознание объектов
Можно ли своими усилями сделать программу, которая сможет распознавать объекты. Т.е. к примеру у нас есть камера... И камеру мы наводим на квадратный предмет. Действия программы: Распознание и выделение данного объекта. Подобная технология(только в более крупном масштабе) есть в фильме железный человек. Я подумал, если камеры могут распознавать улыбки на лицах людей, то почему камера не может распознать всего лишь квадрат. А далее программу можно будет развить при помощи введения интегральных функций наверное... Либо других математических применений...
0 votes13 answers -
Постраничная навигация
Подскажите как вывести 10 записей из бд, потом нажимаешь на страницу [2] и тд, выводятся 10 записей перед этими. Выводил так, но без навигации, просто все записи но одной странице <?php // Константы для подключения к СУБД //Хост подключения к БД define('PHP_HOST2', 'localhost'); //Пользователь define('PHP_USER2', 'root'); //Пароль define('PHP_PASS2','741258'); //Базаданных define('PHP_DB2', 'dsp_base'); //Префикс таблиц БД define('PHP_DBPREFIX2', ''); // Подключение к СУБД $link = mysql_connect(PHP_HOST2, PHP_USER2, PHP_PASS2) or die (mysql_error()); // Выбираем базу данных mysql_select_db(PHP_DB2, $link); //Устанавливаем кодировку UTF8 mysql_query ("SET NAMES…
0 votes2 answers -
str_replace и substr_replace
str_replace и substr_replace В чем разница? Оба зменяют одну строку другой. Чем лучше та или иная функция? А в чем же различие? <?php $text = "<br>Ну, ты чувак гонишь!"; echo substr_replace($text,'молодец',17,6); echo str_replace("гонишь",'молодец',$text); ?>
0 votes9 answers -
404
Всем доброго времени суток, удалил на сервере файл public_html в руте, теперь сайт не грузится, выдает 404, скорее всего там были прописан путь к папку www, скажите, каким должно быть содержание этого файла? Заранее спасибо.
0 votes2 answers -
ob_start
В каких-то версиях PHP у меня работает так: ob_start("Compress::create");а где-то приходится использовать это: ob_start(array('Compress', 'create'));Не знаете где можно найти подробную информацию в какой версии PHP, какой метод поддерживается?
0 votes3 answers -
Front-end & HTTP
Интересно мнение экспертов: Ясно дал понять заказчику (работодателю, возможно), что область моих знаний это вёрстка. В ответ на это, приходит тестовое задание на "20-30 мин", где нужно воспользоваться этим ресурсом https://www.hurl.it/about и задать различные категории для залогинившегося пользователя. Понятия не имею как это сделать, как тестировать. Вопрос: Насколько, по вашему мнению, это: 1) Относится к вёрстке или Front-end? 2) Насколько верстальщик must know HTTP?
0 votes2 answers -
Переброс с порта 81 на порт 80 при помощи htaccess - как сделать?
Привет всем. Наверное, почти все уже слышали, что у хостинга Majordomo технические проблемы, а кто-то даже испытал их на себе. Не обошло стороной это и меня. Свежекупленный сайт никак не хотел соединяться с базой данных. Через три дня смог добиться от саппорта, чтобы исправили. Сейчас до техподдержки достучаться не удается, поэтому прошу совета: после неких действий со стороны хостинг-провайдера при входе в панель управления почему-то добавляется 81 порт: www.fianit-dance.ru/administrator становится www.fianit-dance.ru:81/administrator Из-за этого внутренние страницы админки не открываются. Если скопировать ссылку внутри админки и убрать из урла 81 порт - то страница откр…
0 votes5 answers -
Отладчик php
Не разу не использовал и даже не видел, но слыхал, что есть отладчики для пхп-скриптов. Кто какой может посоветовать (желательно для ubuntu 8.10, но, в принципе, и виндовый можно поглядеть)? P.S. И, да, желательно, конечно, бесплатный
0 votes3 answers -
Использование магической функции __autoload()
Прочитал здесь: http://phpclub.ru/faq/PHP5/Autoload что в PHP5 перед тем как создать объект несуществующего класса, идёт попытка вызова __autoload(), который должен попытаться подключить такой класс, которого на самом деле нету. Вот в одной директории, у меня лежит 3 файла: index.php <?php function __autoload($name){ include $name.".class.php"; echo "Ищем класс $name"; } $ob1 = new A(); $ob1->son(); $ob2 = new B(); $ob2->fanta(); ?> A.class.php <?php class A{ public function son(){ echo "<br />Вызвана функция <u>Сон</u>, класса <u>А</u>"; } } ?> B.class.php <?php class A{ public function fanta(…
0 votes3 answers -
Проблема с is_uploaded_file()
Собственно суть проблемы: Загружаю массив из картинок посредством формы, отправляю через $_POST, получаю массив $_FILES, всё просто. Необходимо проверять, был ли загружен файл в данном поле или нет. $i = 0;echo is_uploaded_file($image['tmp_name'][$i]);//тут выводится единичка - TRUEwhile ($i <= $count){ if ($day[$i]<>0) { move_uploaded_file($image['tmp_name'][$i],'../cn/tours/img/'.$image['name'][$i]); if (is_uploaded_file($image['tmp_name'][$i]))//а вот тут условие ложно и тело if не выполняется, даже когда файл был загружен и сохранён в конечную директорию функцией выше { $url = '../cn/tours/img/'.$image['name'][$i]; …
0 votes2 answers -
Добавить поле в массив
Есть $list=array("a","b","c","d"). Как добавить в другой массив поле $array['a']['b']['c']['d']? При этом значение и количество элементов в первом массиве может быть любое. То есть поля в $array формируются массивом $list.
0 votes5 answers -
Время и расписание эфира
Столкнулся с такой проблемой, надо сделать чтобы на сайт отображалось ("если 8:30 или больше 8:30, то...") только вот почемуто не работает $dtar = getdate(time()); $time = $dtar['hours']+'1'.':'.$dtar['minutes']; // xx:xx if($time=='8:30' or $time<'8:30') {echo '<div class="plb">Сейчас в эфире: Новинки</div>';} if($time=='12:00' or $time<'12:00') {echo '<div class="plb">Сейчас в эфире: Non-stop</div>';} if($time=='21:00' or $time<'21:00') {echo '<div class="plb">Сейчас в эфире: Стол заказов</div>';} Подскажите что я неправильно сделал.
0 votes4 answers -
Регулярка. Исключить .. из строки
Есть простенькая регулярка на проверкку мейла [a-z0-9_\.\-]{1,128}[@]\w+[.]\w+Собсна, нам интересна часть до собаки [a-z0-9_\.\-]Сейчас это проверка на символы и длину строки 1-128. Требуется сделать так, чтоб не пропускало 2 точки подряд. Как это сделать регуляркой ? (Вариант доп. функции, которая будет искать в строке .. не подходит) Язык: python Есть решение данной задачи ? Спасибо
0 votes7 answers -
Регулярные выражения
Имеем следующий код: <li> <a class="pagin" href="/book/index.php?PAGEN_4=1&count_zap=20&AJAX=1&PAGEN_3=7&SECTION_ID=365#nav_start_4">1</a> </li> <li>...</li> <li> <a class="pagin" href="/book/index.php?PAGEN_4=3&count_zap=20&AJAX=1&PAGEN_3=7&SECTION_ID=365#nav_start_4">3</a> </li> <li> <a class="pagin" href="/book/index.php?PAGEN_4=4&count_zap=20&AJAX=1&PAGEN_3=7&SECTION_ID=365#nav_start_4">4</a> </li> <li> <a class="pagin" href="/book/index.php?PAGEN_4=5&count_zap=20&AJAX=1&PAGEN_3=7&SECTION_ID=365#nav_start_4">…
0 votes3 answers