 |
|
 |
 |
|
|
Функция предназначена для рекурсивного спуска по всем вложенным поддиректориям корневой директории и замене заданной подстроки во всех встреченых файлах.
Код рекурсивной фукнции scan_dir(), которая обходит директории |
|
|
|
Данная глава посвящена одному из важнейших аспектов РНР - средствам файлового ввода/вывода. Как нетрудно предположить, входные и выходные потоки данных интенсивно используются при разработке web-приложений. Не ограничиваясь простым чтением/записью файлов, РНР предоставляет в распоряжение программиста средства просмотра и модификации серверной информации, а также запуска внешних программ. Этим средствам и посвящена настоящая глава. |
|
|
|
Иногда нам приходится часто
изменяемые элементы программы или самой страницы выносить в
отдельный файл, а потом его динамически включать в документ... Это
может быть список часто изменяемых переменных или, например, меню.
Включить эти файлы нам поможет функция include(). Она имеет
единственный аргумент, который должен являться путем к необходимому
(включаемому) документу. |
|
|
|
Класс - это набор переменных и функций, работающих с этими переменными. Класс определяется с использованием следующего синтаксиса...... |
|
|
|
Название – это результат глубокого осмысления процессов среды, в который будет существовать субъект. Только программист, который полностью понимается систему как единое целое, может придумать полностью отвечающее ситуации название. Если название соответствует, то все части соответствуют друг другу, связи ясны, понимание ситуации присутствует, и то, что люди ожидают от названия будет соответствовать действительности. |
|
|
|
Теперь для каждого типа графики создадим свой класс-наследник от Graph, т.е. конкретизируем, что за картинку мы хотим создать. В нашей ситуации мы хотим создать графики столбцовой, круговой и линейной диаграмм. Для этого создадим классы Barchart, Piechart и Linechart соответственно. В дальнейшем для создания новых типов графиков следует просто создать соответсвующий новый класс. |
|
|
|
Эта статья, как Вы уже скорее всего поняли из названия, посвящена тому, как можно использовать XML для хранения данных, которые будут использоваться из скриптов, написанных на PHP. Бедем считать, что Вы уже знаете, что такое XML и с чем его едят. Примеры к статье Вы можете скачать отсюда . Наш план такой. Сначала мы узнаем, какие функции есть для работы с XML в PHP и как ими пользоваться. Чтобы это лучше понять, мы рассмотрим небольшой скрипт, который будет отображать структуру нашего XML-документа. |
|
|
|
Статья описывает методику сложного форматирования изображений на PHP под нужный формат независимо от их начальных размеров и ориентации, но всегда выдаёт изображения строго определённого размера. В скрипте используются функции обработки изображений библиотеки GD. Скрипт будет полезен для новостных сайтов и фотогалерей. |
|
|
 |
 |
 |
 |
$_utf8win1251 =array(
\"\\xD0\\x90\" => \"\\xC0\" , \"\\xD0\\x91\" => \"\\xC1\" , \"\\xD0\\x92\" => \"\\xC2\" , \"\\xD0\\x93\" => \"\\xC3\" , \"\\xD0\\x94\" => \"\\xC4\" ,
\"\\xD0\\x95\" => \"\\xC5\" , \"\\xD0\\x81\" => \"\\xA8\" , \"\\xD0\\x96\" => \"\\xC6\" , \"\\xD0\\x97\" => \"\\xC7\" , \"\\xD0\\x98\" => \"\\xC8\" ,
\"\\xD0\\x99\" => \"\\xC9\" , \"\\xD0\\x9A\" => \"\\xCA\" , \"\\xD0\\x9B\" => \"\\xCB\" , \"\\xD0\\x9C\" => \"\\xCC\" , \"\\xD0\\x9D\" => \"\\xCD\" ,
\"\\xD0\\x9E\" => \"\\xCE\" , \"\\xD0\\x9F\" => \"\\xCF\" , \"\\xD0\\x20\" => \"\\xD0\" , \"\\xD0\\xA1\" => \"\\xD1\" , \"\\xD0\\xA2\" => \"\\xD2\" ,
\"\\xD0\\xA3\" => \"\\xD3\" , \"\\xD0\\xA4\" => \"\\xD4\" , \"\\xD0\\xA5\" => \"\\xD5\" , \"\\xD0\\xA6\" => \"\\xD6\" , \"\\xD0\\xA7\" => \"\\xD7\" ,
\"\\xD0\\xA8\" => \"\\xD8\" , \"\\xD0\\xA9\" => \"\\xD9\" , \"\\xD0\\xAA\" => \"\\xDA\" , \"\\xD0\\xAB\" => \"\\xDB\" , \"\\xD0\\xAC\" => \"\\xDC\" ,
\"\\xD0\\xAD\" => \"\\xDD\" , \"\\xD0\\xAE\" => \"\\xDE\" , \"\\xD0\\xAF\" => \"\\xDF\" , \"\\xD0\\x87\" => \"\\xAF\" , \"\\xD0\\x86\" => \"\\xB2\" ,
\"\\xD0\\x84\" => \"\\xAA\" , \"\\xD0\\x8E\" => \"\\xA1\" , \"\\xD0\\xB0\" => \"\\xE0\" , \"\\xD0\\xB1\" => \"\\xE1\" , \"\\xD0\\xB2\" => \"\\xE2\" ,
\"\\xD0\\xB3\" => \"\\xE3\" , \"\\xD0\\xB4\" => \"\\xE4\" , \"\\xD0\\xB5\" => \"\\xE5\" , \"\\xD1\\x91\" => \"\\xB8\" , \"\\xD0\\xB6\" => \"\\xE6\" ,
\"\\xD0\\xB7\" => \"\\xE7\" , \"\\xD0\\xB8\" => \"\\xE8\" , \"\\xD0\\xB9\" => \"\\xE9\" , \"\\xD0\\xBA\" => \"\\xEA\" , \"\\xD0\\xBB\" => \"\\xEB\" ,
\"\\xD0\\xBC\" => \"\\xEC\" , \"\\xD0\\xBD\" => \"\\xED\" , \"\\xD0\\xBE\" => \"\\xEE\" , \"\\xD0\\xBF\" => \"\\xEF\" , \"\\xD1\\x80\" => \"\\xF0\" ,
\"\\xD1\\x81\" => \"\\xF1\" , \"\\xD1\\x82\" => \"\\xF2\" , \"\\xD1\\x83\" => \"\\xF3\" , \"\\xD1\\x84\" => \"\\xF4\" , \"\\xD1\\x85\" => \"\\xF5\" ,
\"\\xD1\\x86\" => \"\\xF6\" , \"\\xD1\\x87\" => \"\\xF7\" , \"\\xD1\\x88\" => \"\\xF8\" , \"\\xD1\\x89\" => \"\\xF9\" , \"\\xD1\\x8A\" => \"\\xFA\" ,
\"\\xD1\\x8B\" => \"\\xFB\" , \"\\xD1\\x8C\" => \"\\xFC\" , \"\\xD1\\x8D\" => \"\\xFD\" , \"\\xD1\\x8E\" => \"\\xFE\" , \"\\xD1\\x8F\" => \"\\xFF\" ,
\"\\xD1\\x96\" => \"\\xB3\" , \"\\xD1\\x97\" => \"\\xBF\" , \"\\xD1\\x94\" => \"\\xBA\" , \"\\xD1\\x9E\" => \"\\xA2\" );
$_win1251utf8 =array(
\"\\xC0\" => \"\\xD0\\x90\" , \"\\xC1\" => \"\\xD0\\x91\" , \"\\xC2\" => \"\\xD0\\x92\" , \"\\xC3\" => \"\\xD0\\x93\" , \"\\xC4\" => \"\\xD0\\x94\" ,
\"\\xC5\" => \"\\xD0\\x95\" , \"\\xA8\" => \"\\xD0\\x81\" , \"\\xC6\" => \"\\xD0\\x96\" , \"\\xC7\" => \"\\xD0\\x97\" , \"\\xC8\" => \"\\xD0\\x98\" ,
\"\\xC9\" => \"\\xD0\\x99\" , \"\\xCA\" => \"\\xD0\\x9A\" , \"\\xCB\" => \"\\xD0\\x9B\" , \"\\xCC\" => \"\\xD0\\x9C\" , \"\\xCD\" => \"\\xD0\\x9D\" ,
\"\\xCE\" => \"\\xD0\\x9E\" , \"\\xCF\" => \"\\xD0\\x9F\" , \"\\xD0\" => \"\\xD0\\x20\" , \"\\xD1\" => \"\\xD0\\xA1\" , \"\\xD2\" => \"\\xD0\\xA2\" ,
\"\\xD3\" => \"\\xD0\\xA3\" , \"\\xD4\" => \"\\xD0\\xA4\" , \"\\xD5\" => \"\\xD0\\xA5\" , \"\\xD6\" => \"\\xD0\\xA6\" , \"\\xD7\" => \"\\xD0\\xA7\" ,
\"\\xD8\" => \"\\xD0\\xA8\" , \"\\xD9\" => \"\\xD0\\xA9\" , \"\\xDA\" => \"\\xD0\\xAA\" , \"\\xDB\" => \"\\xD0\\xAB\" , \"\\xDC\" => \"\\xD0\\xAC\" ,
\"\\xDD\" => \"\\xD0\\xAD\" , \"\\xDE\" => \"\\xD0\\xAE\" , \"\\xDF\" => \"\\xD0\\xAF\" , \"\\xAF\" => \"\\xD0\\x87\" , \"\\xB2\" => \"\\xD0\\x86\" ,
\"\\xAA\" => \"\\xD0\\x84\" , \"\\xA1\" => \"\\xD0\\x8E\" , \"\\xE0\" => \"\\xD0\\xB0\" , \"\\xE1\" => \"\\xD0\\xB1\" , \"\\xE2\" => \"\\xD0\\xB2\" ,
\"\\xE3\" => \"\\xD0\\xB3\" , \"\\xE4\" => \"\\xD0\\xB4\" , \"\\xE5\" => \"\\xD0\\xB5\" , \"\\xB8\" => \"\\xD1\\x91\" , \"\\xE6\" => \"\\xD0\\xB6\" ,
\"\\xE7\" => \"\\xD0\\xB7\" , \"\\xE8\" => \"\\xD0\\xB8\" , \"\\xE9\" => \"\\xD0\\xB9\" , \"\\xEA\" => \"\\xD0\\xBA\" , \"\\xEB\" => \"\\xD0\\xBB\" ,
\"\\xEC\" => \"\\xD0\\xBC\" , \"\\xED\" => \"\\xD0\\xBD\" , \"\\xEE\" => \"\\xD0\\xBE\" , \"\\xEF\" => \"\\xD0\\xBF\" , \"\\xF0\" => \"\\xD1\\x80\" ,
\"\\xF1\" => \"\\xD1\\x81\" , \"\\xF2\" => \"\\xD1\\x82\" , \"\\xF3\" => \"\\xD1\\x83\" , \"\\xF4\" => \"\\xD1\\x84\" , \"\\xF5\" => \"\\xD1\\x85\" ,
\"\\xF6\" => \"\\xD1\\x86\" , \"\\xF7\" => \"\\xD1\\x87\" , \"\\xF8\" => \"\\xD1\\x88\" , \"\\xF9\" => \"\\xD1\\x89\" , \"\\xFA\" => \"\\xD1\\x8A\" ,
\"\\xFB\" => \"\\xD1\\x8B\" , \"\\xFC\" => \"\\xD1\\x8C\" , \"\\xFD\" => \"\\xD1\\x8D\" , \"\\xFE\" => \"\\xD1\\x8E\" , \"\\xFF\" => \"\\xD1\\x8F\" ,
\"\\xB3\" => \"\\xD1\\x96\" , \"\\xBF\" => \"\\xD1\\x97\" , \"\\xBA\" => \"\\xD1\\x94\" , \"\\xA2\" => \"\\xD1\\x9E\" );
function utf8_win1251 ( $a ) {
global $_utf8win1251 ;
if( is_array ( $a )){
foreach( $a as $k => $v ){
if( is_array ( $v )){
$a [ $k ]= utf8_win1251 ( $v );
}else{
$a [ $k ]= strtr ( $v , $_utf8win1251 );
}
}
return $a ;
}else{
return strtr ( $a , $_utf8win1251 );
}
}
function win1251_utf8 ( $a ) {
global $_win1251utf8 ;
if( is_array ( $a )){
foreach( $a as $k => $v ){
if( is_array ( $v )){
$a [ $k ]= utf8_win1251 ( $v );
}else{
$a [ $k ]= strtr ( $v , $_win1251utf8 );
}
}
return $a ;
}else{
return strtr ( $a , $_win1251utf8 );
}
} |
|