PHP ?? ?? ?? ?? : PHP ??? ?? ????? ?? ??? ? ??? PHPUnit, Cucumber, Atoum, Selenium, Dusk, Kahlan ? PHP ??? ???? ?? ?? PHP ?? ?? ??? ????, ?? ?? ? ??? ? ?? ?? ?? ??? ?????. ?? PHPCI, Travisci, Semaphoreci ? Jenkins? ?? ???? ?? (CI) ???? ?? ???? ???? ???? ?? ??? ???? ???? ??? ? ????? ?????.
(? ???? ??? 2017 ? 6 ? 30 ?? ?? ?? ? ??? ????? ?????????.) ??? ??? ????? ???? ???? ??????? (TDD (Test-Driven Development)? ?? ??. ??? ??? PHP ??? ??? ???? ????? ?????! PHP? ???? ?? ???? ????? ?? ??? ?? ?? ??? ????? ?????!
? ??? ?? ???? ??? ??? ??? ? ??? 2017 ? ?? ?? ??? ?? ??? ????? ?????????.
????? ?? ??? ?? ?????. <em>
</em>
??
??? ??? ???? ?? ???? ?????? ??? ?????. ??? ???? ???? ?? ??? ?? ??? ?? ? ???? ?????. ??? ?? PHP ??? Behat???.
??? ???? itepoint? ???? ?? ?? ???? ????. ???? ?? ? ?? ?? ??? ??? ??? ??? ????? ? ?????.
atoum
ATOUM? PHP? ? ?? ?? ??? ??? ?????. GitHub, Composer ?? Phar ExecutaBles? ?? ??? ??? ??? ??????.
???
<code>Feature: Listing command
In order to change the structure of the folder I am currently in
As a UNIX user
I need to be able see the currently available files and folders there
Scenario: Listing two files in a directory
Given I am in a directory "test"
And I have a file named "foo"
And I have a file named "bar"
When I run "ls"
Then I should get:
"""
bar
foo
"""</code>
??? ??? ???? :
PHPUNIT ? SELENIUM?? ????? ?? ?? ??? ?? ???? ??? ??? ?? ? ????.
?? <code>$this->integer($classInstance->myMethod())
->isEqualTo(10);
$this->string($classInstance->myMethod())
->contains("Something heppened");
</code>
Laravel? ??? ? ?? ???? ??? ?????. ????? (Chromedriver? ????) ?? ???? ?? ??? ? ????. ?? ??, ?? ???, ??? ??? ?? ?? ?? ??? ???? ??? ???? ?? API? ????. ??? ?? ??? ????.
???? ?? ??? ?????? ????? ??? ? ????.
Kahlan
Kahlan? ?? -IT ??? ???? ??? ?? ?? ? BDD ??? ??? ?????.
<code>composer require --dev phpunit/phpunit
composer require --dev phpunit/phpunit-selenium
</code>
? ???? ? ? ??? Behat ???? ?????. Kahlan? ???, ?? ?? ??,?? ?? ????? ???? ??? ? ?????? ?????.
php_testability
?? ? ??? ???? PHP ??? ??????. ????? ??? ? ??? ?? ???? ??? ???? ???? ?? ?? ?????.
????? ?? ?? ? ??? ?? ??? ??? ?? ?? ???? ??? ? ????. ???? ?? ??? ? ????
?? ?? ??? ?? ??????
???? ?? (CI) ???
??? ???? ?? ?? ?? ?? ? ??? ??? ??? ????? ?? ???? ???? ?? ??? ???? ???? ?????. ?? ??? CI ???/??? ???? ??? ??? ? ???? ??? ????? ??? ???? ?? ? ? ??????.
?? ?? ??? ???? ?? ???? ??? ?? ?? ??? ??? ?? ????.
PHPCI : (?? ??) ?? ??. <code>class UserSubscriptionTest extends PHPUnit_Extensions_Selenium2TestCase
{
public function testFormSubmissionWithUsername()
{
$this->byName('username')->value('name');
$this->byId('subscriptionForm')->submit();
}
}
</code>
travisci : (?? ?? ???? ??) ?? ??.
semaphoreci : (?? ?? ???? ??) ?? ??.
jenkins : ??? ??. <code>class LanguagesControllerTest extends DuskTestCase
{
public function testCreate()
{
$this->browse(function (Browser $browser) {
$user = $this->getAdminUser();
$browser->loginAs($user)
->visit('/panel/core/languages')
->click('#add')
->assertPathIs('/panel/core/languages/create')
->type('name', 'Arabic')
->select('direction', 'rtl')
->press('Submit')
->assertSee('Language: Arabic')
->assertSee('ar')
->assertSee('rtl')
->assertSee('Language created');
});
}
}
</code>
??
??? ??? ???? ?? ???? ???? ??? ?? ????. ??? ??? ???? ????????! ?? ??? ???? ???? ???? ? ??????.
?? ??? ?? ??? ?????? ??? ??? ?????? ??? ??? ??? ???? ?? ??? ?? ??? ??????!
PHP ?? ?? ?? (FAQ)? ?? ?? ????
PHP ?? ?? ??? ??? ? ?? ?? ??? ????????
PHP ?? ?? ??? ??? ? ? ?? ?? ??? ???????. ??,? ??? ?? ?? ??? ?? ? ? ?????, ???? ????? ???? ?? ??? ??, ?? ?? ??? ?? ??? ?? ?? ??? ???? ?? ?????. ??,? ??? ?? ??? ?? ??? ????? ????? ??? ? ??? ??? ??? ?? ??? ??? ??? ???????. ?? ??? ????? ?? ?? ?? ?? (?? ??? ?? ??) ? ???? ??? ???? (?? ???? ?? ??? ?? ?? ??? ????? ??).
PHP ?? ?? ??? ? ?? ????? ???? ??? ?? ?????
PHP ?? ?? ??? ??? ?? ??? ??? ???? ?? ??? ????? ?? ????? ???? ?? ???? ? ????. ?? ??, ?? ?? ??? ??? ?? ? ?? ?? ??? ???? ???? ??? ???? ???? ?? ??? ?? ? ? ????. ?????, ?? ??? ??? ??? ?? ??? ?? ??? ???? ????? ? ? ???? ???? ?? ???? ?? ? ? ??? ? ? ????. ?? ?? ??? ? ?? ????? ?? ??? ??? ?? ? ? ????.
?? ?? PHP ?? ?? ??? ?????
?, ?? ?? ?? PHP ?? ?? ??? ????. ???? php_codesniffer (??? ??? ?? ??? ??) (?? ??? ??? ??) (??, ??? ? ???? ??? ???? ?? ??? ??). ? ??? ??? ??? ? ??? ?? ??? ?? ??? ?? ? ? ????.
(?? FAQ ??? ???? ?? ???? ?? ??? ???? ?? ?? ???? ???? ? ???? ????? ????.)
<code>$this->integer($classInstance->myMethod()) ->isEqualTo(10); $this->string($classInstance->myMethod()) ->contains("Something heppened"); </code>
<code>composer require --dev phpunit/phpunit composer require --dev phpunit/phpunit-selenium </code>
????? ?? ?? ? ??? ?? ??? ??? ?? ?? ???? ??? ? ????. ???? ?? ??? ? ????
<code>class UserSubscriptionTest extends PHPUnit_Extensions_Selenium2TestCase { public function testFormSubmissionWithUsername() { $this->byName('username')->value('name'); $this->byId('subscriptionForm')->submit(); } } </code>travisci : (?? ?? ???? ??) ?? ??.
<code>class LanguagesControllerTest extends DuskTestCase { public function testCreate() { $this->browse(function (Browser $browser) { $user = $this->getAdminUser(); $browser->loginAs($user) ->visit('/panel/core/languages') ->click('#add') ->assertPathIs('/panel/core/languages/create') ->type('name', 'Arabic') ->select('direction', 'rtl') ->press('Submit') ->assertSee('Language: Arabic') ->assertSee('ar') ->assertSee('rtl') ->assertSee('Language created'); }); } } </code>
??
PHP ?? ?? ??? ??? ? ? ?? ?? ??? ???????. ??,? ??? ?? ?? ??? ?? ? ? ?????, ???? ????? ???? ?? ??? ??, ?? ?? ??? ?? ??? ?? ?? ??? ???? ?? ?????. ??,? ??? ?? ??? ?? ??? ????? ????? ??? ? ??? ??? ??? ?? ??? ??? ??? ???????. ?? ??? ????? ?? ?? ?? ?? (?? ??? ?? ??) ? ???? ??? ???? (?? ???? ?? ??? ?? ?? ??? ????? ??).
PHP ?? ?? ??? ? ?? ????? ???? ??? ?? ?????
PHP ?? ?? ??? ??? ?? ??? ??? ???? ?? ??? ????? ?? ????? ???? ?? ???? ? ????. ?? ??, ?? ?? ??? ??? ?? ? ?? ?? ??? ???? ???? ??? ???? ???? ?? ??? ?? ? ? ????. ?????, ?? ??? ??? ??? ?? ??? ?? ??? ???? ????? ? ? ???? ???? ?? ???? ?? ? ? ??? ? ? ????. ?? ?? ??? ? ?? ????? ?? ??? ??? ?? ? ? ????.
? ??? 8 PHP ?? ?? ??? ??????? ?? ?????. ??? ??? PHP ??? ????? ?? ?? ??? ?????!

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

??? ??











TOSECURELYHANDLEAUSTENCENDACTIONANDACTERIZINGINPHP, FORCUCTSESTEPS : 1. ALWAYSHASHPASSWORTHPASSWORD_HASH () ? VERVERIFYUSINGPANSWORD_VERIFY (), usePREPAREDSTATEMENTSTOPREVENTSQLINGERGED, andSTOREUSERSESSEATAIN $ _SESSIONSAFTERLOGIN.2.impleplempletrole ?? ACCESSC

PHP?? ?? ???? ???? ????? ??? ?? ??? ???? ?? ??? ??? ??? ???? ????. 1. finfo_file ()? ???? ?? ?? ??? ???? ???/jpeg? ?? ?? ?? ? ?????. 2. uniqid ()? ???? ??? ?? ??? ???? ? Web ?? ????? ??????. 3. php.ini ? html ??? ?? ?? ??? ???? ???? ??? 0755? ?????. 4. Clamav? ???? ???? ???? ??? ??????. ??? ??? ?? ???? ????? ???? ?? ??? ????? ???? ??? ? ??? ?????.

PHP?? ==? ==? ?? ???? ?? ??? ??????. == ?? ??? ?? ?? ?????. ?? ??, 5 == "5"? true? ????, ?? ??? ???? ?? ?? ??? ????? ????? (? : 5 === "5"? false? ?????. ?? ?????? ===? ? ???? ?? ?????? == ?? ??? ??? ???? ?????.

PHP?? ?? ??? ??? ???? ??? ??? ????. 1. ?? ??? ?? ? ?? ??? ??? ???? ???? ??? ? ????. ??? ??? ???? ????? ????? ???? ????. 2. ?? ?? ?? - ??, ??? ???? ?? ??? ?????. 3. ?? ???? ??? ??? ???? ??? ??? ?????. 4. Division? / ??? ???? 0?? ??? ?? ????? ??? ?? ??? ?? ? ? ????. 5. ???? ??? ???? ?? ?? ? ?? ??? ???? ? ??? ? ???, ??? ?? ? ? ??? ??? ???? ?????. ? ???? ???? ???? ??? ??? ??? ???? ?? ??? ? ??????? ????.

?, PHP? ?? ?? ?? ?????? ?? MongoDB ? Redis? ?? NOSQL ??????? ?? ??? ? ????. ?? MongoDBPHP ???? (PECL ?? Composer? ?? ??)? ???? ????? ????? ??? ?????? ? ???? ????? ??, ??, ?? ? ?? ??? ?????. ??, Predis ????? ?? Phpredis ??? ???? Redis? ???? ?? ? ?? ? ??? ???? ??? ????? Phpredis? ???? ?? Predis? ?? ??? ?????. ? ? ?? ??? ???? ? ????? ????.

tostaycurrentwithphpdevelopments ? bestpractices, followkeynewssources lifephp.netandphpweekly, adgytwithcommunitiesonforumsandconferences, readlingupdated andgrad indewfeatures, andreadorcontributetoopensourceproceprosts.first

phpbecamepupularforwebdevelopmentduetoiteofleneflening, whithhtml, wididepreadhostingsupport, andalargeecosystemincludingframeworkslikelaravelandcmsplatformsformslikewordpress.itexcelsinhandlingformsubmissions, managingussess, interptisussivers, ?? ???

TOSETTHERIGHTTIMEZONEINPHP, usedate_default_timezone_set () functionattStartOfyourscriptwitHavalidInlifiersuchas'America/new_york'.1.edate_default_timezone_set () beforeanydate/timeFunctions.2
