<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>str_replace &#8212; ploshadka.net</title>
	<atom:link href="https://ploshadka.net/tag/str_replace/feed/" rel="self" type="application/rss+xml" />
	<link>https://ploshadka.net</link>
	<description>Мир интернет технологий</description>
	<lastBuildDate>Mon, 05 Mar 2018 13:01:51 +0000</lastBuildDate>
	<language>ru-RU</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.1</generator>
	<item>
		<title>WordPress – add_action и save_post</title>
		<link>https://ploshadka.net/wordpress-add_action-save_post/</link>
					<comments>https://ploshadka.net/wordpress-add_action-save_post/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Mon, 15 Oct 2018 08:00:39 +0000</pubDate>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[add_action()]]></category>
		<category><![CDATA[add_filter()]]></category>
		<category><![CDATA[post_content]]></category>
		<category><![CDATA[sanitize_text_field()]]></category>
		<category><![CDATA[save_post]]></category>
		<category><![CDATA[str_replace]]></category>
		<category><![CDATA[update_post_meta]]></category>
		<category><![CDATA[wp_get_post_terms()]]></category>
		<category><![CDATA[wp_insert_post_data()]]></category>
		<category><![CDATA[wp_update_post()]]></category>
		<category><![CDATA[Основательные труды]]></category>
		<category><![CDATA[Произвольные поля]]></category>
		<category><![CDATA[Произвольный тип записи]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=4184</guid>

					<description><![CDATA[Примеры автоматического внесения изменений в базу данных WordPress при сохранении записи черновика или публикации. Для изменения содержимого без внесения в базу данных читайте другую инструкцию. Для того, чтобы запустить какую-нибудь функцию при сохранении поста, нужно воспользоваться хуком: add_action('save_post', '', );...]]></description>
										<content:encoded><![CDATA[<p>Примеры автоматического внесения изменений в базу данных WordPress при сохранении записи черновика или публикации. <span id="more-4184"></span></p>
<p>Для изменения содержимого без внесения в базу данных <a href="https://ploshadka.net/wordpress-change-content/">читайте другую инструкцию</a>.</p>
<p>Для того, чтобы запустить какую-нибудь функцию при сохранении поста, нужно воспользоваться хуком:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">add_action('save_post', '', );</div></div>
<p>Более подробно об этом ниже.</p>
<h2>1. save_post для основного контента поста</h2>
<p>Меняем данные в основной записи поста <strong>(post_content)</strong>. К примеру, перед отправлением данных, скрипт поменяет в контенте одну букву на другую, а затем сохранит содержимое в базе данных.</p>
<h3>Функция меняющая контент в WordPress</h3>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">function replaceLetters()<br />
{<br />
&nbsp; &nbsp; global $post;<br />
<br />
&nbsp; &nbsp; $search = ['Ё', 'ё'];<br />
&nbsp; &nbsp; $replace = ['Е', 'е'];<br />
<br />
&nbsp; &nbsp; $getContent = get_post($post-&gt;ID);<br />
&nbsp; &nbsp; $postContent = $getContent-&gt;post_content;<br />
&nbsp; &nbsp; $modifyContent['post_content'] = str_replace($search, $replace, $postContent);<br />
<br />
&nbsp; &nbsp; $newPost = array();<br />
&nbsp; &nbsp; $newPost['ID'] = $post-&gt;ID;<br />
&nbsp; &nbsp; $newPost['post_content'] = $modifyContent['post_content'];<br />
&nbsp; &nbsp; wp_update_post( $newPost );<br />
}</div></div>
<h3>Запуск функции</h3>
<p>При сочетании <strong>wp_update_post</strong> и <strong>save_post</strong>, нужна конструкция, которая сначала удаляет action <strong>(remove_action)</strong>, а затем добавляет его. Это необходимо, чтобы избежать бесконечный цикл, который повесит страницу.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">function runReplaceLetters()<br />
{<br />
&nbsp; &nbsp; global $post;<br />
&nbsp; &nbsp; if ( ! wp_is_post_revision($post-&gt;ID) )<br />
&nbsp; &nbsp; {<br />
&nbsp; &nbsp; &nbsp; &nbsp; remove_action('save_post', 'runReplaceLetters', 99);<br />
&nbsp; &nbsp; &nbsp; &nbsp; replaceLetters();<br />
&nbsp; &nbsp; &nbsp; &nbsp; add_action('save_post', 'runReplaceLetters', 99);<br />
&nbsp; &nbsp; }<br />
}<br />
add_action('save_post', 'runReplaceLetters', 99);</div></div>
<h2>2. save_post для произвольных полей</h2>
<p>Та же самая функция, но которую будем использовать для произвольных полей. </p>
<h3>Функция меняющая контент</h3>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">function replaceLettersCustomPostMeta($key = &quot;&quot;)<br />
{<br />
&nbsp; &nbsp; global $post;<br />
<br />
&nbsp; &nbsp; $search = ['Ё', 'ё'];<br />
&nbsp; &nbsp; $replace = ['Е', 'е'];<br />
<br />
&nbsp; &nbsp; $getKeyData = get_post_meta($post-&gt;ID, $key, true);<br />
&nbsp; &nbsp; $change = str_replace($search, $replace, $getKeyData);<br />
&nbsp; &nbsp; update_post_meta($post-&gt;ID, $key, $change);<br />
}</div></div>
<h3>Запуск функции</h3>
<p>В отличии от предыдущего примера, здесь не нужно удалять <strong>action</strong>.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">function runReplaceLettersCustomPostMeta()<br />
{<br />
&nbsp; &nbsp; replaceLettersCustomPostMeta('ploshadka.net');<br />
&nbsp; &nbsp; replaceLettersCustomPostMeta('ploshadka-net');<br />
}<br />
add_action('save_post', 'runReplaceLettersCustomPostMeta', 99);</div></div>
<h2>3. Сохраняем данные через wp_insert_post_data</h2>
<p>Сохраним изменения в контенте записи через функцию <strong>wp_insert_post_data</strong>.</p>
<div class="highlight">Надо быть внимательным при сочетании функций <strong>add_filter -> wp_insert_post_data</strong> и <strong>add_action -> save_post</strong>. При неправильных приоритетах что-то может не работать.</div>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">function replaceLetters( $data )<br />
{<br />
&nbsp; &nbsp; if ( defined('DOING_AUTOSAVE') &amp;&amp; DOING_AUTOSAVE ) return $data; // Exclude Autosave<br />
&nbsp; &nbsp; if ( ! current_user_can('edit_post') ) return $data;<br />
<br />
&nbsp; &nbsp; if (!empty($data['post_content'])) {<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; $search = ['Ё', 'ё'];<br />
&nbsp; &nbsp; &nbsp; &nbsp; $replace = ['Е', 'е'];<br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; $modifyContent['post_content'] = str_replace($search, $replace, $data['post_content']);<br />
<br />
&nbsp; &nbsp; }<br />
&nbsp; &nbsp; return $modifyContent;<br />
}<br />
add_filter( 'wp_insert_post_data' , 'replaceLetters', 99 );</div></div>
<h2>4. Создадим title записи для WordPress по шаблону</h2>
<p>Заголовок будет автоматически формироваться при каждом сохранении записи из атрибутов, которые мы для него подготовим.</p>
<h3>Функция создающая title</h3>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">function generateTitle() {<br />
&nbsp; &nbsp; global $post;<br />
<br />
&nbsp; &nbsp; $string = get_post_meta($post-&gt;ID, 'ploshadka.net', true);<br />
<br />
&nbsp; &nbsp; $newsTag = wp_get_post_terms($post-&gt;ID, 'news');<br />
&nbsp; &nbsp; foreach ($newsTag as $tag) {<br />
&nbsp; &nbsp; &nbsp; &nbsp; $tag = ' - ' .$tag-&gt;name;<br />
&nbsp; &nbsp; }<br />
<br />
&nbsp; &nbsp; $date = get_post_time();<br />
<br />
&nbsp; &nbsp; $newTitle = sanitize_text_field(sprintf('%s %s %s', $string, $tag, $date));<br />
<br />
// &nbsp; &nbsp; &nbsp;Иногда возможен такой вариант:<br />
// &nbsp; &nbsp; &nbsp;wp_update_post(array($post-&gt;ID, 'post_title' =&gt; $newTitle ));<br />
// &nbsp; &nbsp; &nbsp;Но с ним может перестать сохраняться post_content.<br />
<br />
&nbsp; &nbsp; $newPost = array();<br />
&nbsp; &nbsp; $newPost['ID'] = $post-&gt;ID;<br />
&nbsp; &nbsp; $newPost['post_title'] = $newTitle;<br />
&nbsp; &nbsp; wp_update_post( $newPost );<br />
}</div></div>
<h3>Запуск функции для Custom Post Types</h3>
<p>Функцию выше запустим для произвольных типов записей. Для этого к save_post прибавим название такой записи. В данном случае <strong>news</strong>.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">function runGenerateTitle()<br />
{<br />
&nbsp; &nbsp; global $post;<br />
&nbsp; &nbsp; if ( ! wp_is_post_revision($post-&gt;ID) )<br />
&nbsp; &nbsp; {<br />
&nbsp; &nbsp; &nbsp; &nbsp; remove_action('save_post_news', 'runGenerateTitle', 10);<br />
&nbsp; &nbsp; &nbsp; &nbsp; generateTitle();<br />
&nbsp; &nbsp; &nbsp; &nbsp; add_action('save_post_news', 'runGenerateTitle', 10);<br />
&nbsp; &nbsp; }<br />
}<br />
add_action('save_post_news', 'runGenerateTitle', 10);</div></div>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/wordpress-add_action-save_post/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>PHP &#8212; как очистить домен от лишнего</title>
		<link>https://ploshadka.net/php-kak-ochistit-domen-ot-lishnego/</link>
					<comments>https://ploshadka.net/php-kak-ochistit-domen-ot-lishnego/#comments</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Fri, 20 Jul 2018 08:00:42 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[PHP примеры и разбор]]></category>
		<category><![CDATA[preg_match_all()]]></category>
		<category><![CDATA[str_replace]]></category>
		<category><![CDATA[Изображение]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=3728</guid>

					<description><![CDATA[Делюсь php кодом, который писал для себя, чтобы вывести иконки к сайтам. Вывод иконок на сайте в зависимости от имени домена. Очистка адреса сайта от всего лишнего. Для вывода различных иконок к доменам сначала получим фиксированное название домена, а затем...]]></description>
										<content:encoded><![CDATA[<p>Делюсь php кодом, который писал для себя, чтобы вывести иконки к сайтам. Вывод иконок на сайте в зависимости от имени домена. Очистка адреса сайта от всего лишнего. <span id="more-3728"></span></p>
<p>Для вывода различных иконок к доменам сначала получим фиксированное название домена, а затем по нему выведем изображение. Изображение должно иметь название домена. Для этих целей сначала очистим домен от лишних элементов. А затем проверим наличие файла изображения.</p>
<h2>Очищаем домен от лишнего</h2>
<p>Для примера возьмём адрес моего сайта, но предположим что сайты могут быть разные:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">https://ploshadka.net/</div></div>
<p>Очистим его от всего постороннего, кроме названия домена. Для этого будем использовать очистку от лишних элементов с помощью функции <strong>str_replace()</strong>.</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$clean_https = str_replace('https://', '', $url);<br />
<br />
$clean_http = str_replace('http://', '', $clean_https); <br />
<br />
$clean_www = str_replace('www.', '', $clean_http);</div></div>
<p>В результате таких манипуляций останется такой адрес:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">ploshadka.net/</div></div>
<p>Выдернем из него отдельные буквенные сочетания (слова):</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">preg_match_all('/(\w+)/', $clean_www, $clean_name);</div></div>
<p>Теперь мы можем вывести, как отдельно название домена (ploshadka):</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">echo $clean_name[0][0];</div></div>
<p>так и полное название сайта без лишней атрибутики (ploshadka.net):</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">echo $clean_name[0][0] .'.' .$clean_name[0][1]</div></div>
<h2>Делаем проверку на наличие изображения</h2>
<p>Из получившихся данных выше создадим переменную с адресом изображения:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$favicon_on_server = 'wp-content/img/favicon/' .$clean_name[0][0] .'.png';</div></div>
<p>Присвоим другой переменной вывод этого изображения:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$img = '&lt;img class=&quot;news-favicon&quot; src=&quot;' .esc_url(home_url('/')) .$favicon_on_server<br />
.'&quot; title=&quot;logo ' .$clean_name[0][0] .'&quot; width=&quot;10&quot; height=&quot;10&quot; /&gt;';</div></div>
<p>Проведем проверку на наличие этого файла на сервере, если он есть – выводим иконку и рядом с ним название сайта:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">if (file_exists($favicon_on_server)) {<br />
&nbsp; &nbsp; echo $img .'&lt;span class=&quot;ploshadka.net&quot;&gt;' . $clean_name[0][0] .'.' .$clean_name[0][1] .'&lt;/span&gt;';<br />
} else {<br />
&nbsp; &nbsp; echo '&lt;span class=&quot;ploshadka.net&quot;&gt;...&lt;/span&gt;';<br />
}</div></div>
<h2>Весь код</h2>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">// Очищаем домен от всего лишнего кроме названия домена<br />
$clean_https = str_replace('https://', '', $url);<br />
<br />
$clean_http = str_replace('http://', '', $clean_https);<br />
<br />
$clean_www = str_replace('www.', '', $clean_http);<br />
<br />
preg_match_all('/(\w+)/', $clean_www, $clean_name);<br />
<br />
// Файл на сервере<br />
$favicon_on_server = 'wp-content/img/favicon/' .$clean_name[0][0] .'.png';<br />
<br />
$img = '&lt;img class=&quot;news-favicon&quot; src=&quot;' .esc_url(home_url('/')) .$favicon_on_server<br />
.'&quot; title=&quot;logo ' .$clean_name[0][0] .'&quot; width=&quot;10&quot; height=&quot;10&quot; /&gt;';<br />
<br />
if (file_exists($favicon_on_server)) {<br />
&nbsp; &nbsp; echo $img .'&lt;span class=&quot;ploshadka.net&quot;&gt;' . $clean_name[0][0] .'.' .$clean_name[0][1] .'&lt;/span&gt;';<br />
} else {<br />
&nbsp; &nbsp; echo '&lt;span class=&quot;ploshadka.net&quot;&gt;...&lt;/span&gt;';<br />
}</div></div>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/php-kak-ochistit-domen-ot-lishnego/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Как удалить значок доллара и пробелы с помощью preg_replace</title>
		<link>https://ploshadka.net/preg_replace-remove-dollar/</link>
					<comments>https://ploshadka.net/preg_replace-remove-dollar/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Sat, 05 May 2018 08:00:20 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[PHP примеры и разбор]]></category>
		<category><![CDATA[preg_replace()]]></category>
		<category><![CDATA[str_replace]]></category>
		<category><![CDATA[substr]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=3296</guid>

					<description><![CDATA[Удаляем значок доллара, находящийся впереди какого-нибудь значения, с помощью PHP функции preg_replace. Также удаляем пробелы и меняем формат вывода числа. Удаляем доллар спереди числового значения Скажем, у нас есть переменная, в которой содержится такие данные: $dollar = '$ 4 000...]]></description>
										<content:encoded><![CDATA[<p>Удаляем значок доллара, находящийся впереди какого-нибудь значения, с помощью PHP функции <strong>preg_replace</strong>. Также удаляем пробелы и меняем формат вывода числа. <span id="more-3296"></span></p>
<h2>Удаляем доллар спереди числового значения</h2>
<p>Скажем, у нас есть переменная, в которой содержится такие данные:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$dollar = '$ 4 000 000';</div></div>
<p>Мы хотим в другую переменную сохранить значение 4 000 000 без доллара. Для этого выполним:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$remove_dollar = preg_replace('![^\w\d\s]*!','',$dollar);</div></div>
<p>Если это не поможет, попробуйте это:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$removed_dollar = preg_replace('/\s+/', '', $dollar);</div></div>
<p>Можно пойти и другим путём. Например использовать функцию substr():</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$remove_dollar = substr($dollar, 2, 10 );</div></div>
<p>Эта функция вырезает данные из требуемого значения. В приведенном примере начиная с <strong>третьего</strong> символа и до 10-ого. </p>
<p>Или если число может быть очень большим и за ним ничего лишнего нет, то лучше использовать конструкцию таким образом:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$remove_dollar = substr($dollar, 2);</div></div>
<p>Первое значение substr, то с чего начинается вырезка, второе &#8212; то до куда она идёт.</p>
<h2>Удаляем пробелы в числе</h2>
<p>А если требуется удалить пробелы у этой цифры, то дальше можно сделать это двумя путями:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$removed_space = str_replace(' ', '', $removed_dollar);</div></div>
<p>или</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$removed_space = preg_replace('/\s+/', '', $removed_dollar);</div></div>
<p>В результате всех этих манипуляций, значение &#8216;$ 4 000 000&#8217; превратиться в 4000000.</p>
<h2>Приводим число к удобочитаемому виду</h2>
<p>А если нужно наоборот разделить пробелами цифру, то для этого будем использовать такую конструкцию:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">echo number_format( $removed_space, 0, '', ' ' );</div></div>
<p>В результате получим те же:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">4 000 000</div></div>
<h2>Зачем может пригодится менять значения туда и обратно?</h2>
<p>Бывает, числовое значение нужно сохранить в базу данных для дальнейшей обработке. Если там будут пробелы или лишние цифры, то это приведет к невозможности функций сравнений или другой обработке данных. Поэтому лучше всего в базе данных (а иногда требуется и для переменной) хранить данные в числовом значении без всяких других элементов. А если потом требуется вывести эти данные на сайт, то для этого есть множество удобных способов.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/preg_replace-remove-dollar/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Примеры функции замены preg_replace в PHP</title>
		<link>https://ploshadka.net/preg_replace/</link>
					<comments>https://ploshadka.net/preg_replace/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Mon, 30 Oct 2017 10:46:39 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[PHP примеры и разбор]]></category>
		<category><![CDATA[preg_replace()]]></category>
		<category><![CDATA[str_replace]]></category>
		<category><![CDATA[trim()]]></category>
		<category><![CDATA[Основательные труды]]></category>
		<category><![CDATA[Парсинг страниц]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=3364</guid>

					<description><![CDATA[С помощью функции preg_replace можно находить и изменять требуемые данные на странице. Также читайте статью, где функцией preg_replace мы удаляем данные в профиле пользователя WordPress. Есть схожая функция, которая вместо замены находит данные для последующей обработки, называется preg_match. Функция preg_replace...]]></description>
										<content:encoded><![CDATA[<p>С помощью функции <strong>preg_replace</strong> можно находить и изменять требуемые данные на странице. <span id="more-3364"></span></p>
<p>Также читайте статью, где функцией preg_replace мы удаляем данные в <a href="https://ploshadka.net/wordpress-user-profile-clean/">профиле пользователя WordPress</a>.</p>
<p>Есть схожая функция, которая вместо замены находит данные для последующей обработки, называется <a href="https://ploshadka.net/preg_match/">preg_match</a>.</p>
<div class="highlight">Функция preg_replace работает следующим образом:</p>
<p>Первый параметр, с помощью <a href="https://ploshadka.net/regular-expressions/">регулярных выражений</a> задаёт критерий поиска.</p>
<p>Второй параметр указывает на что меняем найденные данные.</p>
<p>Третий параметр &#8212; там где мы производим поиск.</p></div>
<h2>preg_replace в DIV</h2>
<p>Удаление содержимого внутри тега DIV:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$content = preg_replace('/(&lt;div[^&gt;]*&gt;)(.*?)(&lt;\/div&gt;)/i', '$1$3', $content);</div></div>
<p>Удаление содержимого вместе с самим тегом div:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$content = preg_replace('/&lt;div[^&gt;]*&gt;.*?&lt;\/div&gt;/i', '', $content);</div></div>
<p>Удаление содержимого в конкретном див теге (с конкретным классом):</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$content = preg_replace('/(&lt;div.*?class=&quot;price&quot;[^&gt;]*&gt;)(.*?)(&lt;\/div&gt;)/i', '$1$3', $content);</div></div>
<p>Удаление всего конкретного div тега:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$content = preg_replace('/(&lt;div.*?class=&quot;price&quot;[^&gt;]*&gt;)(.*?)(&lt;\/div&gt;)/i', '', $content);</div></div>
<p>Удаляем изображение из контента:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$content = preg_replace(&quot;/&lt;img[^&gt;]+\&gt;/i&quot;, &quot;&quot;, $content);</div></div>
<h2>preg_replace для цифр и знаков</h2>
<p>Удаляем всё постороннее кроме цифр:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$clean_number = preg_replace('~[^0-9]+~','',$content);</div></div>
<p>Удаление доллара спереди:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$clean_number = preg_replace('/&amp;.*?;/','',$content);</div></div>
<p>Удаление запятой из слов и цифр:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$clean_number = preg_replace('/,/', '', $content);</div></div>
<p>Удаление пробелов внутри цифры:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$clean_number = preg_replace('![^\w\d\s]*!','',$content);</div></div>
<h3>Иногда похожие задачи выполняют другие php функции:</h3>
<p>Удаление пробелов с обоих сторон от цифр:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$clean_number = str_replace(' ','',$content);</div></div>
<p>Удаление всех пробелов сначала и с конца выражения:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">$clean_number = trim($content);</div></div>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/preg_replace/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Как массово поменять информацию в WordPress</title>
		<link>https://ploshadka.net/wordpress-text-replace/</link>
					<comments>https://ploshadka.net/wordpress-text-replace/#comments</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Thu, 23 Mar 2017 08:00:44 +0000</pubDate>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[add_filter()]]></category>
		<category><![CDATA[functions.php]]></category>
		<category><![CDATA[str_replace]]></category>
		<guid isPermaLink="false">https://ploshadka.net/?p=178</guid>

					<description><![CDATA[Иногда нужно поменять много повторяющегося текста в WordPress. Делать это в ручном режиме долго. К счастью, всё это можно автоматизировать. Этот php код не вносит изменения в базу данных MySQL, а лишь заменяет требуемый текст в момент загрузки сайта (если...]]></description>
										<content:encoded><![CDATA[<p>Иногда нужно поменять много повторяющегося текста в <strong>WordPress</strong>. Делать это в ручном режиме долго. К счастью, всё это можно автоматизировать. <span id="more-178"></span></p>
<div class="highlight">Этот php код не вносит изменения в базу данных <strong>MySQL</strong>, а лишь заменяет требуемый текст в момент загрузки сайта (если убрать код, текст вернется обратно). Если же требуется безвозвратное <a href="https://ploshadka.net/mysql-replacement/">изменение текста в базе данных MySQL</a> нужно воспользоваться SQL-запросами в <strong>phpMyAdmin</strong>.</div>
<p>Следующие коды надо вставить в файл <strong>functions.php</strong> своей темы сайта.</p>
<p>Первый вариант кода:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">// Массовая замена текста<br />
function replace_text($text) {<br />
$text = str_replace('Текст замены (любой)', 'меняем на белку', $text);<br />
return $text;<br />
}<br />
add_filter('the_content', 'replace_text');</div></div>
<p>Второй вариант кода, более удобный, если нужна массовая замена сразу нескольких данных:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap;">// Массовая замена текста<br />
function replace_text_wps($text){<br />
&nbsp; &nbsp; $replace = array(<br />
&nbsp; &nbsp; &nbsp; &nbsp; // 'WORD TO REPLACE' =&gt; 'REPLACE WORD WITH THIS'<br />
&nbsp; &nbsp; &nbsp; &nbsp; 'Текст 1' =&gt; '&lt;a href=&quot;/путь/&quot;&gt;На текст 2&lt;/a&gt;',<br />
&nbsp; &nbsp; &nbsp; &nbsp; 'Текст 3' =&gt; '&lt;a href=&quot;#&quot;&gt;На текст 4&lt;/a&gt;'<br />
&nbsp; &nbsp; );<br />
&nbsp; &nbsp; $text = str_replace(array_keys($replace), $replace, $text);<br />
&nbsp; &nbsp; return $text;<br />
}<br />
add_filter('the_content', 'replace_text_wps');<br />
add_filter('the_excerpt', 'replace_text_wps');</div></div>
<h2>Плагины для замены</h2>
<p>Если не хочется работать самостоятельно с базой данных MySQL, можно воспользоваться плагинами для WordPress. Например, для таких целей существует плагин <a rel="nofollow" href="https://wordpress.org/plugins/better-search-replace/" rel="noopener" target="_blank">Better Search Replace</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ploshadka.net/wordpress-text-replace/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
	</channel>
</rss>
