<s id="qx03x"></s>
  • <tt id="qx03x"><noscript id="qx03x"></noscript></tt><rt id="qx03x"><nav id="qx03x"></nav></rt>

    <strong id="qx03x"><li id="qx03x"></li></strong>
    <tt id="qx03x"></tt>

        1. 分頁: 1/12 第一頁 1 2 3 4 5 6 7 8 9 10 下頁 最后頁 [ 顯示模式: 摘要 | 列表 ]
            傳承自 APMServ 的 PHPTS,十年后隆重推出。

            PHPTS 邊緣計算協作服務器套件,是 Windows 系統上一鍵搭建 Nginx + PHP + MySQL + Memcached + Redis + MongoDB + InfluxDB 等網站、APP、小程序服務器端運行環境的軟件。

            它即可以運行在云服務器上用于生產環境,也能夠運行在個人電腦上作為編程開發環境。任何個人和企業,均可免費使用,包括商用用途,并可與自有產品集成發布。

            PHPTS 未來更大的用途,是運行在本地服務器、PC臺式機、筆記本電腦、工控機上,作為邊緣計算節點服務器,與攝像頭、存儲、音響、投屏、打印機、串口設備、工業設備、物聯網終端互聯互通,利用本地計算機、顯卡實現AI人工智能運算、語音合成、人臉識別、視頻流分析、音視頻轉碼,不必購買各大公有云平臺按次數、按時間、按使用量收費的昂貴計算型云服務;并將利用光纖寬帶、5G網絡與公有云互聯,組建私有云、混合云。

            【2020年02月15日 PHPTS 1.07 版本發布】

            軟件下載,請訪問 PHPTS 官方網站:https://www.phpts.com/

            點擊在新窗口中瀏覽此圖片

            PHPTS 1.06 版本,集成 Nginx 1.17.8、PHP 7.4.2、PHP 7.3.14、PHP 5.6.40、MySQL 8.0.19(x64)、Memcached 1.5.22、Redis 4.0.14(x64)、MongoDB 4.3.3(x64)、phpMyAdmin 5.0.1、Bash 終端,并可通過組件方式下載安裝 InfluxDB(時間序列數據庫)、HeidiSQL(MySQL客戶端管理工具)、Another.Redis.Desktop.Manager(Redis客戶端管理工具)。推薦在64位 Windows 系統上安裝 PHPTS。

            Nginx for PHPTS 是專門為 Windows 移植的高并發版本,采用 Windows 輸入輸出完成端口(IOCP),媲美 Linux 下的 epoll。

            相比于官方 Nginx Windows 版本僅支持 1024 連接數、僅支持低效的 SELECT/POLL 模型、僅支持單進程,PHPTS Windows 版本支持 32768 連接數、支持 IOCP 模型、支持多進程能夠充分利用多核 CPU。從此 Nginx Windows 版本性能低下、不能用于生產環境成為歷史。

            點擊在新窗口中瀏覽此圖片

            PHPTS 軟件功能界面截圖

            Nginx 虛擬主機:

            點擊在新窗口中瀏覽此圖片

            PHP:

            點擊在新窗口中瀏覽此圖片

            點擊在新窗口中瀏覽此圖片

            MySQL:

            點擊在新窗口中瀏覽此圖片

            點擊在新窗口中瀏覽此圖片

            Memcached:

            點擊在新窗口中瀏覽此圖片

            Redis:

            點擊在新窗口中瀏覽此圖片

            InfluxDB 時間序列數據庫:

            點擊在新窗口中瀏覽此圖片

            MongoDB 面向文檔數據庫:

            點擊在新窗口中瀏覽此圖片

            Linux Bash 仿真終端:

            點擊在新窗口中瀏覽此圖片

            軟件下載,請訪問 PHPTS 官方網站:https://www.phpts.com/
            這幾天,原博客所在的美國洛杉磯digitalocean的VPS不穩定,決定再次搬遷?,F在已經將博客(http://www.lukangtou.cn)遷移到韓國的VPS。國內到韓國的網絡線路,應該是最好的,甚至可以媲美中國國內的雙線機房。

            北京聯通 ping www.lukangtou.cn:
          root@linaro-alip:~# ping www.lukangtou.cn
          PING www.lukangtou.cn (27.255.71.186) 56(84) bytes of data.
          64 bytes from 27.255.71.186: icmp_req=1 ttl=50 time=68.3 ms
          64 bytes from 27.255.71.186: icmp_req=2 ttl=50 time=63.0 ms
          64 bytes from 27.255.71.186: icmp_req=3 ttl=50 time=67.4 ms
          64 bytes from 27.255.71.186: icmp_req=4 ttl=50 time=69.5 ms
          64 bytes from 27.255.71.186: icmp_req=5 ttl=50 time=62.9 ms
          64 bytes from 27.255.71.186: icmp_req=6 ttl=50 time=69.9 ms
          64 bytes from 27.255.71.186: icmp_req=7 ttl=50 time=63.2 ms


            廣東電信 ping www.lukangtou.cn:
          [root@local ~]# ping www.lukangtou.cn
          PING www.lukangtou.cn (27.255.71.186) 56(84) bytes of data.
          64 bytes from 27.255.71.186: icmp_seq=1 ttl=46 time=93.6 ms
          64 bytes from 27.255.71.186: icmp_seq=2 ttl=46 time=93.2 ms
          64 bytes from 27.255.71.186: icmp_seq=3 ttl=46 time=92.8 ms
          64 bytes from 27.255.71.186: icmp_seq=4 ttl=46 time=93.0 ms
          64 bytes from 27.255.71.186: icmp_seq=5 ttl=46 time=93.0 ms
          64 bytes from 27.255.71.186: icmp_seq=6 ttl=46 time=92.7 ms


            杭州阿里云 ping www.lukangtou.cn:
          [root@AY140521163455018f38Z ~]# ping www.lukangtou.cn
          PING www.lukangtou.cn (27.255.71.186) 56(84) bytes of data.
          64 bytes from 27.255.71.186: icmp_seq=1 ttl=48 time=30.8 ms
          64 bytes from 27.255.71.186: icmp_seq=2 ttl=48 time=30.5 ms
          64 bytes from 27.255.71.186: icmp_seq=3 ttl=48 time=30.4 ms
          64 bytes from 27.255.71.186: icmp_seq=4 ttl=48 time=30.7 ms
          64 bytes from 27.255.71.186: icmp_seq=5 ttl=48 time=30.6 ms
          64 bytes from 27.255.71.186: icmp_seq=6 ttl=48 time=30.3 ms
          64 bytes from 27.255.71.186: icmp_seq=7 ttl=48 time=31.2 ms
          Tags:

          博客更換域名

          [不指定 2014-6-13 17:01 | by 張宴 ]
            由于中國移動屏蔽原 s135.com 域名,現啟用新域名 www.lukangtou.cn 作為博客新域名,VPS主機遷移到 digitalocean ( https://www.digitalocean.com/。
          Tags: ,

          PHP 真正多線程的使用

          [不指定 2013-12-17 11:17 | by 張宴 ]
            PHP 5.3 以上版本,使用pthreads PHP擴展,可以使PHP真正地支持多線程。多線程在處理重復性的循環任務,能夠大大縮短程序執行時間。

            我之前的文章中說過,大多數網站的性能瓶頸不在PHP服務器上,因為它可以簡單地通過橫向增加服務器或CPU核數來輕松應對(對于各種云主機,增加VPS或CPU核數就更方便了,直接以備份鏡像增加VPS,連操作系統、環境都不用安裝配置),而是在于MySQL數據庫。如果用 MySQL 數據庫,一條聯合查詢的SQL,也許就可以處理完業務邏輯,但是,遇到大量并發請求,就歇菜了。如果用 NoSQL 數據庫,也許需要十次查詢,才能處理完同樣地業務邏輯,但每次查詢都比 MySQL 要快,十次循環NoSQL查詢也許比一次MySQL聯合查詢更快,應對幾萬次/秒的查詢完全沒問題。如果加上PHP多線程,通過十個線程同時查詢NoSQL,返回結果匯總輸出,速度就要更快了。我們實際的APP產品中,調用一個通過用戶喜好實時推薦商品的PHP接口,PHP需要對BigSea NoSQL數據庫發起500~1000次查詢,來實時算出用戶的個性喜好商品數據,PHP多線程的作用非常明顯。

            PHP擴展下載:https://github.com/krakjoe/pthreads
            PHP手冊文檔:http://php.net/manual/zh/book.pthreads.php

            1、擴展的編譯安裝(Linux),編輯參數 --enable-maintainer-zts 是必選項:
          cd /Data/tgz/php-5.5.1
          ./configure --prefix=/Data/apps/php --with-config-file-path=/Data/apps/php/etc --with-mysql=/Data/apps/mysql --with-mysqli=/Data/apps/mysql/bin/mysql_config --with-iconv-dir --with-freetype-dir=/Data/apps/libs --with-jpeg-dir=/Data/apps/libs --with-png-dir=/Data/apps/libs --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-fpm --enable-mbstring --with-mcrypt=/Data/apps/libs --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --enable-opcache --with-pdo-mysql --enable-maintainer-zts
          make clean
          make
          make install        

          unzip pthreads-master.zip
          cd pthreads-master
          /Data/apps/php/bin/phpize
          ./configure --with-php-config=/Data/apps/php/bin/php-config
          make
          make install


          vi /Data/apps/php/etc/php.ini

          添加:
          extension = "pthreads.so"


            2、給出一段PHP多線程、與For循環,抓取百度搜索頁面的PHP代碼示例:
            對于創業型團隊來說,服務器托管費用+帶寬成費用+運維成本,是壓在頭上的三座大山。滿足業務性能需要,又要降低成本,盡快實現收支平衡,是當務之急。

            一、不靠譜的 App Engine

            1、Google App Engine 云服務在國外的成功,不代表國內巨頭們各種 *AE 仿造品的成功。在微博上搜搜就可以看到小伙伴們吐槽的各種不穩定,另外,*AE們對資源使用最大數各種規定限制,加上為了計費、閹割功能的各種限制,使它的價格優勢成為雞肋。*AE們就好比100M共享帶寬的小區寬帶,以低價賣給每個上網用戶5M的帶寬,前幾十個用戶感覺這網速真不錯,等他賣了100個以上用戶5M帶寬,而這部分用戶白天上班去了,晚上下班回來都在上網,其中又有一部分看視頻、BT下載,于是乎,白天網速快,晚上慢得要死,連200K帶寬都達不到。要知道,不怕神一樣的對手,就怕豬一樣的隊友,在國內的 App Engine 環境下,水平參差不齊的開發者的代碼質量、習慣性的資源濫用、別人網站被攻擊殃及池魚對*AE性能的影響,導致*AE的穩定性非常差。

            2、所以,*AE們也意識到公共 App Engine 不穩定,所以又推出專用 App Engine,但費用一下就翻了很多倍。所以,*AE只是個人博客、個人開發者玩玩的工具,真正用作項目,還是需謹慎。根據實際的經驗,*AE們還真不如VPS穩定。



            二、成本低的小而美VPS

            1、對于初創團隊來說,購買服務器、交換機,托管服務器費用、帶寬月使用費,是極其昂貴的。購買可以彈性升級硬件配置的云服務VPS,是降低成本不錯的選擇。國內VPS,1G內存、1~2核CPU、1M帶寬、多線BGP,大概價格在100元/月左右,支持備案,可以作為最低入門選擇,有條件可以購買兩臺互為熱備,阿里云主機可以作為參考。大多數VPS服務商使用的都是廉價的SATA磁盤。如果你對磁盤IO要求較高,可以選擇提供有SAS磁盤的IAAS云主機服務商,比如UCloud。

            2、市場上的VPS商家主要有 Xen、OpenVZ、KVM 三種開源的虛擬化技術。全虛擬化的 Xen 更像獨立主機,服務器資源按VPS實際大小平均分配,一般無法超售。半虛擬化的 OpenVZ 在同樣的性能測試下,會比 Xen 高一些,但是,一臺物理內存16G的服務器,可以分配出總內存大小超過16G很多倍的VPS,服務商可以超售,想賣多少臺VPS就可以賣多少臺,所以不推薦使用。KVM 在最新的 Linux 發行版中,已經是集成,但是,商業化應用還不成熟,基于 KVM 的 VPS 服務商很少。

            3、VPS的操作系統,建議選擇64位的Linux。在32位Linux下,PHP能給處理的整數不能超過正負2^31=2147483648,如果以后接入新浪微博、淘寶、騰訊等第三方開放平臺,他們的接口里會有超過32位的整數(比如新浪用戶ID、淘寶商品ID)。如果不幸使用32位Linux,你只能將這些整數當成字符串處理了,以后配合Sphinx等搜索引擎,會非常麻煩。

            4、現在,可以在北京進行備案的域名有:國際域名 .com .net .org,國內域名 .cn .com.cn .中國,國別域名 .cc,其他的域名均不能進行備案。僅北京有限制,其它省市正常提交備案即可。我們原來申請的 .me 域名,在北京無法備案,后來只好拿到蘇州去備案了。所以,在選擇域名的時候,需要慎重。

            5、使用 VPS,一定要定期在本地,做好數據備份,不要相信所謂的 7*24服務,99.99%安全穩定性,只要有人的VPS出問題了,都歸為那 0.01%。



            三、應對峰值帶寬的云存儲

            1、對于DAU(日活躍用戶)過十萬的網站、APP應用來說,CDN或云存儲是必需品。使用云存儲不是因為存儲空間,因為一塊幾TB的SATA磁盤很便宜,使用云存儲是因為高出平均帶寬值幾倍至幾十倍的峰值帶寬。做手機APP應用,峰值帶寬更集中,當你向所有用戶群發PUSH一條消息,用戶被喚醒打開APP應用,幾分鐘的時間,會消耗幾十倍的帶寬峰值。圖片、下載,是最主要的帶寬消耗者。也許,數據接口API只需不到1M的帶寬,而圖片對帶寬的峰值需求則會達到100M。為了幾分鐘的峰值,去購買100M昂貴的帶寬,其他時間帶寬都空閑,是一件非常奢侈的事。

            2、國內提供云存儲服務的商家有很多,真正好用得卻不多,提供FTP等公共通用協議的云存儲更是微乎其微。使用第三方云服務,切忌千萬不要吊死在一棵樹上。支持FTP等公共協議,如果將來有問題,能夠方便的進行數據遷移和技術替代。如果云服務廠商一直能夠提供優質的服務,那么,也就可以長期使用他們的云服務。相信優秀的云存儲提供商,是不會懼怕這一點的。
            ASIHTTPRequest 類庫在iOS 7.0中,會有一些報錯警告,需要稍作修改:

            1、
          if ([inputStream streamStatus] == NSStreamEventErrorOccurred) {

            修改成:
          if ([inputStream streamStatus] == (NSStreamStatus)NSStreamEventErrorOccurred) {


            2、
          return [[NSDate date] addTimeInterval:maxAge];

            修改成:
          return [[NSDate date] dateByAddingTimeInterval:maxAge];
            最近配置了幾臺Web服務器,將安裝筆記貼出來吧。沒時間像以前那樣,將文章寫的那樣系統了,請見諒。詳細配置,可以看以前的舊文章:

            http://blog.www.lukangtou.cn/nginx_php_v6

            1、安裝Nginx:
          mkdir -p /Data/tgz
          cd /Data/tgz
          yum install wget
          yum install pcre
          yum install openssl*
          yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers make
          yum -y install gd gd2 gd-devel gd2-devel
          /usr/sbin/groupadd www
          /usr/sbin/useradd -g www www
          ulimit -SHn 65535
          wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.32.tar.gz
          tar zxvf pcre-8.32.tar.gz
          cd pcre-8.32
          ./configure --prefix=/Data/apps/pcre
          make && make install
          cd ../

          wget http://nginx.org/download/nginx-1.5.2.tar.gz
          tar zxvf nginx-1.5.2.tar.gz
          cd nginx-1.5.2
          ./configure --user=www --group=www --prefix=/Data/apps/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/Data/tgz/pcre-8.32 --with-http_realip_module --with-http_image_filter_module
          make
          make install
          cd ../

          Tags: , , , ,

          手機電商APP的智能化設計

          [不指定 2013-5-21 13:11 | by 張宴 ]

            5月17日,我在蘇州工業園區“2013首屆金雞湖云產業高峰論壇”上的演講PPT:《手機電商APP的智能化設計》下載。

            http://pan.baidu.com/share/link?shareid=560014&uk=3946315320&third=2

          被CC攻擊

          [不指定 2013-5-21 11:58 | by 張宴 ]
            昨晚開始,我博客在國外的256M內存小VPS,遭到大量IP的CC攻擊,帶寬被占滿,機房為了保證其他VPS的正常訪問,對我的VPS訪問進行了限制。沒辦法,只好用幾KB/秒的速度,將未備份的幾百兆數據遷移回來(幸好內容未變動的幾個G數據,本地已經有備份)。因為域名未備案,于是放在了家中的北京聯通ADSL +  cubieboard 上,恢復了服務。2M的ADSL,上行只有512K帶寬,速度會慢點,等有時間了,將圖片、文件放在別的地方。
            在淘寶上350多元,買了個基于ARM平臺的超小電腦 cubieboard,配置如下:

            1G ARM cortex-A8 processor, NEON, VFPv3, 256KB L2 cache
            Mali400, OpenGL ES GPU
            512M/1GB DDR3 @480MHz
            HDMI 1080p Output
            10/100M Ethernet
            4GB Nand Flash
            2 USB Host, 1 micro SD slot, 1 SATA, 1 ir
            96 extend pin including I2C, SPI, RGB/LVDS, CSI/TS, FM-IN, ADC, CVBS, VGA, SPDIF-OUT, R-TP..
            Running Android, Ubuntu and other Linux distributions

            點擊在新窗口中瀏覽此圖片

            點擊在新窗口中瀏覽此圖片

            找了臺支持HDMI的顯示器,安裝了Ubuntu Linaro,然后很方便的安裝了SSH Server、VNC Server、Nginx、PHP 5.3、MySQL 5.5:
          apt-get install openssh-server
          apt-get install vnc-server
          apt-get install mysql-server mysql-client
          apt-get install nginx
          apt-get install php5-fpm
          apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl


            C/C++的開發環境安裝:
          apt-get install gcc
          apt-get install g++
          apt-get install cmake
          apt-get install make

            UserInterfaceState.xcuserstate 文件頻繁更新,*.a等靜態鏈接庫文件默認不被添加到 SVN 中,需要對自己 Mac OS 上的 SVN 客戶端配置做一下修改。

            進入終端:
          vi ~/.subversion/config

            查找 [miscellany] 字段

            在默認被注釋的  global-ignores 下一行,增加一行:
          global-ignores = *~ #*# .#* .*.swp .DS_Store .xcuserstate
            蘋果一直拒絕 UIWebView 內嵌 HTML5 頁面的 iPhone、iPad APP應用上架到 App Store,建議這樣的APP去做成Safari的Web應用。但是,蘋果的審核人員只從界面、URL去判斷是否HTML5的。有一次,一個 APP應用的URL地址被他們拷貝出來,放到瀏覽器中能夠訪問,然后,應用悲催地被拒絕上架了。

            對付方法:

            1、URL不讓直接通過瀏覽器訪問(UIWebView的請求Header頭中加點東西,在服務器端將APP內嵌的訪問和通過直接瀏覽器訪問區分開來),或者通過瀏覽器訪問時,返回JSON、XML信息,輸出“Interface Error”,忽悠蘋果審核人員說這是HTTP協議的接口,不是網頁。

            2、禁用、禁止 UIWebView 里面的鏈接長按彈出效果。加入一行 CSS 代碼,禁用類似下圖的鏈接長按彈出效果:
          html,body{-webkit-touch-callout: none;}

            點擊在新窗口中瀏覽此圖片
            [文章作者:張宴 本文版本:v1.0 最后修改:2012.02.23 轉載請注明原文鏈接:http://blog.www.lukangtou.cn/android_ios_status/]

            上周,我們發布了一款支持 Android 和 iOS 平臺手機應用。本周,又發布了另一款手機應用的 iOS 版本??v貫兩款應用的統計數據,發現有兩點出乎我的意料。

            1、iOS 應用狀況:移動iPhone用戶超聯通兩倍,WIFI 聯網方式接近 75%

            我曾經一直以為在 iPhone 4/4S 用戶中,中國聯通的用戶要比中國移動多,畢竟聯通是蘋果合作伙伴,聯通卡是3G網絡,而移動卡的國產TD-SCDMA iPhone不支持,只能使用2G網絡。但經過最近一星期發布的兩款手機應用(均有 iOS、Android 版本)的統計數據發現,iPhone 里插著中國移動2G卡的用戶比中國聯通3G用戶多兩倍。因此,將來針對移動互聯網 IDC 機房的選擇與優化,也需要偏向中國移動網絡。

            點擊在新窗口中瀏覽此圖片



            點擊在新窗口中瀏覽此圖片



            2、Android 應用狀況:小米手機占有率領先,WIFI 聯網方式超過 80%

            Android 用戶移動遠超聯通,在預料之中。但是,沒有想到,在這么多不同型號的 Android 手機中,小米手機 MI-ONE Plus 的占有量竟然能夠位居第一,而三星 GT-I9100 緊跟其后。

            點擊在新窗口中瀏覽此圖片
            [文章作者:張宴 本文版本:v1.0 最后修改:2012.02.16 轉載請注明原文鏈接:http://blog.www.lukangtou.cn/taobaoke_click_urls/]

            根據淘寶商品 num_iid 批量生成淘寶客(什么是淘寶客?)鏈接的 PHP 文件內容如下。

            淘寶 API 有調用次數限制,一次 API 調用,可以最大返回40個商品的淘寶客鏈接,因此,在本函數內,如果需要批量生成的淘寶商品 num_iid 數大于40,將按照40個一次,分多次調用。如果調用淘寶 API 查詢過的商品 num_iid,不管其是否有淘寶客鏈接(有些商品沒有淘寶客推廣鏈接),都將利用 Memcached 緩存起來,下次直接查緩存,不會重復調用淘寶 API。

          <?php
          require_once(dirname(__FILE__).'/TopSdk.php'); //引用淘寶開放平臺 API SDK

          function object2Array($d)
          {
                  if (is_object($d))
                  {
                      $d = get_object_vars($d);
                  }

                  if (is_array($d))
                  {
                      return array_map(__FUNCTION__, $d);
                  }
                  else
                  {
                      return $d;
                  }
          }


          /*********************************************
          * 函數名:get_taobaoke_link ($num_iids)
          * 函數用途:通過淘寶商品 num_iids 獲取其對應的淘寶客手機版鏈接
          * 創建時間:2012-02-14
          * 創建人:張宴 net@www.lukangtou.cn
          * 參數說明:
          *    $num_iids   淘寶商品ID(支持多個商品)數組,示例如下:
          *          $num_iids[] = "13583512568";
          *          $num_iids[] = "10809380078";
          *          $num_iids[] = "10809380079";  
          * 返回值:
          *    下標為淘寶商品 num_iid ,值為淘寶客鏈接 click_url 的二維數組。如果無淘寶客鏈接,click_url 為空字符串,示例如下:
          *          array(3) {
          *            ["13583512568"]=>
          *            string(191) "http://auction1.wap.taobao.com/auction/item_detail-0db2-13583512568.jhtml?tks=jUTwPLMDtUUNEZhqfEuTZqkZhGw1LA7%2BzCJBXCj27NpurHxjZN70Amg0DVaFU61pfnHwW%2FI4MZGm%0Awgb69kbb1NL8uwtu%2BDnyAunBCVDP"
          *            ["10809380078"]=>
          *            string(187) "http://auction1.wap.taobao.com/auction/item_detail-0db2-10809380078.jhtml?tks=jUTwPLMDtUUNEGWhOOgVVuX%2BJKYt7fesyuZjEe7hvmpTJxYDfK8i1Wpvfl7lwI7nzD9W8M352v6E%0AyuUtsKun81AGltKzJWCYPiVDiOeC"
          *            ["10809380079"]=>
          *            string(0) ""
          *          }  
          *********************************************/
          function get_taobaoke_link ($num_iids) {
            $memcache = new Memcache;
            $memcache->connect('127.0.0.1', 11911); //Memcached 緩存服務器地址
            $click_urls = $memcache->get($num_iids);
            
            foreach ($num_iids AS $num_iid) {
              if (!isset($click_urls[$num_iid])) {
                $tbapi_num_iids_arr[] = $num_iid;
              }
            }
            
            if (!empty($tbapi_num_iids_arr)) {
              $numbers = count($tbapi_num_iids_arr);
              $numbers_max = 40; //淘寶 API 限制最大返回40條記錄
              if ($numbers > 0) {
                $numbers_times = ceil($numbers / $numbers_max); //第一層循環的循環次數
                $numbers_start = 0;
                $numbers_end = $numbers_max;
                for ($numbers_i = 1; $numbers_i <= $numbers_times; $numbers_i++) {
                  for ($numbers_j = $numbers_start; $numbers_j < $numbers_end; $numbers_j++) {
                    if ($numbers_j >= $numbers) {
                      break;
                    }
                    $tbapi_num_iids_arr_sp[] = $tbapi_num_iids_arr[$numbers_j];
                  }
                  
                  $numbers_start = $numbers_start + $numbers_max;
                  $numbers_end = $numbers_end + $numbers_max;
                  
                  $tbapi_num_iids = implode(",", $tbapi_num_iids_arr_sp);
                  $c = new TopClient;
                  $c->appkey = 12498835; //淘寶開放平臺 API 接口 App Key
                  $c->secretKey = "745db5f8e316f9f1aa8310a7568d6566"; //淘寶開放平臺 API 接口 App Secret
                  $c->format = "json";
                  $req = new TaobaokeItemsConvertRequest;
                  $req->setFields("num_iid,click_url");
                  $req->setNumIids($tbapi_num_iids);
                  $req->setPid(29509662); //淘寶聯盟(阿里媽媽)PID
                  $req->setIsMobile("true"); //如果要生成手機頁面的淘寶客鏈接,選擇 true;網頁版選擇 false
                  $resp = $c->execute($req);
                  $res = object2Array($resp);
            
                  if (isset($res["taobaoke_items"]["taobaoke_item"])) {
                    $links = $res["taobaoke_items"]["taobaoke_item"];
                    foreach ($links as $value) {
                      $memcache->set($value["num_iid"], $value["click_url"], MEMCACHE_COMPRESSED, 0);
                      $click_urls[(string)$value["num_iid"]] = $value["click_url"];
                    }
                  }
                  
                  unset($tbapi_num_iids_arr_sp);
                  unset($tbapi_num_iids);
                  unset($resp);
                  unset($res);
                  unset($links);
                  unset($value);
                }
              }
            }
            
            foreach ($num_iids AS $num_iid) {
              if (!isset($click_urls[$num_iid])) {
                $memcache->set($num_iid, "", MEMCACHE_COMPRESSED, 0);
                $click_urls[(string)$num_iid] = "";
              }
            }  
            
            $memcache->close();
            return $click_urls;
          }

          //演示
          $num_iids[] = "13583512568";
          $num_iids[] = "10809380078";
          $num_iids[] = "10809380079";
          $click_urls = get_taobaoke_link ($num_iids);
          var_dump($click_urls);
          ?>




            淘寶開放平臺(http://open.taobao.com/) PHP SDK 下載:
            1、已經越獄的 iPhone、iPad 設備,當通過其自帶的 safari 瀏覽器訪問 ipa 應用下載網站時,利用 itms-services 協議,可以一鍵安裝 ipa 文件的 iOS 應用,例如:

          <a href="itms-services://?action=download-manifest&url=http://blog.www.lukangtou.cn/demo/ios/jhsmyt.plist">通過越獄的iOS設備瀏覽器訪問本頁,點這兒一鍵安裝APP應用。</a>



            2、jhsmyt.plist 的內容如下:
            blog.www.lukangtou.cn/demo/ios/jhsmyt.plist

            需要修改之處:

            點擊在新窗口中瀏覽此圖片



            3、如果通過 iPhone、iPad 上的二維碼掃描軟件,還可以實現類似 Android 系統的掃描二維碼下載 app 應用:

            點擊在新窗口中瀏覽此圖片

            二維碼內的網址地址為 http://blog.www.lukangtou.cn/demo/ios/autodown.htm 內容如下:



            4、完整的 Demo 示例:

            http://blog.www.lukangtou.cn/demo/ios/

            點擊在新窗口中瀏覽此圖片

            點擊在新窗口中瀏覽此圖片
          Tags: , , , , , , ,
          分頁: 1/12 第一頁 1 2 3 4 5 6 7 8 9 10 下頁 最后頁 [ 顯示模式: 摘要 | 列表 ]