НTL вы уверены, что то, что вы делаете, нужно делать? пробуите так Code: php -r 'echo preg_replace("~[^а-яё]~[B]u[/B]i", "", "превращаются в ?|"), PHP_EOL;' и добавьте нужные символы в [ ]
PHP: for ($i=0;$i<5;++$i) { if ($i==2) continue print "$i<br/>"; } Почему этот код выводит 2? Забегая наперед, какие такие параметры бывают у continue/break?
потому что надо поставить ; после continue http://www.php.net/manual/en/control-structures.continue.php
Разрываю длинные слова через: Code: $String=wordwrap($String, 24, ' ', true); Но если $String будет например "Слово,слово", то данный код может порвать слово на букве (Т.е. порвать букву) UTF-8
HTL, попробуйте вот эту функцию PHP: /** * Word wrap * * @param string $string * @param integer $width * @param string $break * @param boolean $cut * @param string $charset * @return string */ function iconv_wordwrap ($string, $width = 75, $break = "\n", $cut = false, $charset = 'utf-8') { $stringWidth = iconv_strlen ($string, $charset); $breakWidth = iconv_strlen ($break, $charset); if (strlen ($string) === 0) { return ''; } elseif ($breakWidth === NULL) { throw new Exception ('Break string cannot be empty'); } elseif ($width === 0 && $cut) { throw new Exception ('Can\'t force cut when width is zero'); } $result = ''; $lastStart = $lastSpace = 0; for ($current = 0; $current < $stringWidth; $current++) { $char = iconv_substr ($string, $current, 1, $charset); if ($breakWidth === 1) { $possibleBreak = $char; } else { $possibleBreak = iconv_substr($string, $current, $breakWidth, $charset); } if ($possibleBreak === $break) { $result .= iconv_substr ($string, $lastStart, $current - $lastStart + $breakWidth, $charset); $current += $breakWidth - 1; $lastStart = $lastSpace = $current + 1; } elseif ($char === ' ') { if ($current - $lastStart >= $width) { $result .= iconv_substr ($string, $lastStart, $current - $lastStart, $charset) . $break; $lastStart = $current + 1; } $lastSpace = $current; } elseif ($current - $lastStart >= $width && $cut && $lastStart >= $lastSpace) { $result .= iconv_substr ($string, $lastStart, $current - $lastStart, $charset) . $break; $lastStart = $lastSpace = $current; } elseif ($current - $lastStart >= $width && $lastStart < $lastSpace) { $result .= iconv_substr ($string, $lastStart, $lastSpace - $lastStart, $charset) . $break; $lastStart = $lastSpace = $lastSpace + 1; } } if ($lastStart !== $current) { $result .= iconv_substr ($string, $lastStart, $current - $lastStart, $charset); } return $result; }
Команде break может передаваться необязательный параметр. Команда break без параметра завершает только тот внутренний цикл, в теле которого она находится, а команда break N прерывает цикл, стоящий на N уровней выше. (прим. перев: 1-й уровень -- это уровень текущего цикла.). Команда continue, как и команда break, может также иметь необязательный параметр. В самом простом случае continue прерывает текущую итерацию и передает управление в начало текущего цикла. Команда continue N прерывает все оставшиеся итерации на текущем уровне цикла и продолжает со следующей итерации цикла, находящегося N уровнями выше.
PHP: <?php $file = 'test.exe'; $remote_file = '100500.exe'; $conn_id = ftp_connect(ip); ftp_login($conn_id, login, pass); ftp_pasv($conn_id, true); ftp_put($conn_id, $remote_file, $file, FTP_BINARY); ftp_close($conn_id); /* Так тоже не работает $fp = fopen("test.exe", "r"); ftp_fput($conn_id, "100500.exe", $fp, FTP_BINARY); */ ?> На сервере создаётся 100500.exe, размером 0 byte. Обычные файлы (*.txt) загружаются без проблем. Пробовал FTP_ASCII, не помогает. В Чём может быть ошибка ?
geforse попробуйте в активном режиме ftp_pasv($conn_id, false); Также можете попробовать: 1) Залить exe файл меньшего размера 2) Залить exe файл с другим расширением 3) Залить txt файл с двоичным содержимом в режиме BINARY 4) Посмотреть wireshark что и как передается
Всем доброго времени суток. Помогите с регуляркой, через курл получаю страницу, но как вытащить от туда нужное поле не как понять не могу вот сам скрипт http://zalil.ru/31876951
драсти, подскажите, можно ли создавать сайт не подключаясь к интнрнету, то есть просто тупо писать его в NotePad++, а потом когда закончу подключать его к серверу?пишу в php, так к сведению)
Ставишь денвер или апсерв и пишешь спокойно, потом закидываешь на хостинг и всё А смоей проблемой что?
есть скрипт, там в одном месте идет запрос к бд и вот иногда почему-то выходит ошибка... не могу понять в чем проблема что значит вот эта ошибка вот 135,136 строки PHP: $q2 = "SELECT * FROM tex WHERE tex_id = '".$id."' and tex_no = 8"; $r2 = mysql_query($q2) or exit;
тут ошибка с подключением к мускулю. А именно не правельный логин или пароль при подключении и вот ещё у тебя не используется пароль при подключение поставь пасс какой нить
Выдает ошибки curl: Warning: curl_setopt() expects parameter 2 to be long, string given in Z:\denwer\www\denwer\curl.php on line 11 9 строка: PHP: curl_setopt($session, CURLOPT_SESSIONJAR, $cookie); Что не так?(
это та понятно, я просто не знаю как это все называется???так: как изменить язык в вирт базе данных?? или зменить язык в phpMyAdmin?