Примеры программирования в PHP
Приветствую вас, уважаемые коллеги! На этой странице вы найдете примеры, которые (а я надеюсь на это) помогут вам решить некоторые задачи, с которыми вы можете столкнуться в своей работе. Надеюсь эта информация поможет вам, как начинающим разработчикам, так и тем, кто имеет богатый опыт работы в PHP и понимает не только основы сайтостроения с помощью этого замечательного языка. В конце статьи я советую вам обратить внимание на бесплатную плюшку. Ну что же, поехали!
Содержание
- Как на PHP самому сделать автоматический счетчик номера записи в таблице MySQL?
- Как удалить все файлы в папке?
- Есть ли в PHP возможность заменить блоки if…else другой условной операцией?
- Как удалить определённые строки из текстового файла с помощью языка программирования PHP?
Как на PHP самому сделать автоматический счетчик номера записи в таблице MySQL?
Будем использовать для этого следующую функцию:
<?php
// Функция предназначена для получения номера записи таблицы
function get_id($tbl_dt)
{ // отсортируем по убыванию
$result = mysql_query("SELECT id FROM ".$tbl_dt." ORDER BY `id` DESC");
$myrow = mysql_fetch_array($result);
$num_rows = mysql_num_rows($result);
// если количество записей совпадает с последним id, тогда...
if ($num_rows==$myrow['id'])
{ // ...возьмём самый первый элемент
//в выборке с наибольшим значением id,
// увеличив на единицу это значение
return $myrow['id'] + 1;
} else { // отсортируем по возрастанию, затем...
$res1=mysql_query("SELECT id FROM ".$tbl_dt." ORDER BY `id` ASC");
$myrow1 = mysql_fetch_array($res1);
$i = 1;
do // ...ищем "пустой" id и добавляем запись по этому id
{
if ($i == $myrow1['id']) {
$i++;
continue;
} else {
return $i;
}
}
while ($myrow1 = mysql_fetch_array($res1));
}
}
?>
Теперь применим её на практике:
<?php
$id = get_id($tbl_dt);
$answer = addslashes($answer);
$result = mysql_query ("INSERT INTO faq (id,post,question,answer)
VALUES ($id,'$post','$question','$answer')");
if ($result == 'true') {
echo "<p align="center">Ваш вопрос успешно добавлен!</p>";
} else {echo "
<p align="center">Ваш вопрос не добавлен!</p>";
}
?>
Как удалить все файлы в папке?
<?php
// Функция предназначена для удаления всех файлов в папке
function del_all_files()
{
$dir = 'https://site.softmaker.kz/tmp/';
// удалить все файлы в папке
if($handle = opendir($dir))
{
while(false !== ($file = readdir($handle)))
if($file != "." && $file != "..") unlink($dir.$file);
closedir($handle);
}
}
?>
Есть ли в PHP возможность заменить блоки if…else другой условной операцией?
Язык программирования РНР предоставляет возможность заменять блоки if…else условной операцией
(в отличие от унарных и бинарных операций условная операция используется с тремя операндами).
В этой условной операции присутствуют два символа «?» и «:» и три параметра:
<?php (выражение_1) ? выражение_2 : выражение_3 ?>
Первым вычисляется значение выражения_1. Если оно истинно, то вычисляется значение выражения_2,
которое и становится результатом. Если при вычислении значения выражения_1 ложно, то в качестве результата берётся выражение_3.
Например, можно написать следующее выражение:
<?php $myrest = ($rest == 1) ? "" : "-"; ?>
В этом примере переменной $myrest присваивается пустая строка, если переменная $rest равна 1,
иначе переменной $myrest присваивается тире «-«.
Как удалить определённые строки из текстового файла с помощью языка программирования PHP?
Предположим, нужно удалить все строки из текста, которые содержат слово «php».
<?php
//Удалим строку из файла,
// которая содержит слово «php»
$stroka = 'php';
// Считываем весь файл в массив
$file = file("php_text.txt");
$i = 0;
// Ищем нужную строку
while ($i < sizeof($file)) {
if (strstr($file[$i], $stroka) <> FALSE){
unset($file[$i]);
}
$i++;
}
// Открываем файл и
// сохраняем в нём всё что осталось
$f = fopen("php_text_out.txt", 'w+');
flock($f, LOCK_EX);
foreach($file as $string)
{
fwrite($f, $string);
}
flock($f, LOCK_UN);
fclose($f);
?>
Смотрите также подобную процедуру для правильного удаления строк текстового файла с помощью встроенного языка системы 1С8.
SoftMaker.kz
SoftMaker.kz
SoftMaker.kz
Спасибо за автоматический счетчик номера записи, а то встроенный инкремент разбрасывает цифры как хочет.
Я согласен с Вами, пожалуйста!