Я создал библиотеку с именем PHPPowertools / DOM-Query , которая позволяет обходить HTML5 и XML-документы так же, как и с jQuery.
Под капотом используется symfony / DomCrawler для преобразования селекторов CSS в селектора XPath .
namespace PowerTools;
// Get file content
$htmlcode = file_get_contents('https://github.com');
// Define your DOMCrawler based on file string
$H = new DOM_Query($htmlcode);
// Define your DOMCrawler based on an existing DOM_Query instance
$H = new DOM_Query($H->select('body'));
// Passing a string (CSS selector)
$s = $H->select('div.foo');
// Passing an element object (DOM Element)
$s = $H->select($documentBody);
// Passing a DOM Query object
$s = $H->select( $H->select('p + p'));
// Select the body tag
$body = $H->select('body');
// Combine different classes as one selector to get all site blocks
$siteblocks = $body->select('.site-header, .masthead, .site-body, .site-footer');
// Nest your methods just like you would with jQuery
$siteblocks->select('button')->add('span')->addClass('icon icon-printer');
// Use a lambda function to set the text of all site blocks
$siteblocks->text(function( $i, $val) {
return $i . " - " . $val->attr('class');
});
// Append the following HTML to all site blocks
$siteblocks->append('');
// Use a descendant selector to select the site's footer
$sitefooter = $body->select('.site-footer > .site-center');
// Set some attributes for the site's footer
$sitefooter->attr(array('id' => 'aweeesome', 'data-val' => 'see'));
// Use a lambda function to set the attributes of all site blocks
$siteblocks->attr('data-val', function( $i, $val) {
return $i . " - " . $val->attr('class') . " - photo by Kelly Clark";
});
// Select the parent of the site's footer
$sitefooterparent = $sitefooter->parent();
// Remove the class of all i-tags within the site's footer's parent
$sitefooterparent->select('i')->removeAttr('class');
// Wrap the site's footer within two nex selectors
$sitefooter->wrap(' ');
[...]
Библиотека также включает собственный автозагрузчик с нулевой конфигурацией для совместимых с PSR-0 библиотек. Приведенный пример должен работать из коробки без какой-либо дополнительной настройки. Кроме того, вы можете использовать его с композитором.
Попробуйте /usr/local/mysql/bin/mysqld_safe
Пример:
shell> sudo /usr/local/mysql/bin/mysqld_safe
(Enter your password, if necessary)
(Press Control-Z)
shell> bg
(Press Control-D or enter "exit" to exit the shell)
Вы также можете добавить их в свои сценарии запуска bash:
export MYSQL_HOME=/usr/local/mysql
alias start_mysql='sudo $MYSQL_HOME/bin/mysqld_safe &'
alias stop_mysql='sudo $MYSQL_HOME/bin/mysqladmin shutdown'
Возможно, ваш mysql-сервер не запущен
, вы можете попробовать
/usr/local/bin/mysql.server start
blockquote >
Если вы установили его с помощью homebrew, двоичный файл будет где-то вроде
/usr/local/Cellar/mysql/5.6.10/bin/mysqld
, что означает, что вы можете запустить его с помощью
/usr/local/Cellar/mysql/5.6.10/support-files/mysql.server start
и остановить его с помощью
/usr/local/Cellar/mysql/5.6.10/support-files/mysql.server stop
Изменить: как упоминал Джейкоб Раккуя, убедитесь, что вы поместили соответствующую версию MySQL в путь.
sudo /Library/StartupItems/MySQLCOM/MySQLCOM start
sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop
сделать псевдоним в .bash_profile
alias start_mysql="/Library/StartupItems/MySQLCOM/MySQLCOM start"
alias stop_mysql="/Library/StartupItems/MySQLCOM/MySQLCOM stop"
, и если вы пытаетесь запустить с правами root в безопасном режиме
sudo ./bin/mysqld_safe
, если у вас все еще есть проблемы начало, рекомендуется прочитать: mysql5.58 unart server в mac os 10.6.5
111028 16:57:43 [ERROR] Fatal error: Please read "Security" section of the manual to find out how to run mysqld as root!
Установили ли вы пароль root для своей установки mysql? Это отличается от вашего пароля root sudo. Попробуйте /usr/local/mysql/bin/mysql_secure_installation
Мне тоже нравятся псевдонимы ... однако у меня были проблемы с MySQLCOM для начала ... он терпит неудачу ... Мое обходное сходство с другими ... ~ / .bash_aliases
alias mysqlstart='sudo /usr/local/mysql/support-files/mysql.server start'
alias mysqlstop='sudo /usr/local/mysql/support-files/mysql.server stop'
Если вы установили MySQL через Homebrew , эти команды помогут вам:
# For starting
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
# For stoping
launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
Мой MySQL установлен через доморощенный на OS X ElCaptain. Исправлено, что он запускал
brew doctor
sudo chown -R $(whoami):admin /usr/local
Затем:
brew update
mysql.server start
mysql теперь запущен
Как эта полезная статья гласит: В OS X для запуска / остановки MySQL из командной строки:
sudo /usr/local/mysql/support-files/mysql.server start
sudo /usr/local/mysql/support-files/mysql.server stop
В Linux start / stop из командной строки:
/etc/init.d/mysqld start
/etc/init.d/mysqld stop
/etc/init.d/mysqld restart
Некоторые Linux-версии предлагают также служебную команду
# service mysqld start
# service mysqld stop
# service mysqld restart
или
# service mysql start
# service mysql stop
# service mysql restart
Если он установлен с помощью homebrew, попробуйте просто ввести mysql.server
в терминал, и это должно быть так. AFAIK его исполняемый файл будет находиться под /usr/local/bin/mysql.server.
Если вы не можете, вы всегда можете запустить следующую команду «locate mysql.server», которая сообщит вам, где найти такой файл.
Для меня это решение работало на Mac Sierra OS:
sudo /usr/local/bin/mysql.server start
Starting MySQL
SUCCESS!
Просто:
mysql.server start
mysql.server stop
mysql.server restart