Категории раздела
PHP
[40]
Cкриптовый язык программирования общего назначения
MySQL
[1]
Cвободная система управления базами данных (СУБД)
jQuery
[8]
Библиотека JavaScript, фокусирующаяся на взаимодействии JavaScript и HTML
CSS
[60]
Cредство описания, оформления внешнего вида веб-страниц
JavaScript
[161]
Прототипно-ориентированный скриптовый язык программирования
Веб-дизайн
[2]
Проектирование пользовательских веб-интерфейсов для сайтов или веб-приложений
RegExp
[1]
Регулярные выражения
SEO
[2]
Продвижение и раскрутка сайтов. Заработок в сети.
C/C++
[3]
Компилируемый статически типизированный язык программирования общего назначения
Windows
[4]
Программистам под ОС MS Windows
HGE
[2]
Игровой движок HGE (Haaf's Game Engine)
Игровой дизайн
[8]
Психология дизайна игр
Разработка игр
[2]
Общие моменты, относящиеся к геймдеву
wxWidgets
[2]
Библиотека инструментов для разработки кроссплатформенных приложений
PureBasic
[10]
Кроссплатформенный компилятор и IDE для быстрой разработки
VST
[6]
Steinberg's Virtual Studio Technology (VST)
iOS
[1]
Mобильная операционная система, разрабатываемая и выпускаемая американской компанией Apple
Пиксельная графика
[9]
Pixel art и все, что с ним связано
libGDX
[2]
Кроссплатформенный открытый движок на Java, позволяющий создавать 2D и 3D игры под различные платформы, среди которых: Android, HTML5, Windows, Linux, iOS.
Блог разработчика
Главная » PHP
Цикл
for
в Smarty организовать очень просто. Например
for($i=1;$i<10;$i++)
будет выглядеть так:
{section name=foo loop=9}
{$smarty.section.foo.iteration}
{/section}
Категория:
PHP |
Просмотров: 1190 |
Добавил:
pop |
Дата:
2012-05-24
Простой способ постинга в Twitter из php-скрипта. Code by Richard Castera.
function tweetThis($strUsername = '', $strPassword = '', $strMessage = '') {
if (function_exists('curl_init')) {
$twitterUsername = trim($strUsername);
$twitterPassword = trim($strPassword);
if(strlen($strMessage) > 140) {
$strMessage = substr($strMessage, 0, 140);
}
$twitterStatus = htmlentities(trim(strip_tags($strMessage)));
if (!empty($twitterUsername) && !empty($twitterPassword) && !empty($twitterStatus)) {
$strTweetUrl = 'http://www.twitter.com/statuses/update.xml';
$objCurlHandle = curl_init();
curl_setopt($objCurlHandle, CURLOPT_URL, "$strTweetUrl");
curl_setopt($objCurlHandle, CURLOPT_CONNECTTIMEOUT, 2);
curl_setopt($objCurlHandle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($objCurlHandle, CURLOPT_POST, 1);
curl_setopt($objCurlHandle, CURLOPT_POSTFIELDS, "status=$twitterStatus");
curl_setopt($objCurlHandle, CURLOPT_USERPWD, "$twitterUsername:$twitterPassword");
$result = curl_exec($objCurlHandle);
$arrResult = curl_getinfo($objCurlHandle);
if ($arrResult['http_code'] == 200) {
echo 'Your Tweet has been posted';
}
else {
echo 'Could not post your Tweet to Twitter.';
}
curl_close($objCurlHandle);
}
else {
echo('Missing required information to submit your Tweet.');
}
}
else {
echo('Curl Extension is not installed.');
}
}
// Send a Tweet to your Twitter account.
tweetThis('my_user_name', 'my_password', 'my_tweet_message');
Категория:
PHP |
Просмотров: 1091 |
Добавил:
pop |
Дата:
2012-04-15
Генерирует пароль заданной длины, которая передается в качестве аргумента
function generatePassword($intNumOfChars) {
if (is_numeric($intNumOfChars) && ($intNumOfChars > 0)) {
$strChars = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_";
for ($i = 0; $i < $intNumOfChars; $i ++) {
$strPassword .= $strChars[rand(0, strlen($strChars)-1)];
}
}
return $strPassword;
}
Категория:
PHP |
Просмотров: 992 |
Добавил:
pop |
Дата:
2012-04-15
TinyURL предоставляет API для создания коротких ссылок "на лету"
function createTinyUrl($strURL) {
$tinyurl = file_get_contents("http://tinyurl.com/api-create.php?url=".$strURL);
return $tinyurl;
}
Пример использования:
echo(createTinyUrl('http://pointofpresence.ru'));
Категория:
PHP |
Просмотров: 1301 |
Добавил:
pop |
Дата:
2012-04-15
В некоторых случаях вам может понадобиться узнать, какие классы загружены в текущей области видимости. Вы можете сделать это очень просто с функцией
get_declared_classes()
. Эта функция возвращает массив доступных в настоящее время классов.
Категория:
PHP |
Просмотров: 1360 |
Добавил:
pop |
Дата:
2012-04-15
Класс
stdClass
не очень хорошо документирован, но я попытаюсь пролить свет на этот вопрос.
stdClass
является объектом по умолчанию, который не имеет предопределенных членов. Название
stdClass
используется внутри Zend и зарезервировано. Таким образом, это означает, что вы не можете определить класс с именем
stdClass
в PHP-коде.
Он может быть использован для создания экземпляров объектов, в которые вы можете установить собственные переменные-члены, например, для передачи объекта в другую функцию или метод, которые ожидают принять объект в качестве аргумента. Еще более вероятное использование класса — преобразование массива в объект, который берет каждое значение в массиве, и добавляет его в качестве члена с именем на основе ключа в массиве.
Вот пример, который преобразует массив в объект. Этот метод называется приведением типов.
<?php
$person = array (
'firstname' => 'Richard',
'lastname' => 'Castera'
);
$p = (object) $person;
echo $p->firstname; // Will print 'Richard'
?> Пример ниже преобразует многомерный массив в объект. Это достигается с помощью рекурсии.
<?php
function toObject($array) {
$obj = new stdClass();
foreach ($array as $key => $val) {
$obj->$key = is_array($val) ? toObject($val) : $val;
}
return $obj;
}
?>
Категория:
PHP |
Просмотров: 1238 |
Добавил:
pop |
Дата:
2012-04-15
Можно посредством pathinfo(), а можно и так:
function getExtention($file)
{
return end(explode(".", $file));
}
Категория:
PHP |
Просмотров: 1394 |
Добавил:
pop |
Дата:
2012-02-02
Сейчас на множестве сайтов дата не указывается в виде, собственно, даты. Вместо нее указывается в текстовом виде время, прошедшее со времени события. Например: "2 дня назад". Преобразовать дату в подобный вид очень легко, используюя эти две функции:
function get_word_form($n, $o1, $o2, $o5)
{
//Получить нормальное окончание для слова $word и числа объектов $n.
//Параметры:
//$o1 - окончание для числа *1,
//$o2 - окончание для *2-*4,
//$o5 - окончание для чисел *5-*9,*0,*11-*19
$n = abs($n);
if($n % 100 > 10 and $n % 100 < 20 or $n % 10 == 0 or $n % 10 > 4)
$word = $o5;
elseif($n % 10 > 1 and $n % 10 < 5)
$word = $o2;
else
$word = $o1;
return $word;
}
static function getTextTimeStamp($session_time)
{
if(strpos($session_time, " ") !== false)
{
$session_time = strtotime($session_time);
}
$time_difference = time() - $session_time;
$seconds = $time_difference;
$minutes = round($time_difference / 60);
$hours = round($time_difference / 3600);
$days = round($time_difference / 86400);
$weeks = round($time_difference / 604800);
$months = round($time_difference / 2419200);
$years = round($time_difference / 29030400);
if($seconds == 0)
return "только что";
if($seconds <= 60)
{
return "$seconds ".get_word_form($seconds, "секунду", "секунды", "секунд")." назад";
}
elseif($minutes <= 60)
{
return "$minutes ".get_word_form($minutes, "минуту", "минуты", "минут")." назад";
}
elseif($hours <= 24)
{
return "$hours ".get_word_form($hours, "час", "часа", "часов")." назад";
}
elseif($days <= 7)
{
return "$days ".get_word_form($days, "день", "дня", "дней")." назад";
}
elseif($weeks <= 4)
{
return "$weeks ".get_word_form($weeks, "неделю", "недели", "недель")." назад";
}
elseif($months <= 12)
{
return "$months ".get_word_form($months, "месяц", "месяца", "месяцев")." назад";
}
else
{
return "$years ".get_word_form($years, "год", "года", "лет")." назад";
}
}
Категория:
PHP |
Просмотров: 1189 |
Добавил:
pop |
Дата:
2012-02-02
Еще один способ очистки "ветвистых" массивов от повторяющихся "веток". Элементы первого уровня сериализуются, повторы очищаются и элементы разворачиваются обратно.
/**
* Kicks non unique array items by serializing array items and compare
*
* @param array $myArray
* @return array
*/
function arrayUnique($myArray)
{
if(!is_array($myArray))
return $myArray;
foreach ($myArray as &$myvalue)
{
$myvalue = serialize($myvalue);
}
$myArray = array_unique($myArray);
foreach ($myArray as &$myvalue)
{
$myvalue = unserialize($myvalue);
}
return $myArray;
}
Категория:
PHP |
Просмотров: 1278 |
Добавил:
pop |
Дата:
2012-02-02
Для того, чтобы определить, каким образом обратились к скрипту, через ajax или нет, можно воспользоваться этой функцией:
function isAjaxRequest()
{
return (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest');
}
Категория:
PHP |
Просмотров: 1223 |
Добавил:
pop |
Дата:
2012-02-02