Пару полезных вещей на PHP
Что бы не забыть, пару функций
Удалить из массива элементы с определенным значением
$arr = array(2, 3, 4, 2, 5, 2); function delEl($arr, $del) { foreach($arr as $val) { if($val !== $del) $newArr[] = $val; } return $newArr; } // Пример $checkDelEl = delEl($arr, 2); // Удалим все "2" из массива $arr print_r($checkDelEl); // Array ( [0] => 3 [1] => 4 [2] => 5 )
Выковырять ссылки изображений
preg_match_all('/<img[^>]+src=([\'"])?((?(1).+?|[^\s>]+))(?(1)\1)/',$content,$matches); print_r($matches[2]);
Выводим результат из массива:
if ($matches[2][0]!='') { echo "<img src='".$matches[2][0]."' alt=''/>"; }
где:
$content
— может быть спарсеный код который содержит изображения.
Получить домен из url
parse_url($url,PHP_URL_HOST);
Первые n слов из текста
Ограничение на количество выводимых слов:
function limit_words($string, $word_limit) { $words=explode(" ",$string); return implode(" ",array_splice($words,0,$word_limit)); }
Ограничение по количество символов с сохранением слова, без обрезания:
function getPrewText($text,$maxwords=60,$maxchar=50) { //$text=strip_tags($text); $words=split(' ',$text); $text=''; foreach ($words as $word) { if (mb_strlen($text.' '.$word)<$maxchar) { $text.=' '.$word; } else { $text.='...'; break; } } return $text; }
Заменить переводы строк на <br/>
$text=preg_replace("/[\n\r]+/s","<br/>",$text);
Либо использовать стандартную функцию
nl2br();
Перевернуть строку (реверс строки)
$str=strrev($str);
Переменные переменных
$var = "world"; $hello_world = "Hi for us"; print ${"hello_".$var}; // принтануть $hello_world // выведет Hi for us
Пока хватит 🙂
Источник: интернет.
23 мая, 2016 в 00:46|date at time
Удалить из массива элементы с определенным значением v.2
<?php
$arr = array(2, 3, 4, 2, 5, 2);
function delEl(&$arr, $del) {
$arr = array_filter($arr, function($item) use ($del) { return $item!==$del; });
return $arr;
}
delEl($arr,2);
var_dump($arr);