Similar Posts
Upload to FTP with PHP
$fp = fopen(‘https://www.example.com/pdfdoc’, ‘r’); $user = “sammy”; $pass = “password”; $ftp_server = “192.168.10.10”; //should be wrapped in try catch to properly handle errors $ftp_conn = ftp_ssl_connect($ftp_server); $login = ftp_login($ftp_conn, $user, $pass); ftp_chdir($ftp_conn, ‘path/to/folder’); //can also use ftp_pwd ftp_pasv($ftp_conn, true); //passive mode ftp_fput($ftp_conn, “mydocument.pdf”, $fp, FTP_BINARY); fclose($fp); ftp_close($ftp_conn); Above code can be used to upload a…
Setting up a PHP Application
When setting up a new PHP application one should consider how to manage certain housekeeping tasks such as exception handling, logging, and mail notifications.
Laravel Jenkins CI
This article covers installation of Jenkins on Ubuntu server and its usage to continuously integrate a Laravel application. Besides LAMP/LEMP stack we need to install Java, Git, Composer, and Node to successfully use Jenkins. Before starting to install this software, let’s take care of miscellaneous stuff. Miscellaneous (can skip this). Create mysql user and database….
Composer: Path Repositories
When working on a php package it is inconvenient to push the package to github (or other repository) and then wait for the package to update using composer update. For package development, composer has such feature as path repositories. Let’s imagine we have a two folders on the same level: my-app and package. my-app is an app — a test…
Complex Eloquent Query
A query below selects products that need to be updated in a remote application. It takes quantities of products in host application that are connected to source products application. On top of that it looks at all the orders that are in “Pending” status and reserves quantities for those products. SELECT products.quantity_available, connector_products.stock_id, products.id, connector_products.sku,…
Retrying and Logging Requests with Guzzle
When consuming 3d party API, you may want to do two things: In this article we will look at how to implement the above features using Guzzle, a popular PHP library for making API calls. Let us scaffold our app composer init composer require guzzlehttp/guzzle:~6.0 composer require monolog/monolog composer require –dev phpunit/phpunit:^8 We will be…